[vlc-devel] Pause streaming from the source and buffering to compensate
remi at remlab.net
Tue Sep 25 22:22:08 CEST 2012
Le mardi 25 septembre 2012 22:46:40, LANGLOIS Olivier PIS -EXT a écrit :
> Thank you for your reply. I just want to clarify a small detail. I am not
> seeking a zero latency solution.
> My application is the streaming of a long sequence of mp4 files (playlist).
> Playback is smooth as long as you let streamer alone (vlc also). As soon as
> you pause/unpause the stream on the streamer side, you will get a 4-5
> seconds playback freeze at the beginning of every video clip. This is the
> problem. If you reread my original post, what it is, it is my analysis of
> why this is happening. It should be very easy to reproduce with 2.0.3
You are not supposed to pause playback while streaming. Streaming protocols
have no provisions for server-initiated pause. In fact, pausing on the sender
will eventually trigger a timeout on the receiver and a complete failure,
depending on the protocol(s) used.
> It occurs in src/input/es_out.c in the switch case for
> case ES_OUT_SET_PCR:
> case ES_OUT_SET_GROUP_PCR:
There certainly are a few problems with the ES output core. But mostly, there
are lots of problems with the streaming output. It has hardly evolved from the
proof-of-concept stage from 8 years ago (time flies...).
And then server-side pause were never "designed".
> It is fixed in my app as I have commented most of that block (of course
> this has led to other problems which had made me butcher some more vlc
> making my solution not friendly to the vlc general audience).
> To me having video playback freezing for more then 15% of the time is
> unacceptable. Feel free to disagree. I wanted to attract your attention to
> the issue. I am glad to see that feedback user is appreciated.
15% freeze in normal circumstances would certainly suck. 15% freeze while
doing weird stuff at the sender side is not entirely unsurprising.
More information about the vlc-devel