Hello, I used the following sample of Dirac codec for study: http://dirac.kw.bbc.co.uk/download/video/maybefinal/diracpromo-tr2200.ts It doesn't play with default mpegts demuxer at all, 'cause this demuxer know anything about Dirac. (Of course, mplayer's svn head is used for a check.) A sample plays with -demuxer lavf, but video quickly runs out of sync, and I get a huge bunch of pts value <= previous messages. I managed to maintain A/V sync using -mc 100 -autosync 40, but this leads to regular framedrops and choppy video playback whilst a lot of CPU available. This file plays perfectly with ffplay, so I suspect a bug somewhere around libmpdemux/demux_lavf.c code. -- Best regards, Andrew
On Fri, 2008-10-17 at 18:00 +0400, Andrew Savchenko wrote:
A sample plays with -demuxer lavf, but video quickly runs out of sync, and I get a huge bunch of pts value <= previous messages.
I managed to maintain A/V sync using -mc 100 -autosync 40, but this leads to regular framedrops and choppy video playback whilst a lot of CPU available.
This file plays perfectly with ffplay, so I suspect a bug somewhere around libmpdemux/demux_lavf.c code.
The problem is caused by the libavcodec decoder. It leaves has_b_frames at 0 which is incorrect. This confuses the MPlayer timing code. If I force the code to assume a decode delay of 1 instead of the 0 claimed by the decoder then it seems to play OK.
On Fri, Oct 17, 2008 at 06:29:40PM +0300, Uoti Urpala wrote:
On Fri, 2008-10-17 at 18:00 +0400, Andrew Savchenko wrote:
A sample plays with -demuxer lavf, but video quickly runs out of sync, and I get a huge bunch of pts value <= previous messages.
I managed to maintain A/V sync using -mc 100 -autosync 40, but this leads to regular framedrops and choppy video playback whilst a lot of CPU available.
This file plays perfectly with ffplay, so I suspect a bug somewhere around libmpdemux/demux_lavf.c code.
The problem is caused by the libavcodec decoder. It leaves has_b_frames at 0 which is incorrect. This confuses the MPlayer timing code. If I force the code to assume a decode delay of 1 instead of the 0 claimed by the decoder then it seems to play OK.
Time to report a bug to FFmpeg/Anuradha then? Diego
Hi, On Saturday 18 October 2008 12:10, Diego Biurrun wrote: [...]
Time to report a bug to FFmpeg/Anuradha then?
Done. I submitted to ffmpeg's bugzilla: https://[scrambled].mplayerhq.hu/[scrambled]/ffmpeg/issue694 I hope, this is a right way. ffmpeg-users seems to be not intended for bugreporting and I will be definitely blamed on devel list with a bugreport instead of a patch 8-). Well, I sincerely tried to fix this myself, but currently I gave up. Dirac's codec doesn't set has_b_frames at all. A quick overview of dirac's specification revealed, that it is a bad idea to always set has_b_frames=1 either: dirac allows to create video without B-frames at all (e.g. Dirac Pro). And Dirac's specification in 136 pages + documentation of the library seems to be too much to fix this issue relatively easily with zero a priori knowledge of Dirac codec. -- Best regards, Andrew
On Sat, Oct 18, 2008 at 11:58:48PM +0400, Andrew Savchenko wrote:
On Saturday 18 October 2008 12:10, Diego Biurrun wrote: [...]
Time to report a bug to FFmpeg/Anuradha then?
Done. I submitted to ffmpeg's bugzilla: https://[scrambled].mplayerhq.hu/[scrambled]/ffmpeg/issue694
I hope, this is a right way. ffmpeg-users seems to be not intended for bugreporting and I will be definitely blamed on devel list with a bugreport instead of a patch 8-).
Well, I sincerely tried to fix this myself, but currently I gave up. Dirac's codec doesn't set has_b_frames at all. A quick overview of dirac's specification revealed, that it is a bad idea to always set has_b_frames=1 either: dirac allows to create video without B-frames at all (e.g. Dirac Pro). And Dirac's specification in 136 pages + documentation of the library seems to be too much to fix this issue relatively easily with zero a priori knowledge of Dirac codec.
Let's see if Anuradha can fix it... Diego
participants (3)
-
Andrew Savchenko -
Diego Biurrun -
Uoti Urpala