ZLMediaKit转码rtsp

把摄像机的rtsp流转码播放

1. 启动ZLMediaKit

2. 执行addStreamProxy如下,stream是流ID,不要重复,可为字母数字等,

 3.  rtsp://10.136.238.143/live/123 这个地址可播放,如果stream变化则同步修改,vlc播放稳定

4. rtmp://10.136.238.143/live/123 这个地址可播放,vlc过一会掉线停止了

5. http://10.136.238.143/live/123.flv 这个地址可播放,vlc过一会掉线停止了

6. 网页播放用http://10.136.238.143/live/123.flv(开始时播放一会就停止了,多点几次播放按钮后,很长时间播放正常)

<script src="https://cdn.bootcss.com/flv.js/1.5.0/flv.min.js"></script>
<video id="videoElement"></video>
<button class="btn">播放</button>
<script>
if (flvjs.isSupported()) {
var videoElement = document.getElementById('videoElement');
var flvPlayer = flvjs.createPlayer({
type: 'flv',
url: 'http://10.136.238.143/live/123.flv'
});
flvPlayer.attachMediaElement(videoElement);
flvPlayer.load();
document.querySelector('.btn').addEventListener('click', () => {
flvPlayer.play();
})
}
</script>

 7. 上面add函数增加一个参数:enable_hls = 1后,可以通过http://10.136.238.143/live/123a/hls.m3u8 进行播放

8. 流不需播放时可以关闭,调用close_streams函数,其中force是否强制关闭,即使有用户在观看也关闭

 

9. 可以通过api查询有多少流

 

 

ZLMediaKit问题记录_zlmediakit rtp推流器断开-CSDN博客

ZLMediaKit - 钟齐峰 - 博客园 (cnblogs.com)  对接28181

 

五、推流和播放
OBS推流选择正确的端口和地址即可。 推送地址示例: rtmp://127.0.0.1/live/0

ffmpeg 推流命令

./ffmpeg -re -i ./doc/ljg.mp4 -vcodec copy -acodec copy -f flv -y rtmp://localhost/live/0
播放地址:

(rtsp默认554端口,http默认80,https默认443,如果配置文件中不是像这样配置,需要在下面的地址域名后面添加端口号。)

rtsp://somedomain.com/live/0
rtsps://somedomain.com/live/0
rtmp://somedomain.com/live/0
rtmps://somedomain.com/live/0
http://somedomain.com/live/0/hls.m3u8
https://somedomain.com/live/0/hls.m3u8
更多URL信息请参考播放url规则 · ZLMediaKit/ZLMediaKit Wiki · GitHub

六、MediaServer作为点播服务器
MediaServer可以将mp4文件转化为媒体流进行分发(目前只支持mp4文件)。

具体做法是:将test.mp4放到 ./www/record/目录下后,用以下地址播放

rtmp://127.0.0.1/record/test.mp4

rtsp://127.0.0.1/record/test.mp4
————————————————

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

原文链接:https://blog.csdn.net/v6543210/article/details/106154298

 

推流:

# h264编码
ffmpeg -re -i /home/debian/box.mp4 -vcodec h264 -acodec aac -f rtsp -rtsp_transport tcp rtsp://127.0.0.1/live/test123
# h265编码
ffmpeg -re -i /home/debian/box.mp4 -vcodec h265 -acodec aac -f rtsp -rtsp_transport tcp rtsp://127.0.0.1/live/test123

 可以看到几个媒体注册的消息,同时支持 rtsp、rtmp、hls等协议,现在可以另一台机器上开个播放器播放了,像vlc、ffplay 都可以,播放的url是:

rtsp://192.168.1.115/live/test123
rtmp://192.168.1.115/live/test123
http://192.168.1.115/live/test123/hls.m3u8
http://192.168.1.115:9080/live/test123.flv


 

posted @ 2024-08-30 15:21  81  阅读(311)  评论(0编辑  收藏  举报