VLC播放器搭建服务器(TCP和UDP方式)

VLC播放器搭建服务器(TCP和UDP方式),第1张

服务器操作流程

客户端操作:

服务器操作:

客户端操作:

既有基于TCP的RTP,也有基于UDP的RTP,但抓包发现,VLC的RTP是基于UDP的。

操作模式与UDP一致。

VLC的http方式搭建的流媒体服务器是用TCP方式进行数据传输的,操作方式与RTSP一致。

这个应用主要是将HTTP的串流转换成RTMP协议传送到Adobe Flash Media Server或Wowza Media Server的媒体服务器。

RTMP的协议有以下的参数:

RTMP: 其原始采用TCP port 1935

RTMPS: 将RTMP加载到SSL的安全机制,就类似HTTPS。

RTMPE: 采用Adobe所提供给RTMP所发展的加密版本。

RTMPT: 在RTMP上加挂he RTMP protocol 封装在HTTP请求中,可以穿越防火墙。这是一个很不错的协议,使用TCP端口80和443绕过公司对防火墙。封装的会话可能携带纯RTMP,RTMPS或RTMPE包内。

RTMP 串流

VLC 在 2.0.x版本里可以支持RTMP协议。不过,有些环境却没法执行,例如2.0.2, 2.0.3, 2.0.4, 2.0.6在Windows 2008 Server 64的服务器上确实没法执行。可以开启VLC然后开启网络串流,如“RTMP://aaa.bbb.com:1935/live/串流源“,看看可否开 启。主要是VLC 2.0.x采用 ffmpeg/libav的程序库,但是, 有的包装却没法支持。所以必须先做确认。当 librtmp 的支持被启动于 ffmpeg/libav 则RTMPS才可以有功用。

VLC和RTMP的情形主要是用来捕获和转码应用程序生成一个单一的流。是通过另一个应用程序分配给多个客户端。这在Wowza是非常重要的。虽然,Wowza也支持VLC采用UDP/RTP/RTSP方式接收串流,但是,很多情况下是很不稳定的。

LC直接连接到一个的RTMP串流,如WOWZA,不听传入的请求。因此,它是不可能的,以查看的RTMP流直接从VLC。您需要连接到WOWZA,观看流。这是可以用VLC做到的:

$ vlc rtmp://rtmp.server.com:1935/path/to/stream

有件事必须提醒的。从VLC将RTMP串流传送给Wowza服务器并不是都很稳定的。有一些时间关系的“虫”会造成Wowza关闭连线。 这样的问题都是与“音频”与”视频“时间戳(Timestamp)有关系的。采用“audio-desync” 选项来整合RTMP也不是个好点子,但是, 可以不断调整与修改。

Webcam RTMP streaming

以下是有关webcam的应用。其他的有采集装置、设备、视频文档等应用。

Windows 的范例

在windows的采集装置都是利用DirectShow这个界面的。在VLC的模块也是用这样的界面,成为“DirectShow“或”dshow”。以下是范例:

$ vlc dshow://"" --sout '#transcode{vcodec=h264,vb=300,fps=25,scale=1,acodec=mp4a,

ab=64,channels=2}:std{access=rtmp,mux=ffmpeg{mux=flv},dst=rtmp://rtmp.server.com:1935/path/to/stream}'

DirectShow选项也可在QT界面里采用

Linux 的范例

通常在Linux的采集装置上都是采用“video for linux” (v4l2)这个界面。使用指令方式来采集webcam装置(或称为”v4l2 装置”)送出RTMP串流的范例如下:

$ vlc v4l2:// --v4l2-fps=25 --sout '#transcode{vcodec=h264,vb=300,fps=25,scale=1,

acodec=mp4a,ab=64,channels=2}:std{access=rtmp,mux=ffmpeg{mux=flv},dst=rtmp://rtmp.server.com:1935/path/to/stream}'

这个例子可以自动侦测 v4l2 装置并且选择第一个装置来采集讯号。其他的参数选项如视频标准(PAL, NTSC)、Chroma、宽度、长度等等可以自行设置。必须要注意的是,这些参数设置跟本身的设备有关。 当我门使用debug模式 (-vvv),VLC自身的video for linux (v4l2) 模块会显示出执行时所出现的数值讯息。v4l2 模块提供以下可作为优化的选项:

–v4l2-dev=: 指定所要采集的特定装置

–v4l2-standard=: 使用哪种视频标准,例如: SECAM, PAL, NTSC and more

–v4l2-width=: 视频呈现的宽度(in pixels)

–v4l2-height=: 视频呈现的长度度(in pixels)

以上是描述有关v4l2的参数选项。完整的v4l2模块讯息,可以利用下面的指令查询。

$ vlc -H -p v4l2 --advanced

以下是另一个将http串流转码(transcode)到RTMP给Adobe Flash Media Server或Wowza Media Server等视频服务器

cvlc -I dummy http。//orginalstreamIPaddress:50014 --sout-mux-caching=5000

--sout='#transcode{venc=x264{keyint=60},vcodec=h264,vb=800}:std{access=rtmp,

mux=ffmpeg{mux=flv},dst=rtmp。//destinationIPaddress:1935/live/StreamFile}}' &

这是用ffmpeg的方法:

ffmpeg -i http。//OriginalIPAddress:50010 -vcodec libx264 -vb 800k

-acodec libfaac -ab 64k -f flv rtmp。//DestinationIPAddress:1935/live/StreamFile

阅读前提是用户机器上已经安装了VLC Media Player软件,并且确保作为转发服务器的电脑性能为佳。

转发服务端设置最关键的操作是正确确定卫星节目的网址,完毕之用执行下列操作即可:

开始-程序-打开VLC Media Player软件,文件-打开文件,选择网络,选“HTTP/HTTPS/FTP/MMS”传输协议,添加网址:

下面详细介绍一下确定卫星节目网址的方法:

在此以70.5°E的“Trace TV”音乐频道为例:

首先进入DM500S接收机的WEB管理控制界面,选择“Trace TV”频道,点击“VLC”,待完成后点击播放,此时出现VLC Media Player软件播放该频道的界面。在菜单栏里,通过查看-串流及媒体信息,选择一般。

复制“URI”栏目内的网址(注:“URI”应该为“URL”,汉化错误),粘贴到文件 -打开文件 -网络 -网址框内,再将串流/保护前选项框内打“√”,即可点击“设置”按钮。

进入串流输出设置界面。

首先选择输出方式,这里选用MMSH协议,地址栏填写转发服务端的IP地址“192.168.1.2”。然后选择封装方法,一般选用ASF,也可采用MP4、WAV封装方法,不过只能采用MMSH协议输出,如果采用HTTP协议输出,则客户端播放没有画面。

通过VLC串流转码。实际上就是VLC Media Player解码DM500S的TS流,然后VLC Media Player又重新封装打包并且传回网络的过程,这个封装方式可以在转码选项中自行变更。在转码选项中,选择视频编码器、音频编码器的编码格式时,应考虑客户端有无相应的解码包。一般视频编码器可选择常用的WMV1、WMV2格式,音频编码器选用MP3格式。比特率的选择应考虑网络带宽及转发服务器的性能,在条件允许的情况下,选择较大的比特率有利于画质和音质的提高。选择时注意,视频编码器中的“尺寸”是指播放画面的大小;音频编码器中的“频道”为汉化错误,应该为“声道”,通常选择“2”,表示双声道。

以上的设置完成后,按两次“确定”后退出设置界面,此时VLC Media Player播放器底端会有计时器出现,说明软件已开始进行串流发送。至于成功不成功,我们可以通过菜单栏查看-串流及媒体信息-Statistics来查看。

在下面的串流区域内,已有各项发送数据统计数字,表示转发功能正常。注意:在转发时,VLC Media Player软件是没有画面显示和声音输出的,因此其视频和音频区域的“已显示的帧”和“已播放的缓冲器”的统计数字均为“0”。

客户端播放

由于转发服务端采用MMSH协议输出,因此只要打开Windows Media Player播放软件,通过文件-打开URL,输入mms://192.168.1.2:1234或http://192.168.1.2:1234,播放软件经过片刻的连接和缓冲后,就可观看节目了,界面的最下方为播放速率。注意:如果转发服务端采用HTTP协议输出,则客户端只能输入http://192.168.1.2:1234地址。

其他说明的部分

用户需确保播放器已经具备了最新的解码包或版本;

当服务端(DM500S)或转发服务端(台式机)换机时,客户端(笔记本电脑)软件需要重新启动播放功能。


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/279409.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-21
下一篇2023-04-21

发表评论

登录后才能评论

评论列表(0条)

    保存