Skip to content

LV005-流媒体服务器

VLC 的功能很强大, 它不仅仅是一个视频播放器, 也可作为小型的视频服务器, 更可以一边播放一边转码, 把视频流发送到网络上。

一、本地视频文件

1. RTSP 服务器

  • (1)【媒体】→【流】→【文件】→【添加】→【串流】→【流输出面板】→【下一个】
  • (2)还是在【流输出面板】→【新目标】→【RTSP】→【添加】→【路径】→【下一个】→【配置文件】→【下一个】

这里选择 TS 流,它是一个一个的片段,在任意时刻我们可以找到同步头,可以播放出来,这是 TS 流的好处。

  • (3)还是【流输出面板】→【流】

参数说明如下(rtp 是传输协议,rtsp 是控制协议):

md
- vcodec=h264:H264 编码
- vb=800:视频的比特率
- acodec=mpga:音频的编码
- ab=128:音频的比特数
- channels=2:声道数
- samplerate=44100:采样率
- rtsp://:8554/test1:播放路径

然后就能看到进度条在播了,这里这个时间有点短,后面可以把这个下载下来:

md
https://images.videolan.org/images/vlc-player.mp4

需要注意,这里并不是作为播放器,而是作为服务器把视频流发送到网络上,所以这里是看不到画面的。

2. 播放器

然后我们再打开一个VLC,然后【媒体】→【打开网络串流】→【网络】→【网络协议中输入URL】,这里的URL为rtsp://:8554/test1

打开网络串流
左侧为RTSP服务器,右侧为播放器

左边是 VLC 作为流媒体服务器,作为推流,右边是 VLC 播放器打开网络串流,是一个小型的播放器

可以打开多个播放器打开网络串流。

二、采集摄像头数据

电脑要先有一个摄像头,像我的笔记本,就自带了一个。其实这里可以直接打开摄像头捕获摄像头画面的,但是我们这里是搭建流媒体服务器,就用一个 VLC 推流,用另一个拉流。

1. RTSP 服务器

  • (1)【媒体】→【流】→【捕获设备】→【视频名称】→【Integrated Camera】→【串流】→【流输出面板】→【下一个】
  • (2)【流输出面板】→【新目标】→【RTSP】→【添加】→【修改路径】→【点击下一个】→【选择TS流】→【下一个】
  • (3)【流输出面板】→【选择流】

点击完流就可以看到 VLC 的进度条开始动了,这个就表示 RTSP 流媒体服务器搭建好了,现在正在推流。

2. 客户端拉流

再打开一个 VLC media player,选择【媒体】→【打开网络串流】→【网络 URL 修改为:rtsp://: 8554/test1】→【点击播放】:

image-20251202223232240

说明:我是放了个橙子的,看起来颜色不是很对,而且旋转了 180 度,不过下面有个扩展配置,里面可以做旋转还有一些其他效果,反正是测试效果,先这样看。

参考资料:

音视频开发常用工具_mediainfo-CSDN 博客

RTSP 协议抓包及讲解_rtsp 流怎么获取-CSDN 博客