直播系统开发在技术和搭建层面如何优化

2018-10-10 11:48:01 admin 2

在直播行业如火如荼的今天,直播系统开发成了热门话题,而其中在直播系统开发的技术和直播优化层面也成了行业内关注的焦点。今日小编就对技术层面和直播优化层面的经验分享一下。

11.jpg

1.技术实现层面:

技术相对都比较成熟,设备也都支持硬编码。IOS还提供现成的VideoToolBox框架,可以对摄像头和流媒体数据结构进行处理,但Video ToolBox框架只兼容8.0以上版本,8.0以下就需要用x264的库软编了。

github上有现成的开源实现,推流、美颜、水印、弹幕、点赞动画、滤镜、播放都有。技术其实不是很难,而且现在很多云厂商都提供SDK,七牛云、金山云、乐视云、腾讯云、百度云、斗鱼直播伴侣推流端,功能几乎都是一样的,没啥亮点,不同的是整个直播平台服务差异和接入的简易性。后端现在RTMP/HTTP-FLV清一色,App挂个源站直接接入云厂商或CDN就OK。

11111.jpg

2.直播优化层面

其实最难的难点是提高首播时间、服务质量即Qos(Quality of Service,服务质量),如何在丢包率20%的情况下还能保障稳定、流畅的直播体验,需要考虑以下方案:数据采集→数据编码→数据传输(流媒体服务器) →解码数据→播放显示

1)数据采集:

摄像机及拾音器收集视频及音频数据,此时得到的为原始数据

涉及技术或协议:

摄像机:CCD、CMOS

拾音器:声电转换装置(咪头)、音频放大电路

2)数据编码:

使用相关硬件或软件对音视频原始数据进行编码处理(数字化)及加工(如音视频混合、打包封装等),得到可用的音视频数据

3)数据传输:

将编码完成后的音视频数据进行传输,早期的音视频通过同轴电缆之类的线缆进行传输,IP网络发展后,使用IP网络优传输

涉及技术或协议:

传输协议:RTP与RTCP、RTSP、RTMP、HTTP、HLS(HTTP Live Streaming)等控制信令:SIP和SDP、SNMP等

4)解码数据:

使用相关硬件或软件对接收到的编码后的音视频数据进行解码,得到可以直接显示的图像/声音涉及技术或协议:一般对应的编码器都会带有相应的解码器,也有一些第三方解码插件等

现在小视频的发展确实挺好,不管是现在的抖音还之前的内涵段子还是快手,都有很好的发展和规划,对各个方面的改变和要求都有一定的改变,对现有的各个市场的问题和打算都有不小的改观,最新的市场动态还请关注宸旭科技。