短视频的播放成功率优化

网络重连

网络抖动造成建连失败是影响播放成功率的一种重要原因。通常因为网络原因而引起播放错误时,播放器会上报相应的错误码,这时候我们可以根据这些错误码针对性地对播放器进行刷新,重连来进行网络连接,并设置重试次数限制,通过这样的方式来尝试恢复播放。

网络重连的实现可以是在播放器底层的网络连接相关的模块,也可以是在播放器上层重新刷新整个播放器生命周期来完成。

解码方式切换

对于基于 FFmpeg 实现的播放器,在播放视频时,我们可以选择硬解或者软解的方式来对音视频数据进行解码。有时候如果遇到硬件对视频格式支持的不够完善,可能会出现解码出错,这时候我们可以通过上报上来的错误探测是否是解码出错,然后针对性地选择切换解码方式来尝试恢复播放。要么硬解切换到软解,要么软解切换到硬解。

一般而言,软解的稳定性要好于硬解,毕竟对硬解的支持会因为设备而变。但是,软解对于 CPU、内存的消耗会更大。

视频格式规范

有时候播放错误是因为播放器对视频格式支持的不够完善而造成的。由于生产视频的设备各异,也就造成了视频的格式有着不同的标准。

对于点播视频而言,在允许的情况下,我们应该在服务端来尽量规范视频格式,比如我们可以配合播放器的实现对上传到服务端的视频进行统一格式的重编码,这样可以尽量减少播放器端因为对视频格式支持不够完善而引起播放错误。

工具

下面是一些可以用来分析视频信息的工具:

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 视频 视频实质:纯粹的视频(不包括音频)实质上就是一组帧图片,经过视频编码成为视频(video)文件再把音频(au...
    勇敢的_心_阅读 3,020评论 1 30
  • 1、通过CocoaPods安装项目名称项目信息 AFNetworking网络请求组件 FMDB本地数据库组件 SD...
    阳明AGI阅读 16,008评论 3 119
  • 赤叶红林酒若微 曲向黄昏影迷离 数声闺泣千里外 似君盼郎尽早归
    熊哥故事阅读 331评论 0 5
  • 0 -> 查看数据源 gem sources -l 1 ->删除源sudo gem sources -rhttps...
    小番茄阳阳阅读 451评论 0 0
  • 静静的蛟流河一缕阳光yg 水面波光粼粼,静谧得安然蜿蜒起伏流淌着岁月,默默奔腾归宿汩汩水声穿透青涩我还没有出生你已...
    浅浅是水阅读 426评论 62 65