Page 1 of 1

How fast can you get from streaming video?

Posted: 07 Dec 2005 08:10
by bishamon
Recently, I setup a video chat using vlc.
I got an average of 3 to 5 seconds delay from a remote client.
Is this the fastest speed that I can get?

I am trying to emulate the speed when using x-box video chat which has a delay of around less than 1 to 2 seconds. Is this achievable using vlc?

Thanks,
bishamon :twisted:

Posted: 07 Dec 2005 09:45
by zorglub
Hello,

By cutting down on buffers, you should be able to reach about 500ms + the latency of the Internet line. You can search the forums for more details on how to achieve this

Re:

Posted: 07 Dec 2005 13:44
by Scott JHU-ECE
Less than 500ms, in fact. In the preferences menu (making sure you have Advanced Options selected), you can turn down buffers galore. Setting them less than 1 will only give you the default value again (i.e. your 3-5 seconds of delay), so you'll want to keep it at 1 or above. Most can be set all the way down to 1, with the exception of a few (it varies which few, depending on your application) - you'll need to play with those; I find that things settle out in the 20-100ms range. For my videoconferencing application, this gets me about a 1 second round trip, if everything is set correctly (i.e. from the client to the server and routed to various clients again).

Posted: 08 Dec 2005 00:52
by Jerome2
Hello ! I'm interested in doing the same thing, but obviously some tweaks do not work on my end. Are you using UDP or RTP to reach latency under 500ms ? If UDP, which values are you giving to which buffers ? I guess you found the sweet spot :D Please let us know...

Re:

Posted: 10 Dec 2005 21:32
by Scott JHU-ECE
I haven't noticed a difference from UDP to RTP, but I usually stick with RTP if only because the acronym makes it sound faster.

As for which values to which buffers, I don't think I could recite to you what all I set - I more or less went through the whole menu system, and turned everything down to '1'. This makes things go to heck in a handbasket, so I proceeded to turn up each buffer/cache option above 200ms, and checked again if it would take the file and stream it. Once you find the offending buffer/cache option (i.e. the one or two of them, that when turned all the way down, make it impossible for VLC to keep up with the content), you can whiddle it lower and lower till you start seeing frames jerk, and set it about 20ms above that. Note that to get it down throughout the system, you have to do the above for 1) Capturing from the device or getting from a file 2) For the streaming settings 3) and again on the receiving end. Also, don't forget about the time it takes to transcode and whatnot, if your application necessitates that.

-Scott