| VideoLAN HOWTO | ||
|---|---|---|
| Prev | Chapter 9. Advanced use of VLC's stream output (transcoding, multiple streaming, etc...) | Next |
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}'
|
![]() | You can also combine the es module with the other modules to set-up even more complex solution . |
