diff options
author | Michael Niedermayer <michaelni@gmx.at> | 2011-08-26 01:29:40 +0200 |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2011-08-26 01:29:40 +0200 |
commit | 876d1d796bd80c75e3e6a7a458e3143cfe5c9474 (patch) | |
tree | 949cc4c9120dc58512d84998adcb949d173cd9c0 /libavcodec/vc1.c | |
parent | 7c4e4c6a0664bf668f4b7766a06f30096e0601f3 (diff) | |
parent | f913eeea43078b3b9052efd8d8d29e7b29b39208 (diff) | |
download | ffmpeg-876d1d796bd80c75e3e6a7a458e3143cfe5c9474.tar.gz |
Merge remote-tracking branch 'qatar/master'
* qatar/master:
vp6: partially propagate huffman tree building errors during coeff model parsing and fix misspelling
mpeg12: propagate chunk decode errors and fix conditional indentation
vc1: fix VC-1 Pulldown handling.
VC1: Fix first/last row checks with slices
mp4: Handle non-trivial ES Descriptors.
vc1: properly zero coded_block[] edges on new slice entry.
Conflicts:
libavcodec/vc1dec.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavcodec/vc1.c')
-rw-r--r-- | libavcodec/vc1.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/libavcodec/vc1.c b/libavcodec/vc1.c index 04fa77a7de..621f33bf62 100644 --- a/libavcodec/vc1.c +++ b/libavcodec/vc1.c @@ -503,6 +503,10 @@ static int decode_sequence_header_adv(VC1Context *v, GetBitContext *gb) v->s.avctx->time_base.den = ff_vc1_fps_nr[nr - 1] * 1000; } } + if(v->broadcast) { // Pulldown may be present + v->s.avctx->time_base.den *= 2; + v->s.avctx->ticks_per_frame = 2; + } } if(get_bits1(gb)){ @@ -821,7 +825,7 @@ int vc1_parse_frame_header_adv(VC1Context *v, GetBitContext* gb) case 4: v->s.pict_type = AV_PICTURE_TYPE_P; // skipped pic v->p_frame_skipped = 1; - return 0; + break; } if(v->tfcntrflag) skip_bits(gb, 8); @@ -837,6 +841,9 @@ int vc1_parse_frame_header_adv(VC1Context *v, GetBitContext* gb) av_log_missing_feature(v->s.avctx, "Pan-scan", 0); //... } + if(v->p_frame_skipped) { + return 0; + } v->rnd = get_bits1(gb); if(v->interlace) v->uvsamp = get_bits1(gb); |