音视频系列4:rtsp播放

1. rtsp vs rtmp

现代浏览器不支持rtsp、flash也不支持rtsp,目前的CDN也都是基于RTMP的,开发个应用必须要转码;其次rtsp流的UDP包丢失概率很大(拉流下来经常会有损坏),而rtmp是基于tcp的可靠传输层协议,效率高速度快还稳定。
所以吧,自己用的话,摄像头还是选rtmp流的,省的折腾。

2. rtsp妥协方案

(1)转RTMP:ffmpeg + nginx(带rtmp插件)。测试延时普遍在1-3秒。
(2)转HLS:ffmpeg + nginx,服务器软件将接收到的流每缓存一定时间后包装为一个新的TS文件,然后更新m3u8文件。m3u8文件中只保留最新的几个片段的索引,以保证观众任何时候连接进来都会看到较新的内容,实现近似直播的效果。延迟比rtmp的方案要久。
(3)转webRTC:参考https://github.com/deepch/RTSPtoWebRTC,很简单。
(4)插件方案:可以用vlc插件和quicktime插件,不过用户体验不佳,不考虑了。
(5)使用nvr:可以使用摄像头服务商提供的nvr,或者自己使用easyNVR之类的搭建一个nvr服务器,然后直接调用接口。
(6)使用websocket协议:通过将rtp负载的数据包解复用后打包成切片文件发送与http协议方式类似主要在传输协议上不同与http方式在传输上占有一定优势。参考https://github.com/kekeqy/ke-rtsp,用起来还不错。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值