RTSP 推流和收流
大约 2 分钟
RTSP 推流和收流
RTSP 全称实时流协议(Real Time Streaming Protocol),它是一个网络控制协议,设计用于娱乐、会议系统中控制流媒体服务器。在实时目标识别的研发过程中,我们需要搭建一个 RTSP 推流服务器,用来反复测试识别某一段视频文件。
工具
作者选用的是 ffmpeg+rtsp-simple-server+vlc。vlc 是用来接收实时视频,也叫直播流视频。
- 百度网盘
下载链接: https://pan.baidu.com/s/1WOWxei_b5zNvVcMHfe_tbw
提取码: 3efc
我在网盘中放置了两个 RTSP 服务器启动脚本,因为我需要同时识别两个视频,你如果只需要一个,则下载一个 RTSP 启动脚本即可。
使用方法
- 启动 RTSP 服务器
以 1推流服务端.bat
为例,在命令行中直接执行即可。启动成功后,8556 端口用于接收实时视频。
- 修改脚本文件中的路径
- rtsp-simple-server-8556.yml 配置文件中修改端口

- 启动推流
启动推流需要用到 ffmpeg,具体的 ffmpeg 命令在网络上有很多,这里就不叙述了,以下是我用的脚本。
# -stream_loop 循环推流
# -i 推流文件
# rtsp RTSP服务器地址
D:\tools\ffmpeg-n4.4-18-gc813f5e343-win64-gpl-4.4\bin\ffmpeg.exe -re -stream_loop -1 -i D:\tools\ffmpeg-n4.4-18-gc813f5e343-win64-gpl-4.4\bin\video2\1-token1-0.mp4 -c copy -f rtsp rtsp://192.168.1.16:8556/mystream
到这里,直播视频就已经完成了。
- 启动收流
这是用于测试推流是否正常。
D:\tools\ffmpeg-n4.4-18-gc813f5e343-win64-gpl-4.4\bin\ffplay.exe -protocol_whitelist "file,udp,rtp,tcp,rtsp" -i rtsp://localhost:8556/mystream
- 使用 vlc
跟第三步同样的作用,也是测试推流是否正常。没啥难度,不讲了。