您的位置:首页 > 移动开发

降低延迟,视频直播APP要这样开发

2017-12-12 19:11 591 查看
近几年的视频直播APP市场可以说是格外的火热,可是在这个火热的背后,有一个一直困扰开发者的难题,那就是视频直播软件的延迟现象,如何降低延迟呢?在开发时候要怎么做呢?

1、编码上的优化

在开发视频直播APP的时候,会用到一款叫Codec的编码器,这款编码器主要的功能就是根据特定的音频文件格式或流媒体格式、对数字音频数据实现压缩/解压缩。Codec会采用各种高效算法、尽量用最小的存储容量实现最高级的音质,这样能够极大节省存储数字音乐所需的空间,以及通过网络实时传输数字音频信号所需的网络带宽。

 

在通过Codec的编码器的时候,可以开启Codec上的最低延迟设置,在一定程度上是可以降低视频直播APP的延迟现象。并且在使用视频压缩格式的视频,尽量使用H.264 baseline profile,以及使用变码率编码VBR可以节省一些不必要的网络带宽,降低一定的延迟。





2、推流、播放的优化

大家使用视频直播APP观看直播视频的时候,在大家看不见的情况下已经经过了一个完整的过程:采集、处理、编码、封包、推流、传输、转码、分发、拉流、解码、播放,从推流到播放,再经过中间转发环节,想要用户的体验度好,就必须降低延迟。而要降低延迟,就需要从推流、播放入手。

 

所以在开发音视频直播APP的时候,则会根据客户的需求定制专门的音视频sdk功能。在音视频效率和延迟方面,可根据不同的需求去优化相对应的音视频采集和处理能力,也可以在网络情况不好的情况下,降低码率进行播放,减少延迟。





3、传输协议的优化

手机视频直播APP是通过互联网进行传播的,所以也就会存在传输协议,而在传输的过程中想要降低整体的传输延迟,就需要使用到RTMP而不是基于HTTP的HLS协议进行传输。另外也可以使用定制的UDP协议来替换TCP协议,省去弱网环节下的丢包重传也可以起到降低延迟的作用。





4、网络优化

视频直播APP的延迟,除了技术上的关系,还有很大一部分跟网络有关,不论是推流端到源服务器之间的网速,还是播放端从CDN拉流的速度,很大程度上影响整个视频直播的体验。所以在开发视频直播软件的时候,就需要进行网络传输上的一个优化,选择一个好的直播云服务器也是解决延迟的关键。

上述的四点就是在开发视频直播APP时降低延迟的办法,在降低视频直播软件延迟方面,直播行业的同仁也一直在努力,希望最终将视频延迟降至最低。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐