[Ffmpeg-devel] [BUG] no video transcoding

Baptiste Coudurier baptiste.coudurier
Mon Apr 23 13:30:41 CEST 2007


Wolfram Gloger wrote:
> Hi,
> 
>> to comment a little more on this as it seem to be a popular bug ;)
>>
>> On Sun, Apr 15, 2007 at 08:13:37AM -0000, Wolfram Gloger wrote:
>> [...]
>>> Ok that's probably true -- although I maintain the patch is correct,
>> no it is not, cur_dts was approximately correct before and completely
>> wrong after the patch
> 
> How so?  cur_dts was set to some more or less random packet's dts
> that was the last one parsed in av_find_stream_info().
> Then the packet queue is flushed and the next packet read has a
> (sometimetimes significantly) smaller dts value.
> This leads to a hard error (dts < cur_dts) for valid DVB streams.
> It is just a matter of luck if you don't hit this situation.
> 
> After the patch, cur_dts becomes AV_NO_PTS_VALUE -- how can that
> be "completely wrong".  Please elaborate.
> 
> I might agree about your "approximately correct" in the sense that
> it hides another problem.
> 
>>> With both patches (i.e. in current svn) we lose all the cur_dts values
>>> after av_find_stream_info(), so if the first packets don't contain
>>> timestamps, we are in trouble generating any.
>>> =20
>>> Baptiste, does the appended patch fix your case?
>> ping
> 
> Yes that would be interesting to know.

Thanks for reminding me, I tested the patch inlined in the mail and it
seems better:

ffmpeg -v 3 -i no_video_transcoding.m2t -vcodec copy -acodec copy test.mpg

FFmpeg version SVN-r8792, Copyright (c) 2000-2007 Fabrice Bellard, et al.
  configuration: --cc=distcc gcc-4.1 --enable-gpl --enable-static
--enable-libmp3lame --enable-libfaac --enable-liba52 --enable-x264
--enable-libfaad --enable-pthreads --enable-xvid --enable-pp
--enable-amr_nb --enable-amr_wb
  libavutil version: 49.4.0
  libavcodec version: 51.40.4
  libavformat version: 51.12.1
  built on Apr 23 2007 13:07:12, gcc: 4.1.2 20061115 (prerelease)
(Debian 4.1.1-21)
Input #0, mpegts, from 'no_video_transcoding.m2t':
  Duration: 00:00:05.8, start: 3494.827200, bitrate: 16775 kb/s
  Stream #0.0[0x31], 1/90000: Video: mpeg2video, yuv420p, 1920x1080,
1001/30000, 18000 kb/s, 29.97 fps(r)
  Stream #0.1[0x34](eng), 1/90000: Audio: ac3, 48000 Hz, 5:1, 384 kb/s
Output #0, mpeg, to 'test.mpg':
  Stream #0.0, 1/90000: Video: mpeg2video, yuv420p, 1920x1080,
1001/30000, q=2-31, 18000 kb/s, 29.97 fps(c)
  Stream #0.1, 1/90000: Audio: ac3, 48000 Hz, 5:1, 384 kb/s
Stream mapping:
  Stream #0.0 -> #0.0
  Stream #0.1 -> #0.1
Press [q] to stop encoding
error, non monotone timestamps 33315 >= 33315 st:0
frame=  167 fps=  0 q=0.0 Lsize=   11636kB time=5.5
bitrate=17420.0kbits/s dup=0 drop=0
video:11471kB audio:256kB global headers:0kB muxing overhead -0.782671%

ffmpeg -v 3 -y -i no_video_transcoding.m2t test.mov
No accelerated IMDCT transform found
Press [q] to stop encoding
*** 13 dup!
[mpeg2video @ 0x853a190]ac-tex damaged at 50 42=5.2
bitrate=5006.1kbits/s dup=14 drop=0
[mpeg2video @ 0x853a190]Warning MVs not available
[mpeg2video @ 0x853a190]concealing 3080 DC, 3080 AC, 3080 MV errors
frame=  176 fps= 13 q=31.0 Lsize=    3325kB time=5.4
bitrate=5066.8kbits/s dup=14 drop=0
video:2742kB audio:68kB global headers:0kB muxing overhead 18.331717%

If luca can test too, it would be great.

-- 
Baptiste COUDURIER                              GnuPG Key Id: 0x5C1ABAAA
SMARTJOG S.A.                                    http://www.smartjog.com
Key fingerprint                 8D77134D20CC9220201FC5DB0AC9325C5C1ABAAA
Phone: +33 1 49966312




More information about the ffmpeg-devel mailing list