[vlc-devel] Pause streaming from the source and buffering to compensate

Rémi Denis-Courmont 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 :
> Remi,
> 
> 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.

-- 
Rémi Denis-Courmont
http://www.remlab.net/



More information about the vlc-devel mailing list