拜伦的博客

Coder Byron

这里有关于iOS,机器学习的笔记心得,欢迎交流


视频秒开优化方案

目录

前置metadata:

需要获取文件的metadata,解析出文件的编码,帧率等信息后才能开始边下边播,所以尽量让metadata或 MOOV box在靠近文件头部的位置,保证播放器尽快播放

选择合适的缓冲策略:

AVPlayer的 automaticallyWaitsToMinimizeStalling属性就是尽量多缓存一段时间,保证播放过程中减少卡顿

使用HTTPDNS加快建连:

获取最优的CDN节点地址,并每隔一段时间获取一次最佳CDN节点,准实时的保证使用最佳节点。

提升CDN命中率:

减少CDN的资源部命中,减少回源,比如URL中减少随机性的值,增加匹配命中概率。

域名解析:

使用HTTPDNS快速获取最佳CDN节点信息。

Socket cache:

TCP的数据收发都是在缓冲区中完成拼装,通过调整缓冲区的大小。设置太小,影响效率,设置太大, 会短时间吃掉带宽(根据带宽探测原理可知),通过ffmpeg提供的api可修改。

探测buffer:

一开始需要先读一段数据,再对数据进行探测,得到封装格式、分辨率等信息。这个buffer可以设置。

格式探测:

播放端开始时会探测数据格式,根据自己支持的格式探测出一个分数,得到相应的格式,如果短视频格式确定,就可以减少不必要的探测类型。

播放 buffer:

减少播放的缓冲,一般缓冲buffer会按照帧数设置,但是短视频可以减小这个数字,达到尽快解码播放。

分辨率、视频格式:

一定程度降低分辨率,减小文件大小。使用HEVC格式。

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦