多语言展示
当前在线:1768今日阅读:126今日分享:42

直播程序开发干货分享(上)

直播市场的火爆席卷了全球,本文就对直播程序开发技术流程做一下分享,帮助大家了解直播程序开发技术是怎样搭建直播平台的。
方法/步骤
1

直播程序开发流程第一步:采集推流:要考虑清楚如何收集和推流,活动直播一般都是购买特定的录制设备,市面上几千到十几万不等,看场景需求和手上的RMB。服务器:规模小可自行购买服务器部署程序搭建,开源的很多nginx-rtmp,crtmpserver, srs等;但规模大就要考虑直播云的解决方案,但是回过来想为啥不一开始就上呢,一般直播云会提供三个东西:RTMP推流域名,RTMP播放域名,HLS播放域名,可以直接使用,并且不用考虑推流、播放的规模问题。页面播放:纯PC端观看,可以直接用rtmp+flash播放方案,支持rtmp的flash播放器这里就不多说了一搜一大堆。 如果考虑移动端也可以浏览就不能使用flash,得考虑HLS+HTML5的方案。

2

第二步:推流:推流中最重要的就是CDN了,CDN主要包含:源站、缓存服务器、智能DNS、客户端等几个主要组成部分。另外,CDN直播中常用的流媒体协议包括RTMP,HLS,HTTP FLV等。RTMP(Real Time Message Protocol/实时信息传输协议)是应用层协议,靠底层传输层协议(通常是TCP)来保证信息传输的可靠性的。在TCP链接建立后,RTMP协议也要客户端和服务器通过“握手”来建立RTMP Connection,然后在Connection上传输控制信息。RTMP协议传输时会对数据格式化,而实际传输的时候为了更好地实现多路复用、分包和信息的公平性,发送端会把Message划分为带有Message ID的Chunk,每个Chunk可能是一个单独的Message,也可能是Message的一部分,在接受端会根据Chunk中包含的data的长度,message id和message的长度把chunk还原成完整的Message,从而实现信息的收发。

3

目前市场上,各个企业都可以采用不同协议,例如云豹直播目前的视频流采用RTMP协议传输,因为根据根据业务需要,可分发对应的RTMP或者HLS协议流。具有低延时,高质量的特点。当然,如果您自己的业务需求量不高或者自身的运维能力足够完备,可以自行搭建RTMP服务,比如RSR,FMS等。如果您的业务需求量大,地域覆盖多,推荐使用视频流CDN服务,通过第三方提供的CDN来分发视频流,可以减少延时,获的更好的直播体验。直播平台搭建完成整体效果图:

4

就各大主流媒体的数据来看,直播市场的火爆依旧会持续到2030年,艾瑞媒体数据更显示直播人群受众正在不断增加,由此看来,直播程序开发技术下的直播市场前景倒是一片可观。

注意事项

整理了一部分内容,另一部分见下篇

推荐信息