[Ffmpeg-devel] vhook contaminating video stream bugwhen-deinterlace is used on flv streams
Scott Manley
scott
Sat Mar 31 01:56:07 CEST 2007
V?ctor Paesa wrote:
> Hi,
>
> Please avoid top-posting, it makes hard to follow the history.
>
>
>> Sure -
>>
>> $ ffmpeg -i originals/junior.flv -deinterlace -vcodec mpeg4 -f mov
>> -acodec copy -vhook "/usr/lib64/vhook/drawtext.so -c #ffffff -f
>> resources/VAGRoundedStd-Bold.otf -t crazytext" junior-watermarked.mov
>> FFmpeg version SVN-r8548, Copyright (c) 2000-2007 Fabrice Bellard, et al.
>> configuration: --cc=gcc4 --prefix=/usr --libdir=/usr/lib64
>> --mandir=/usr/share/man --incdir=/usr/include/ffmpeg
>> --extra-cflags=-fPIC --enable-libmp3lame --enable-libogg
>> --enable-libvorbis --enable-libfaad --enable-libgsm --enable-liba52
>> --enable-liba52bin --enable-libdts --enable-pp --enable-shared
>> --enable-gpl --disable-strip --enable-pthreads
>> libavutil version: 49.4.0
>> libavcodec version: 51.40.2
>> libavformat version: 51.11.0
>> built on Mar 30 2007 14:10:15, gcc: 4.1.0 20060515 (Red Hat 4.1.0-18)
>>
>> Seems stream 0 codec frame rate differs from container frame rate:
>> 1000.00 (1000/1) -> 24.00 (24/1)
>> Input #0, flv, from 'originals/junior.flv':
>> Duration: 00:04:41.6, start: 0.000000, bitrate: 128 kb/s
>> Stream #0.0: Video: flv, yuv420p, 400x222, 24.00 fps(r)
>> Stream #0.1: Audio: mp3, 44100 Hz, mono, 128 kb/s
>> Output #0, mov, to 'junior-watermarked.mov':
>> Stream #0.0: Video: mpeg4, yuv420p, 400x222, q=2-31, 200 kb/s, 24.00
>> fps(c)
>> Stream #0.1: Audio: mp3, 44100 Hz, mono, 128 kb/s
>> Stream mapping:
>> Stream #0.0 -> #0.0
>> Stream #0.1 -> #0.1
>> Press [q] to stop encoding
>> [flv @ 0x2a95c30e70]run overflow at 15x13 i:0me=61.7 bitrate= 342.5kbits/s
>> [flv @ 0x2a95c30e70]Error at MB: 353
>> [flv @ 0x2a95c30e70]concealing 59 DC, 59 AC, 59 MV errors
>> [flv @ 0x2a95c30e70]slice end not reached but screenspace end (23 left
>> 6F0160, score= -2424)
>> [flv @ 0x2a95c30e70]concealing 350 DC, 350 AC, 350 MV errors
>> frame= 6759 fps=334 q=15.7 Lsize= 11578kB time=281.6 bitrate=
>> 336.8kbits/s
>> video:7015kB audio:4394kB global headers:0kB muxing overhead 1.480154%
>>
>
> There are errors, and the original reported total bitrate of 128kb/s
> should be larger that the reported audio bitrate of 128kb/s, hence
> your input file is corrupted (or not properly recognized by ffmpeg).
>
> So it is not a good test bed for the kind of bug you report.
> Try to reproduce it with a non corrupted input file.
>
> Notice anyway, that if you watermark then you are adding detail to your
> original movie, and hence you need to specify for your output a higher
> video bitrate that your input has, to keep the same quality.
>
ok so I don't have a way to produce this file so getting a fixed version
may not be possible, but I can address the brokenness by only encoding
the first 10 seconds, and at a higher bitrate to address your concern
regarding a lack of bits on the output encoding - the corruption still
happens despite these changes.
$ ffmpeg -i originals/junior.flv -deinterlace -vcodec mpeg4 -b 2000k -t
10 -f mov -acodec copy -vhook "/usr/lib64/vhook/drawtext.so -c #ffffff
-f resources/VAGRoundedStd-Bold.otf -t crazytext" junior-watermarked.mov
FFmpeg version SVN-r8548, Copyright (c) 2000-2007 Fabrice Bellard, et al.
configuration: --cc=gcc4 --prefix=/usr --libdir=/usr/lib64
--mandir=/usr/share/man --incdir=/usr/include/ffmpeg
--extra-cflags=-fPIC --enable-libmp3lame --enable-libogg
--enable-libvorbis --enable-libfaad --enable-libgsm --enable-liba52
--enable-liba52bin --enable-libdts --enable-pp --enable-shared
--enable-gpl --disable-strip --enable-pthreads --enable-amr_wb
--enable-amr_nb --enable-qcelp
libavutil version: 49.4.0
libavcodec version: 51.40.2
libavformat version: 51.11.0
built on Mar 30 2007 14:10:15, gcc: 4.1.0 20060515 (Red Hat 4.1.0-18)
Seems stream 0 codec frame rate differs from container frame rate:
1000.00 (1000/1) -> 24.00 (24/1)
Input #0, flv, from 'originals/junior.flv':
Duration: 00:04:41.6, start: 0.000000, bitrate: 128 kb/s
Stream #0.0: Video: flv, yuv420p, 400x222, 24.00 fps(r)
Stream #0.1: Audio: mp3, 44100 Hz, mono, 128 kb/s
Output #0, mov, to 'junior-watermarked.mov':
Stream #0.0: Video: mpeg4, yuv420p, 400x222, q=2-31, 2000 kb/s, 24.00
fps(c)
Stream #0.1: Audio: mp3, 44100 Hz, mono, 128 kb/s
Stream mapping:
Stream #0.0 -> #0.0
Stream #0.1 -> #0.1
Press [q] to stop encoding
frame= 240 fps=154 q=2.0 Lsize= 2404kB time=10.0 bitrate=1969.1kbits/s
video:2241kB audio:156kB global headers:0kB muxing overhead 0.297469%
More information about the ffmpeg-devel
mailing list