[FFmpeg-cvslog] r20814 - trunk/libavcodec/mpeg12.c
Baptiste Coudurier
baptiste.coudurier
Wed Dec 15 20:54:41 CET 2010
On 12/15/2010 05:42 AM, Michael Niedermayer wrote:
> On Mon, Dec 06, 2010 at 03:32:53PM -0800, Baptiste Coudurier wrote:
>> On 12/12/09 11:44 AM, michael wrote:
>>> Author: michael
>>> Date: Sat Dec 12 20:44:01 2009
>>> New Revision: 20814
>>>
>>> Log:
>>> Be less picky on invalid invalid frame_pred_frame_dct values.
>>> Fixed issue1615.
>>>
>>> Modified:
>>> trunk/libavcodec/mpeg12.c
>>>
>>> Modified: trunk/libavcodec/mpeg12.c
>>> ==============================================================================
>>> --- trunk/libavcodec/mpeg12.c Sat Dec 12 20:15:56 2009 (r20813)
>>> +++ trunk/libavcodec/mpeg12.c Sat Dec 12 20:44:01 2009 (r20814)
>>> @@ -1557,7 +1557,7 @@ static void mpeg_decode_picture_coding_e
>>> s->picture_structure= PICT_FRAME;
>>> }
>>>
>>> - if(s->progressive_frame&& !s->frame_pred_frame_dct){
>>> + if(s->progressive_sequence&& !s->frame_pred_frame_dct){
>>> av_log(s->avctx, AV_LOG_ERROR, "invalid frame_pred_frame_dct\n");
>>> s->frame_pred_frame_dct= 1;
>>> }
>>
>> This commit and 20654 are causing issues, see #2405.
>>
>> Since frame_pred_frame_dct is affecting the bitstream syntax, overriding
>> it seems unstable to me :/
>
> :/
> Not overriding it makes the state inconsistent, that is interlaced stuff in
> progressive_sequences.
>
> does this file decode correctly without the frame_pred_frame_dct overriding?
Yes.
> does it contain actual non progressive MBs ?
I didn't check that.
> is it free of issues in valgrind if the overridiing is removed and its fuzzed?
==9305== Memcheck, a memory error detector
==9305== Copyright (C) 2002-2010, and GNU GPL'd, by Julian Seward et al.
==9305== Using Valgrind-3.6.0-Debian and LibVEX; rerun with -h for
copyright info
==9305== Command: /home/baptiste/Source/ffmpeg/svn/ffmpeg_g -i
mpeg2video_yuv422p_unable_to_use_with_libavc_but_with_libmpeg2.mpg -f
null /dev/null
==9305==
FFmpeg version SVN-r25859, Copyright (c) 2000-2010 the FFmpeg developers
built on Dec 12 2010 21:45:42 with gcc 4.4.3
configuration: --enable-gpl --enable-libx264 --enable-libmp3lame
--disable-devices --disable-bzlib --enable-libvorbis --enable-libtheora
--enable-libfaac --enable-nonfree --cc=gcc-4.4
libavutil 50.33. 0 / 50.33. 0
libavcore 0.14. 0 / 0.14. 0
libavcodec 52.97. 2 / 52.97. 2
libavformat 52.87. 1 / 52.87. 1
libavdevice 52. 2. 2 / 52. 2. 2
libavfilter 1.66. 0 / 1.66. 0
libswscale 0.12. 0 / 0.12. 0
[mpeg2video @ 0x65e4cf0] invalid frame_pred_frame_dct
Input #0, mpeg, from
'mpeg2video_yuv422p_unable_to_use_with_libavc_but_with_libmpeg2.mpg':
Duration: 00:00:01.30, start: 0.040000, bitrate: 34053 kb/s
Stream #0.0[0x1e0]: Video: mpeg2video, yuv422p, 1280x720 [PAR 1:1
DAR 16:9], 100000 kb/s, 50 fps, 50 tbr, 90k tbn, 100 tbc
Stream #0.1[0x1c0]: Audio: mp2, 48000 Hz, 2 channels, s16, 384 kb/s
Stream #0.2[0x1c1]: Audio: mp2, 48000 Hz, 2 channels, s16, 384 kb/s
[buffer @ 0x77e4290] w:1280 h:720 pixfmt:yuv422p
Output #0, null, to '/dev/null':
Metadata:
encoder : Lavf52.87.1
Stream #0.0: Video: rawvideo, yuv422p, 1280x720 [PAR 1:1 DAR 16:9],
q=2-31, 200 kb/s, 90k tbn, 50 tbc
Stream #0.1: Audio: pcm_s16le, 48000 Hz, 2 channels, s16, 1536 kb/s
Stream mapping:
Stream #0.0 -> #0.0
Stream #0.1 -> #0.1
Press [q] to stop encoding
[mpeg2video @ 0x65e4cf0] invalid frame_pred_frame_dct
Last message repeated 65 times -0kB time=1.30 bitrate=
-0.1kbits/s
frame= 66 fps= 5 q=0.0 Lsize= -0kB time=1.32 bitrate=
-0.1kbits/s
video:0kB audio:248kB global headers:0kB muxing overhead -100.008681%
==9305==
==9305== HEAP SUMMARY:
==9305== in use at exit: 0 bytes in 0 blocks
==9305== total heap usage: 6,659 allocs, 6,659 frees, 157,370,013
bytes allocated
==9305==
==9305== All heap blocks were freed -- no leaks are possible
==9305==
==9305== For counts of detected and suppressed errors, rerun with: -v
==9305== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 4 from 4)
--
Baptiste COUDURIER
Key fingerprint 8D77134D20CC9220201FC5DB0AC9325C5C1ABAAA
FFmpeg maintainer http://www.ffmpeg.org
More information about the ffmpeg-cvslog
mailing list