Chinaunix首页 | 论坛 | 博客
  • 博客访问: 162792
  • 博文数量: 67
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 622
  • 用 户 组: 普通用户
  • 注册时间: 2014-11-19 19:12
文章分类

全部博文(67)

分类: LINUX

2017-01-24 11:56:35

Transcoding
Transcode a stream to Ogg Vorbis with 2 channels at 128kbps and 44100Hz and save it as foobar.ogg:
    vlc -I dummy -vvv input_stream --sout "#transcode{vcodec=none,acodec=vorb,ab=128,channels=2,samplerate=44100}:file{dst=foobar.ogg}"

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}:rtp{mux=ts,dst=239.255.12.42,sdp=sap,name="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}:rtp{mux=ts,dst=239.255.12.42,sdp=sap,name="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=rtp{mux=ts,dst=239.255.12.42,sdp=sap,name="TestStream"}}'

To receive the input stream that is being multicasted above on a client:
    vlc rtp://239.255.12.42

Send a stream to a multicast IP address and a unicast IP address:
    vlc -vvv input_stream --sout '#duplicate{dst=rtp{mux=ts,dst=239.255.12.42,sdp=sap,name="TestStream"},dst=rtp{mux=ts,dst=192.168.1.2}}'

Display the stream and send it to two unicast IP addresses:
    vlc -vvv input_stream  --sout '#duplicate{dst=display,dst=rtp{mux=ts,dst=192.168.1.12},dst=rtp{mux=ts,dst=192.168.1.42}}'

Send parts of a multiple program input stream:
    vlc -vvv multiple_program_input_stream
--sout'#duplicate{dst=rtp{mux=ts,dst=239.255.12.42},select="program=12345",dst=rtp{mux=ts,dst=239.255.12.43},select="video,program=1234-2345"}'

This command sends the program of the input stream which id is 12345 to 239.255.12.42 and all video programs with id between 1234 and 2345 to 239.255.12.43.
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=rtp{mux=ts,dst=239.255.12.42,sdp=sap,name="TestStream"},dst=rtp{mux=ts,dst=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=rtp{mux=ts,dst=192.168.1.2},dst=rtp{mux=ts,dst=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=rtp{mux=ts,dst=239.255.1.2,sdp=sap,name="OriginalStream"},
dst="transcode{vcodec=mp4v,acodec=mpga,vb=800,ab=128}:rtp{mux=ts,dst=239.255.1.3,sdp=sap,name="TranscodedStream"}"}'

HTTP streaming
Stream in HTTP:
     vlc -vvv input_stream --sout '#standard{access=http,mux=ogg,dst=server.example.org:8080}'
on the client(s), run:
    vlc

Transcode and stream in HTTP:
     vlc -vvv input_stream --sout '#transcode{vcodec=mp4v,acodec=mpga,vb=800,ab=128}:standard{access=http,mux=ogg,dst=server.example.org:8080}'

Recording a live video stream:
     vlc --sout="#duplicate{dst=std{access=file,mux=asf,dst='C:\test\test.asf'},dst=nodisplay}"

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,dst=server.example.org:8080}'

RTSP live streaming
Stream with RTSP and RTP:
    vlc -vvv input_stream --sout '#rtp{dst=192.168.0.12,port=1234,sdp=rtsp://server.example.org:8080/test.sdp}'

Run on the client(s):
    vlc rtsp://server.example.org:8080/test.sdp

MMS / MMSH streaming to Windows Media Player
    vlc -vvv input_stream --sout '#transcode{vcodec=DIV3,vb=256,scale=1,acodec=mp3,ab=32,channels=2}:std{access=mmsh,mux=asfh,dst=:8080}'

VLC media player can connect to this by using the following url: mmsh://server_ip_address:8080.
Windows Media Player can connect to this by using the following url: mms://server_ip_address:8080.

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

参考:
https://wiki.videolan.org/Documentation:Streaming_HowTo/Command_Line_Examples/
阅读(1601) | 评论(0) | 转发(0) |
0

上一篇:Receive a stream with VLC

下一篇:反转int

给主人留下些什么吧!~~