Search code examples
video-streamingvlcrtsp

Using VLC to host a stream of an infinite video loop


I want to offer a video stream from my pc with a VLC player trough a WIFI network to smartphones for regression testing. The video should automatically restart at the beginning after being finished on the smartphone.

I'm currently using rtsp as protocol and the loop option, but this is no mandatory. The problem is, that every time the video restarts a new rtsp handshake is necessary. Since most of the smartphone apps I tested don't support reconnecting the stream automatically after being finished, I want to have only one handshake being valid all over the time.

vlc mypath\myvideo.mp4 sout=#transcode{vcodec=h264,acodec=none}:rtp{sdp=rtsp://:8554/} --loop

Thank you


Solution

  • you need to use --sout-keep which keeps the stream output open (disabled by default)

    and use gather:std and transcode option if the files use different encoding so that there wouldn't be any noticeable interruption on input change.

    see:

    1: https://wiki.videolan.org/Documentation:Streaming_HowTo/Command_Line_Examples/#Keeping_the_stream_open

    2: https://wiki.videolan.org/Documentation:Modules/gather/