Linuxdoc Linux Questions
Click here to ask our community of linux experts!
Custom Search

9.2. Examples

9.2.1. Transcoding

Transcode the input stream and send it to a multicast IP address with the associated SAP announce :


% vlc -vvv input_stream --sout '#transcode{vcodec=mp4v,acodec=mpga,vb=800,ab=128,deinterlace}:
standard{access=udp,mux=ts,url=239.255.12.42,sap=TestStream}'

Display the input stream, transcode it and send it to a multicast IP address with the associated SAP announce :


% vlc -vvv input_stream --sout '#duplicate{dst=display,dst=
"transcode{vcodec=mp4v,acodec=mpga,vb=800,ab=128,deinterlace}:
standard{access=udp,mux=ts,url=239.255.12.42,sap=TestStream}"}'

Transcode the input stream, display the transcoded stream and send it to a multicast IP address with the associated SAP announce :


% vlc -vvv input_stream --sout '#transcode{vcodec=mp4v,acodec=mpga,vb=800,ab=128,deinterlace}:
duplicate{dst=display,dst=standard{access=udp,mux=ts,url=239.255.12.42,sap=TestStream}}'

9.2.2. Multiple streaming

Send a stream to a multicast IP address and a unicast IP address :


% vlc -vvv input_stream --sout '#duplicate{dst=
standard{access=udp,mux=ts,url=239.255.12.42,sap=TestStream},
dst=standard{access=udp,mux=ts,url=192.168.1.2}}'

Display the stream and send it to two unicast IP addresses :


% vlc -vvv input_stream --sout '#duplicate{dst=display,dst=
standard{access=udp,mux=ts,url=192.168.1.12},
dst=standard{access=udp,mux=ts,url=192.168.1.42}}'

9.2.3. Transcoding and multiple streaming

Transcode the input stream, display the transcoded stream and send it to a multicast IP address with the associated SAP announce and an unicast IP address :


% vlc -vvv input_stream --sout '#transcode{vcodec=mp4v,acodec=mpga,vb=800,ab=128,deinterlace}:
duplicate{dst=display,dst=standard{access=udp,mux=ts,url=239.255.12.42,sap=TestStream},
dst=standard{access=udp,mux=ts,url=192.168.1.2}}'

Display the input stream, transcode it and send it to two unicast IP addresses :


% vlc -vvv input_stream --sout '#duplicate{dst=display,
dst="transcode{vcodec=mp4v,acodec=mpga,vb=800,ab=128}:
duplicate{dst=standard{access=udp,mux=ts,url=192.168.1.2},
dst=standard{access=udp,mux=ts,url=192.168.1.12}"}'

Send the input stream to a multicast IP address and the transcoded stream to another multicast IP address with the associated SAP announces :


% vlc -vvv input_stream --sout '#duplicate{dst=
standard{access=udp,mux=ts,url=239.255.1.2,sap=OriginalStream},
dst="transcode{vcodec=mp4v,acodec=mpga,vb=800,ab=128}:
standard{access=udp,mux=ts,url=239.255.1.3,sap=TranscodedStream}"}'

9.2.4. HTTP streaming

Stream in HTTP :

  • on the server, run :

    
% vlc -vvv input_stream --sout '#standard{access=http,mux=ogg,url=server.example.org:8080}'
    
    
  • on the client(s), run :

    
% vlc http://server.example.org:8080
    
    

Transcode and stream in HTTP :


% vlc -vvv input_stream --sout '#transcode{vcodec=mp4v,acodec=mpga,vb=800,ab=128}:
standard{access=http,mux=ogg,url=server.example.org:8080}'

For example, if you want to stream an audio CD in Ogg/Vorbis over HTTP :


% vlc -vvv cdda:/dev/cdrom --sout '#transcode{acodec=vorb,ab=128}:
standard{access=http,mux=ogg,url=server.example.org:8080}'

9.2.5. Use the es module

Separate audio and video in two PS files :


% vlc -vvv input_stream --sout
'#es{access=file,mux=ps,url_audio=audio-%c.%m,url_video=video-%c.%m}'

Extract the audio track of the input stream to a TS file :


% vlc -vvv input_stream --sout '#es{access_audio=file,mux_audio=ts,url_audio=audio-%c.%m}'

Stream in unicast the audio track on a port and the video track on another port :

  • on the server side :

    
% vlc -vvv input_stream --sout
    '#es{access=rtp,mux=ts,url_audio=192.168.1.2:1212,url_video=192.168.1.2:1213}'
    
    
  • on the client side: to receive the audio :

    
% vlc udp:@:1212
    
    

    to receive the video :

    
% vlc udp:@:1213
    
    

Stream in multicast the video and dump the audio in a file :


% vlc -vvv input_stream --sout '#es{access_video=udp,mux_video=ts,url_video=239.255.12.42,
access_audio=file,mux_audio=ps,url_audio=audio-%c.%m}'

Note

You can also combine the es module with the other modules to set-up even more complex solution .