博客
关于我
用vlc搭建简单流媒体服务器(UDP和TCP方式)
阅读量:491 次
发布时间:2019-03-07

本文共 1378 字,大约阅读时间需要 4 分钟。

简介

VLC不仅是一款优秀的媒体播放器,同样可以用作流媒体服务器。以下将介绍如何利用VLC搭建基于UDP和TCP的流媒体服务器。

基于UDP的流媒体服务器

1. 传统UDP模式

以下是操作流程:

打开VLC的“媒体”菜单,进入“流媒体”选项:

点击“添加”按钮,选择需要流媒体的文件,然后点击“串流”按钮:

在目标设置中选择“UDP (legacy)”,并填写目标IP地址和端口:

在转码选项中选择合适的编码格式:

完成这些设置后,点击“串流”按钮即可实现流媒体。

在客户端,打开“媒体——打开网络串流”,输入“udp://@1234”,点击“播放”开始接收流媒体内容:

除了图形界面操作,还可以用命令行工具进行:

服务端:vlc -vvv sample1.avi --sout udp:172.16.1.100:1234 --ttl 10

客户端:vlc udp://@:1234

2. RTP协议

RTP流媒体也是基于UDP协议,操作方式与传统UDP类似,但目标设置需要选择“RTP / MPEG Transport Stream”:

填写目标IP地址和端口:

点击“串流”按钮即可完成流媒体设置:

客户端打开 VLC,输入RTP地址进行播放:

命令行设置:

服务端:vlc -vvv sample1.avi --sout "#transcode{vcodec=h264,vb=0,scale=0,acodec=mpga,ab=128,channels=2,samplerate=44100}:rtp{dst=172.16.1.100,port=5004,mux=ts,ttl=10}"

客户端:vlc rtp://@:5004

3. RTSP协议

RTSP是一种常见的流媒体控制协议,操作方式类似于RTP:

服务端需要在transcode选项中添加RTSP地址:

客户端可以直接使用rtsp://地址播放内容:

命令行设置:

服务端:vlc -vvv sample1.avi --sout "#transcode{vcodec=h264,vb=0,scale=0,acodec=mpga,ab=128,channels=2,samplerate=44100}:rtp{sdp=rtsp://:8554/test}"

客户端:vlc rtsp://172.16.1.1:8554/test

基于TCP的流媒体服务器

HTTP方式

HTTP流媒体服务器基于TCP协议,操作方式与RTSP类似:

服务端通过VLC的转码功能将流媒体内容转为HTTP格式:

命令行设置:

服务端:vlc -vvv sample1.avi --sout "#transcode{vcodec=h264,vb=0,scale=0,acodec=mpga,ab=128,channels=2,samplerate=44100}:http{mux=ffmpeg{mux=flv},dst=:8080/test}"

客户端:vlc http://172.16.1.1:8080/test

总结

VLC提供了多种流媒体协议的实现,包括UDP、RTP和HTTP。无论是通过图形界面还是命令行工具,都可以轻松搭建流媒体服务器。此外,VLC的灵活性和可定制性使其成为流媒体开发和部署的理想选择。

转载地址:http://zsedz.baihongyu.com/

你可能感兴趣的文章
OSPF不能发现其他区域路由时,该怎么办?
查看>>
OSPF两个版本:OSPFv3与OSPFv2到底有啥区别?
查看>>
SQL Server 存储过程
查看>>
OSPF在大型网络中的应用:高效路由与可扩展性
查看>>
OSPF技术连载13:OSPF Hello 间隔和 Dead 间隔
查看>>
OSPF技术连载17:优化OSPF网络性能利器——被动接口!
查看>>
OSPF技术连载18:OSPF网络类型:非广播、广播、点对多点、点对多点非广播、点对点
查看>>
OSPF技术连载19:深入解析OSPF特殊区域
查看>>
SQL Server 复制 订阅与发布
查看>>
OSPF技术连载20:OSPF 十大LSA类型,太详细了!
查看>>
OSPF技术连载21:OSPF虚链路,现代网络逻辑连接的利器!
查看>>
OSPF技术连载22:OSPF 路径选择 O > O IA > N1 > E1 > N2 > E2
查看>>
OSPRay 开源项目教程
查看>>
Padding
查看>>
paddlehub安装及对口罩检测
查看>>
paddle的两阶段基础算法基础
查看>>
Page Object模式:为什么它是Web自动化测试的必备工具
查看>>
SpringBoot中重写addCorsMapping解决跨域以及提示list them explicitly or consider using “allowedOriginPatterns“ in
查看>>
PageHelper 解析及实现原理
查看>>
pageHelper分页工具的使用
查看>>