[MPlayer-dev-eng] [PATCH] dvb fix
nsabbi at libero.it
Mon Aug 25 18:07:52 CEST 2003
David Kuehling wrote:
>This is not classical polling. You wait for events on the file
>descriptor via poll, with a timeout of half a second. MPlayer is
>event-loop-based without any threads. Your code slows the main playing
>loop down to a crawl, if no data are available immediately. As the main
>event loop of mplayer only displays one frame per cycle, video will
>never be able to catch up with audio. The situation is strange. Your
>DVB input code seems to have certain expactations about how much data it
>can expect to read from the stream. In my setup with DVB-t Berlin it
>always requests slightly too much data. It always gets the data it
>wants, but also it always has to wait for it for about 0.3 seconds.
With my system it doesn't slow down at all; many other users reported
smooth playback with the DVB module, even with slower CPUs.
If the card timeouts than I suspect it isn't sending data fast enough.
Are you sure your system is alright? Are you sharing interrupts? Are
your PCI latencies correct?
What happens when you use dvbstream -o -ps apid vpid | mplayer - ?
Is it smooth?
>>>As the audio stream calls for continous data, and audio cannot be
>>>slowed down, the effect doesn't stop and just goes on. Instead the
>>>code should check very carefully that enough data are available
>>>before initiating audio playback. If that doesn't help, maybe a
>>>greater stream-buffer would be helpful.
More information about the MPlayer-dev-eng