Changeset 4914 in niluje


Ignore:
Timestamp:
Dec 5, 2008, 4:16:35 AM (11 years ago)
Author:
NiLuJe
Message:

Portage:

  • Bump media-video/mplayer snapshot to 1.0_rc2_p28089
    • Try to refresh once more nVidia's VDPAU patchset, and import some mpeg12 fixes from mythtv to it.
Location:
Portage/trunk/media-video/mplayer
Files:
2 edited
1 moved

Legend:

Unmodified
Added
Removed
  • Portage/trunk/media-video/mplayer/Manifest

    r4911 r4914  
    1 AUX mplayer-r28058-nvidia-vdpau-3139462.patch 109079 RMD160 60073f258b07684cba1fe06b941c169f0eb0bc58 SHA1 55957820cea96e0840fa1c4b97270af0a90f1199 SHA256 a25193cc2e8a96eab78e9ada39c03cc3894d2aaa35024205f62d9921c7124d16
     1AUX mplayer-r28058-nvidia-vdpau-3139462.patch 109927 RMD160 fad462e2e5174ee850c242317423ba9b3da97e64 SHA1 3b60295df8aec9300f83a51c8fa54a7ebf2700bc SHA256 4d2e8a7a765f29990a1311e485c8dd07c598b7aa1576e119c267c1934489ddc1
    22DIST Blue-1.7.tar.bz2 222567 RMD160 1f8c539ccadc54eea5e6678839bcc8ae1e16e6eb SHA1 45e5ee7a5541a5f1cfd2678a6c9b5911ca473cb9 SHA256 8bcd39a5755c44df778ebca3119c922347abfdadb101dcef011ce2566c1fb1d8
    33DIST font-arial-cp1250.tar.bz2 249705 RMD160 a2fc7ae07b0d80936ea58e168e1047efccb9eb91 SHA1 ccf11dce5d0fb72fd3af97f788b7471cd0cd0b68 SHA256 423a07e780bb130cd8e4730715545c5d919c248dda595aab7a0a01de3c83fd12
    44DIST font-arial-iso-8859-1.tar.bz2 234242 RMD160 666697cd5efd9387057a898c714175e7c2aacbcd SHA1 152c40bf20de34aa8802d7f80d34d673b0b67212 SHA256 9730f481764f367c9089d0166fb6ccf9148808ffbbfeca635cf0e6db75765d29
    55DIST font-arial-iso-8859-2.tar.bz2 222208 RMD160 562d4d92c4f5f3d537340fde3ad8d1495ac41acb SHA1 7b99bbe0e9ba89a57eccbea8f93c453c4f268181 SHA256 71debfc960007c2f6242dfc91e8b1c005b30a99e129aeb00ab8c03f4371b41c1
    6 DIST mplayer-1.0_rc2_p28065.tar.bz2 8067265 RMD160 c60120c1d61095812771df2f5b80ae5ab189c72e SHA1 7fde952dfb44e617be0a4acdb35a26a5a6fc721f SHA256 e7135c450f7365b85dbb931b1325cad265d57e86502d08c96611192b0ca24fed
     6DIST mplayer-1.0_rc2_p28089.tar.bz2 8067570 RMD160 f0bbc80cb8c2ec27407cf8141b1dc032385db9a2 SHA1 46cf37b06c956a398b54704873211eff002bd63a SHA256 986f53b26fc7ba5781f2b8a98c21ef1081cbd589f26d553100f6824841883b74
    77DIST svgalib_helper-1.9.17-mplayer.tar.bz2 7234 RMD160 e0c4ae039478732404dd743e250e1061cc9cf0a4 SHA1 d2d596f1ddd283188b2990417d22903c0b466d25 SHA256 016edd27d74b5c66481ddb4563c961fbb579e3a95dd846cc857a639df09999e5
    8 EBUILD mplayer-1.0_rc2_p28065.ebuild 18140 RMD160 a64d2f90df9aeeea5f605d480219076ac5db34cb SHA1 1e3b76e873d20c9dc75bcebb23502a8432fb904d SHA256 fd2d16e5b80a0e359984357cebc38c80b1c35af00d42a5b78c766a10ef52fbe1
     8EBUILD mplayer-1.0_rc2_p28089.ebuild 18140 RMD160 a64d2f90df9aeeea5f605d480219076ac5db34cb SHA1 1e3b76e873d20c9dc75bcebb23502a8432fb904d SHA256 fd2d16e5b80a0e359984357cebc38c80b1c35af00d42a5b78c766a10ef52fbe1
  • Portage/trunk/media-video/mplayer/files/mplayer-r28058-nvidia-vdpau-3139462.patch

    r4910 r4914  
    302302diff -Nuarp mplayer/libavcodec/h264.c mplayer-vdpau/libavcodec/h264.c
    303303--- mplayer/libavcodec/h264.c   2008-12-01 21:05:36.000000000 +0100
    304 +++ mplayer-vdpau/libavcodec/h264.c     2008-12-02 18:11:35.000000000 +0100
     304+++ mplayer-vdpau/libavcodec/h264.c     2008-12-05 04:14:12.000000000 +0100
    305305@@ -72,6 +72,9 @@ static VLC run7_vlc;
    306306 static VLC_TYPE run7_vlc_table[96][2];
     
    347347 }
    348348 
    349 +static int decode_postinit(H264Context *h){
     349+static int decode_postinit(H264Context *h, SPS *sps){
    350350+    AVCodecContext * const avctx= h->s.avctx;
    351351+
     
    358358+            return -2;
    359359+        }
    360 +        if (h->sps.profile_idc == 66) {
     360+        if (sps.profile_idc == 66) {
    361361+            avctx->pix_fmt = avctx->get_format(avctx, pixfmt_vdpau_h264_baseline_420);
    362 +        } else if (h->sps.profile_idc == 77) {
     362+        } else if (sps.profile_idc == 77) {
    363363+            avctx->pix_fmt = avctx->get_format(avctx, pixfmt_vdpau_h264_main_420);
    364 +        } else if (h->sps.profile_idc == 100) {
     364+        } else if (sps.profile_idc == 100) {
    365365+            avctx->pix_fmt = avctx->get_format(avctx, pixfmt_vdpau_h264_high_420);
    366366+        } else {
     
    379379     MpegEncContext * const s = &h->s;
    380380     int i;
    381 @@ -6769,6 +6809,10 @@ static int decode_picture_timing(H264Con
     381@@ -6769,6 +6809,7 @@ static int decode_picture_timing(H264Con
    382382             }
    383383         }
    384384     }
    385385+
    386 +    if (decode_postinit(h) < 0)
    387 +        return -1;
    388 +
    389386     return 0;
    390387 }
    391388 
    392 @@ -7247,7 +7291,9 @@ static void execute_decode_slices(H264Co
     389@@ -7103,6 +7144,10 @@ static inline int decode_seq_parameter_s
     390                ((const char*[]){"Gray","420","422","444"})[sps->chroma_format_idc]
     391                );
     392     }
     393+
     394+    if (decode_postinit(h, sps) < 0)
     395+        goto fail;
     396+
     397     av_free(h->sps_buffers[sps_id]);
     398     h->sps_buffers[sps_id]= sps;
     399     return 0;
     400@@ -7247,7 +7292,9 @@ static void execute_decode_slices(H264Co
    393401     H264Context *hx;
    394402     int i;
     
    401409     } else {
    402410         for(i = 1; i < context_count; i++) {
    403 @@ -7374,8 +7420,26 @@ static int decode_nal_units(H264Context
     411@@ -7374,8 +7421,26 @@ static int decode_nal_units(H264Context
    404412                && (avctx->skip_frame < AVDISCARD_NONREF || hx->nal_ref_idc)
    405413                && (avctx->skip_frame < AVDISCARD_BIDIR  || hx->slice_type_nos!=FF_B_TYPE)
     
    430438         case NAL_DPA:
    431439             init_get_bits(&hx->s.gb, ptr, bit_length);
    432 @@ -7578,6 +7642,12 @@ static int decode_frame(AVCodecContext *
     440@@ -7578,6 +7643,12 @@ static int decode_frame(AVCodecContext *
    433441         h->prev_frame_num_offset= h->frame_num_offset;
    434442         h->prev_frame_num= h->frame_num;
     
    443451          * FIXME: Error handling code does not seem to support interlaced
    444452          * when slices span multiple rows
    445 @@ -7590,8 +7660,11 @@ static int decode_frame(AVCodecContext *
     453@@ -7590,8 +7661,11 @@ static int decode_frame(AVCodecContext *
    446454          * past end by one (callers fault) and resync_mb_y != 0
    447455          * causes problems for the first MB line, too.
     
    457465         MPV_frame_end(s);
    458466 
    459 @@ -7963,4 +8036,35 @@ AVCodec h264_decoder = {
     467@@ -7963,4 +8037,35 @@ AVCodec h264_decoder = {
    460468     .long_name = NULL_IF_CONFIG_SMALL("H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10"),
    461469 };
     
    555563diff -Nuarp mplayer/libavcodec/mpeg12.c mplayer-vdpau/libavcodec/mpeg12.c
    556564--- mplayer/libavcodec/mpeg12.c 2008-11-16 22:22:12.000000000 +0100
    557 +++ mplayer-vdpau/libavcodec/mpeg12.c   2008-12-02 17:55:47.000000000 +0100
     565+++ mplayer-vdpau/libavcodec/mpeg12.c   2008-12-05 04:09:09.000000000 +0100
    558566@@ -68,10 +68,22 @@ extern int XVMC_field_end(MpegEncContext
    559567 extern void XVMC_pack_pblocks(MpegEncContext *s,int cbp);
     
    618626  * It may be called in different places for MPEG-1 and MPEG-2. */
    619627 static int mpeg_decode_postinit(AVCodecContext *avctx){
    620 @@ -1288,19 +1332,8 @@ static int mpeg_decode_postinit(AVCodecC
     628@@ -1288,24 +1332,16 @@ static int mpeg_decode_postinit(AVCodecC
    621629             }
    622630         }//MPEG-2
     
    640648         if( avctx->pix_fmt == PIX_FMT_XVMC_MPEG2_IDCT )
    641649             if( avctx->idct_algo == FF_IDCT_AUTO )
    642 @@ -1646,6 +1679,11 @@ static int mpeg_field_start(MpegEncConte
     650                 avctx->idct_algo = FF_IDCT_SIMPLE;
     651 
     652+        if( avctx->vdpau_acceleration )
     653+            avctx->idct_algo = FF_IDCT_SIMPLE;
     654+
     655         /* Quantization matrices may need reordering
     656          * if DCT permutation is changed. */
     657         memcpy(old_permutation,s->dsp.idct_permutation,64*sizeof(uint8_t));
     658@@ -1646,6 +1682,11 @@ static int mpeg_field_start(MpegEncConte
    643659          XVMC_field_start(s,avctx);
    644660 #endif
     
    652668 }
    653669 
    654 @@ -1922,7 +1960,10 @@ static int slice_end(AVCodecContext *avc
     670@@ -1922,7 +1963,10 @@ static int slice_end(AVCodecContext *avc
    655671 
    656672         s->current_picture_ptr->qscale_type= FF_QSCALE_TYPE_MPEG2;
     
    664680         MPV_frame_end(s);
    665681 
    666 @@ -2069,11 +2110,7 @@ static int vcr2_init_sequence(AVCodecCon
     682@@ -2069,16 +2113,15 @@ static int vcr2_init_sequence(AVCodecCon
    667683     avctx->has_b_frames= 0; //true?
    668684     s->low_delay= 1;
     
    677693     if( avctx->pix_fmt == PIX_FMT_XVMC_MPEG2_IDCT )
    678694         if( avctx->idct_algo == FF_IDCT_AUTO )
    679 @@ -2303,6 +2340,14 @@ static int decode_chunks(AVCodecContext
     695             avctx->idct_algo = FF_IDCT_SIMPLE;
     696 
     697+    if( avctx->vdpau_acceleration )
     698+        avctx->idct_algo = FF_IDCT_SIMPLE;
     699+
     700     if (MPV_common_init(s) < 0)
     701         return -1;
     702     exchange_uv(s);//common init reset pblocks, so we swap them here
     703@@ -2303,6 +2346,14 @@ static int decode_chunks(AVCodecContext
    680704                     for(i=0; i<s->slice_count; i++)
    681705                         s2->error_count += s2->thread_context[i]->error_count;
     
    692716                     if(s2->last_picture_ptr || s2->low_delay) //FIXME merge with the stuff in mpeg_decode_slice
    693717                         *data_size = sizeof(AVPicture);
    694 @@ -2388,6 +2433,11 @@ static int decode_chunks(AVCodecContext
     718@@ -2388,6 +2439,11 @@ static int decode_chunks(AVCodecContext
    695719                     return -1;
    696720                 }
     
    704728                     int threshold= (s2->mb_height*s->slice_count + avctx->thread_count/2) / avctx->thread_count;
    705729                     if(threshold <= mb_y){
    706 @@ -2507,3 +2557,37 @@ AVCodec mpeg_xvmc_decoder = {
     730@@ -2507,3 +2563,37 @@ AVCodec mpeg_xvmc_decoder = {
    707731 };
    708732 
Note: See TracChangeset for help on using the changeset viewer.