抛开flash,自己开发实现C++ RTMP直播流播放器

本文介绍了作者使用C++开发RTMP直播流播放器的过程,旨在将RTMP协议扩展到C/S场景,摆脱对Flash的依赖。内容包括RTMP数据下载与分解、视频音频解码和渲染,并分享了实际应用效果。
摘要由CSDN通过智能技术生成

众所周知,RTMP是以flash为客户端播放器的直播协议,主要应用在B/S形式的场景中。本人研究并用C++开发实现了RTMP直播流协议的播放器,结合之前做的RTMP直播采集端,可以将RTMP协议完全扩展到C/S形式的应用场景中,这将对之后的通用、全平台的流媒体架构设计和实现,打下坚实的基础。

开发的意义

RTMP直播协议,是Adobe公司推出的以flash播放器为客户端的实时直播流协议,是一种应用非常广泛的通信协议。而flash直播,也是到目前为止,web页面上最成熟的直播技术。不过,因为flash主要是嵌入到web页面中,因此,RTMP直播,通常也就局限在B/S形式的直播应用。

  我之前陆续做了很多与RTMP直播协议相关的项目开发,都是采集发布端的,数据发往FMS等rtmp服务器之后,最终是通过flash来收看的。并不是考虑flash本身好或不好的问题,而是想把这个BS的技术直播协议,不借助Adobe Air平台,扩展到C/S场景中,这样,用户不仅可以在网页上收看RTMP协议的直播流,还可以通过客户端来收看,大大丰富了直播协议的灵活度。另外,实现了这一点,为RTMP直播协议的跨平台,以及跨移动平台(Android, iOS)的应用,也提供了可能。有很好的前景。

  比如,通过实现不同平台上的rtmp播放器,来实现如下架构。

设计和流程

 其实

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值