[vlc-devel] How to slow down the demuxer?
Frédéric Yhuel
yhuelf at gmail.com
Wed Oct 24 14:04:37 CEST 2012
Hello,
I moved the Smooth Streaming module into a demux module, which is
chained with mp4 demux.
I've got a problem with pace control. Usually, for a normal mp4 file,
Demux() is called approximately every 100 ms, thanks to PCR handling:
es_out_Control( p_demux->out, ES_OUT_SET_PCR, VLC_TS_0 + p_sys->i_pcr );
I don't really understand how this mechanism works, but the fact is
that it doesn't work well with Smooth Streaming (implemented as a
demuxer).
Demux() would be call a dozen of times at close intervals (less than 1
ms), then an interval of 3 seconds, etc...
I guess it is related to the fact that DEMUX_GET_TIME request, which
the Smooth Streaming demux forwards to the mp4 demux through a call to
stream_DemuxControl(), returns a fairly imprecise result.
Indeed, mp4 demux answers a batch of these requests, then executes a
batch of Demux(), and so on... so usually time is not updated between
two requests.
what should I do to fix this problem?
Thanks in advance,
Frédéric
More information about the vlc-devel
mailing list