Examples showing how to use the commandline to create stream output. Read more
OpenVSX contains an MPEG-DASH streaming server for delivering live content. MPEG-DASH can be used for adaptive bitrate streaming similar to HTTPLive for Apple devices.
MPEG-DASH Streaming Server
Offer a live MPDG-DASh .mpd playlist and .m4s media content on HTTP port 8080
./bin/vsx -v --in=input.sdp --dash=8080 --live
To view the live stream you can connect a device to http://<OpenVSX IP>:8080/dash
To offer the content over SSL/TLS use --dash=https://0.0.0.0:8443 or just --dash=https://8443
To require authentication you can specify a username and password using the following standard syntax.
OpenVSX will create .m4s media segments with a default duration of between 5 and 10 seconds. The duration can vary depending on the placement of keysframes in the video stream.
To change the minimum duration to 3 seconds use--dashminduration=3.0
To change the maximum duration to 5 seconds use--dashmaxduration=5.0
The m3u8 playlist file and media segments are stored in <OPENVSX_HOME>/html/httplive/. You may want to change this path to allow another web server to serve HTTPLive content, or to use an in-memory file system. The following option changes the output directory to allow the Apache web server to serve the generated content --httplivedir=/usr/local/apache/htdocs/httplive
Both the .mpd playlist file and media segments are named by using the file prefix out. To use a different file prefix such as myprefix add --dashfileprefix=myprefix. This will create the files called myprefix.mpd and myprefix<time-stamp>.m4s.
The .mpd playlist assumes an HTTP client will load the media segments from the same directory as the playlist. To use a different URL to refer to the media segments use --dashurlhost=http://my-high-bandwidth-server/my-media-uri. The playlist file will then prefix each media segment with out<time-stamp>.ts file with this URL.
MPEG-DASH Adaptive Bitrate Streaming
OpenVSX is able to perform real-time media encoding to produce multiple parallel encoded outputs for the same input media stream.
This example will output three representations of the input media by transcoding the video portion to produce two lower bandwidth representations while also preserving the original encoded stream.
The first representation is the original video bypassing the transcoder. In this example the bitrate is 900Kb/s.
The second representation produces a video bitrate of 600Kb/s.
The third representation produces a video bitrate of 300Kb/s with a width of 320 pixels and the same aspect ratio.