MediaMTX流媒体服务器(萤石云视频流转码)
1.登录萤石云摄像头后台,使用萤石云app,后台配置工具,直接将编码由H.265改为H.264;
2.使用mediaMTX结合FFMPEG进行视频流编码转换。
第一种情况,适用于仅单一应用引用摄像头视频流;
第二种情况,适用于多个应用引用视频流,但是其中一个应用需要使用H.264编码,而不能变更原始视频流编码。
本文讲解第二种方案。
一、执行步骤
获取摄像头 RTSP 地址
安装并配置 MediaMTX
编写转码配置文件(FFmpeg 转 H.264)
启动 MediaMTX 并验证流
客户端访问转码后的流
获取萤石云摄像头 RTSP 地址
萤石云 RTSP 地址格式(需替换为实际信息):
rtsp://admin:[验证码]@[摄像头IP]:554/h265/ch1/main/av_stream # H.265 主码流
验证码:摄像头标签上的 6 位大写字母(如 ABCDEF)。
IP 地址:摄像头在内网的 IP(如 192.168.1.100)。
安装 MediaMTX
Windows:mediaMTX .exe 文件直接运行。
配置转码规则(关键步骤)
paths: cam1_h264: # 第一个摄像头转码路径 source: rtsp://admin:ABCDEF@192.168.1.100/h265/ch1/main/av_stream sourceOnDemand: yes sourceAnyPort: yes runOnInit: ffmpeg -i rtsp://admin:ABCDEF@192.168.1.100/h265/ch1/main/av_stream -c:v libx264 -preset ultrafast -tune zerolatency -f rtsp rtsp://localhost:8554/cam1_h264 runOnInitRestart: yes
cam2_h264: # 第二个摄像头转码路径 source: rtsp://admin:GHIJKL@192.168.1.101/h265/ch1/main/av_stream runOnInit: ffmpeg -i rtsp://admin:GHIJKL@192.168.1.101/h265/ch1/main/av_stream -c:v libx264 -preset ultrafast -tune zerolatency -f rtsp rtsp://localhost:8554/cam2_h264 runOnInitRestart: yes
启动 MediaMTX
./mediamtx mediamtx.yml # 指定配置文件
客户端访问转码后的流
rtsp://[服务器IP]:8554/cam1_h264 # 摄像头1转码后
rtsp://[服务器IP]:8554/cam2_h264 # 摄像头2转码后
流程示意图

二、后续步骤
1.将其视频地址 填入视屏app或者控制后端配置界面;
2.通过验证后,即可访问。
三、小结
OK,到这一步视频流已经转换完成,可进行引用,如果需要优化视频效果,还需进一步进行优化。
作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~
