魔扣论坛

魔扣源码论坛业务
查看: 37|回复: 2

直播软件开发过程中,如何选择流媒体协议?

[复制链接]
  • TA的每日心情

    2019-9-4 15:26
  • 签到天数: 7 天

    [LV.3]偶尔逛逛

    6

    主题

    6

    帖子

    34

    积分

    魔扣新手

    Rank: 1

    魔扣币
    85
    贡献
    26
    威望
    0
    发表于 2019-8-21 14:49:51 | 显示全部楼层 |阅读模式
    魔扣币兑换比例:【 50以下 : ¥1 = 10 魔扣币 】丨【 50 - 100 :¥1 = 20 魔扣币】丨【 100以上:¥1 = 30 魔扣币 】
    淘宝、天猫优惠券

    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有帐号?立即注册

    x
    在直播软件开发过程中,我们可能会遇到一些困惑。像是对于流媒体协议的选择,如HTTP-FLVWebRTC,RTMP,HLS及其它私有协议等,到底哪个比较合适?哪种协议可以用在PC平台上?哪种协议在移动设备上效果比较好?接下来小编就先从各项协议的优缺点比较说起。
    一、 常见的几种流媒体协议的优缺点:
    RTMP:Adobe 公司为Flash/AIR与服务器之间传输音视频数据而开发的私有协议,也是目前最常用的流媒体传输协议。
    优点:基于TCP长连接,不需要多次建连,延时低,通常只有1~3s;技术成熟,配套完善。
    缺点:在PC浏览器中只能通过Flash使用,且无法在移动浏览器使用;鉴于Flash即将退出舞台,所以在网页播放端基本不会以RTMP做拉流。
    01.jpg

    HLS:苹果公司提出的基于HTTP的流媒体网络传输协议。其工作原理是切片式传输,把直播流切成无数片,用户在观看视频时,每次客户端可以只下载一部分。
    优点:基于HTTP协议,所以接入CDN较为容易,很少被防火墙拦下,且自带多码率自适应;作为苹果提出的协议,在macOS/iOS下有极大优势,Android中也提供了对应的支持;可以说此项协议用在移动设备上是再合适不过了。
    缺点:延时较大,通常不低于10s 。大量的TS片文件,会造成服务器存储和请求的压力。
    HTTP-FLV:把音视频数据封装成FLV,然后通过HTTP连接传输,与RTMP相比只是传输协议变了。对于网页播放端,本来还是需要Flash才能播放,但「flv.js」的出现又弥补了这个缺陷。
    优点:低延时,整体效果与RTMP非常接近;相较于RTMP协议,能有效避免防火墙和代理的影响。
    缺点:它的传输特性会让流媒体资源缓存在本地客户端,也就是说保密性不怎么样;直到目前仍然不兼容iOS的浏览器。
    WebRTC:基于Google开源技术,在Web端上实现流媒体的协议。
    优点:RTMP和HLS都是掌握在大企业手中的协议,而WebRTC已被纳入W3C标准;无需安装插件,支持的浏览器越来越多。
    缺点:厂商对浏览器或系统的定制可能会导致可用性问题,且缺乏服务器端设计和部署方案;传输质量难以保证,优化手段有限;在安卓设备上的兼容性不好;另外,此项协议主要面向Web端,对原生开发支持不足。
    02.jpg
    二、在直播软件开发中,在PC端用RTMP、在移动端用HLS,最稳妥。
    为什么这样说呢?综合以上的优缺点比较,首先从各自的平台适配性上,且实现效果差不多的情况下,RTMP、HLS要比HTTP-FLV和WebRTC更优秀。
    其次从市场环境上来说,经过了很多年的发展和磨合,很多的CDN大厂已经非常完美的支持RTMP和HLS了,这个稳定的过程都是多少运维人员熬出来的,CDN不会对稳定盈利的系统轻易做出变化。同样,越来越多的公司来用RTMP和HLS,那么就造成CDN与RTMP、CDN与HLS之间的优化和兼容更强了。这是一个循环过程,一般CDN公司不会轻易去打破。另外补充一点,之前文中没有提到RTSP协议,此协议和RTMP效果差不多,在技术上只是区别于传输数据上占用多少通道、传输格式流不太一样而已,RTSP其实也可以用于直播。但依然是因为市场环境,RTSP目前主要应用在安防监控上,和RTMP一样,早已形成了自己的盈利链。

    以上就是在直播软件开发过程中,对于流媒体协议选择的讨论结果。关于这个问题,如果大家还有不明白的,可以直接留言或者找专业的开发商进行详细咨询。

    该用户从未签到

    3

    主题

    224

    帖子

    445

    积分

    中级魔扣

    Rank: 3Rank: 3

    魔扣币
    221
    贡献
    221
    威望
    0
    发表于 2019-8-21 14:51:01 | 显示全部楼层
    打酱油的人拉,回复下赚取积分

    该用户从未签到

    2

    主题

    195

    帖子

    388

    积分

    中级魔扣

    Rank: 3Rank: 3

    魔扣币
    193
    贡献
    193
    威望
    0
    发表于 2019-8-26 16:38:08 | 显示全部楼层
    生是魔扣的人,死是魔扣的鬼,我愿为魔扣源码论坛添砖加瓦~
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    • 联系我们
    • 新浪微博 :
    • 在线客服 :魔扣科技 
    • 源码QQ群 :魔扣源码论坛官方总群
    • 联系邮箱 :charlin#morko.net
    • 微信扫一扫
    快速回复 返回顶部 返回列表