音视频开发:码率、延时、花屏、卡顿

简介:

1. 视频码率一般设多大?


对于1080P的视频而言,蓝光视频的码率是20Mb/s,一般下载的视频码率大都是10Mb/s,一些IPCamera/无人机的码率是2~8Mb/s,而很多视频网站的码率甚至低于5M/s。


同等分辨率的情况下,码率越大,清晰度越大,但同时对网络带宽的占用也越大,具体码率该设置为多少,需要看应用的具体场景了。


2. 播放中出现“跳跃”和“花屏”现象?


“跳跃”和“花屏”现象绝大多数原因是网络传输过程中由于信号不好导致丢失了“关键帧”/“参考帧” 引起的,下面来进一步解释。


视频在网上传播之前是需要压缩的,而简单来解释视频压缩的核心思想就是:每隔10~50帧取视频中的一帧图像作为“关键帧”,而随后的几帧图像由于时间/空间的冗余和相关性,我们只需记录其与关键帧的“差异”信息即可,这样视频文件就可以不用把每一帧完整的图像数据全部保存下来,从而起到了节省空间的效果。


由此可见,如果丢失掉了“关键帧”,随后的几帧图像自然就无法正常地解码了,因此产生了“花屏”现象。


从技术的角度,怎么解决“花屏”现象呢?——当我们在视频传输过程中,通过帧序号发现丢帧后,可以跳过随后的非“关键帧”,直到遇到下一个关键帧再送入解码。这样的确可以解决“花屏”现象,但是由于跳跃了很多帧,因此会出现视频图像的不连续情况(即“跳跃”现象)。


3. 播放过程中出现“卡顿”现象?


由于网络是很不稳定的,因此,音视频数据的传输也是时快时慢的,在播放网络视频流的过程中,一定要根据时间戳来决定何时解码何时显示,而不是来一帧就播放一帧,另外,添加一定数量的“帧缓冲区”可以有效地降低由于网络抖动带来的“卡顿”现象。


4. 音视频实时传输的延时主要来自哪里 ?


(1) 编码器/解码器一般需要缓冲2~4帧

(2) 编码/解码的耗时

(3) 业务代码中的帧缓冲区

(4) 网络传输延时

(5) 代码中的数据拷贝


一般情况下,帧率为30f/s的视频,每缓冲n帧,就会增加1000/30*n毫秒的延时。因此,要想减少延时,则必须通过分析和测试找到上述每一部分的延时,尽量减少数据的拷贝和缓冲。


5. 边下边播的原理 ?


边下边播与播放本地文件其实差不多,只不过是文件数据不在本地,在播放器播放到指定位置之前,后台线程把需要的数据提前下载下来而已。



本文转自 Jhuster 51CTO博客,原文链接:http://blog.51cto.com/ticktick/1722446,如需转载请自行联系原作者

相关文章
|
Web App开发 编解码 前端开发
VUE网页实时播放海康、大华摄像头RTSP视频流完全方案,300毫秒延迟,支持H.265、可多路同时播放
在遍地都是摄像头的今天,往往需要在各种信息化、数字化、可视化B/S系统中集成实时视频流播放等功能,海康、大华、华为等厂家摄像头或录像机等设备一般也都遵循监控行业标准,支持国际标准的主流传输协议RTSP输出,而Chrome、Firefox、Edge等新一代浏览器从2015年开始取消了NPAPI插件技术支持导致RTSP流无法直接原生播放了
2519 0
|
5天前
|
存储 编解码 API
【视频花屏问题】解码天书:深入理解视频流花屏现象及其解决方案
【视频花屏问题】解码天书:深入理解视频流花屏现象及其解决方案
113 5
|
5天前
文字转语音后的音频结束以后,再播放一段时间的背景音乐。什么方案能实现
【2月更文挑战第13天】文字转语音后的音频结束以后,再播放一段时间的背景音乐。什么方案能实现
18 2
|
5天前
|
编解码
音视频录制播放原理
音视频录制播放原理
65 1
|
12月前
|
XML 存储 编解码
浅浅地优化下视频流播放体验
浅浅地优化下视频流播放体验
419 0
|
8月前
|
编解码 数据处理 vr&ar
VR头显Unity下如何实现毫秒级延迟的RTMP或RTSP播放?
VR头显Unity下如何实现毫秒级延迟的RTMP或RTSP播放?
183 1
|
10月前
|
编解码 C++
基于Live555实现RtspServer及高清高分辨率和高码率视频传输优化
基于Live555实现RtspServer及高清高分辨率和高码率视频传输优化
393 0
|
12月前
|
缓存 Java 索引
浅浅地优化下视频流播放体验(下)
浅浅地优化下视频流播放体验
262 0
|
Web App开发 缓存 异构计算
猿大师播放器在Chrome网页播放多路H.265海康威视RTSP视频流页面卡顿CPU占用高怎么办?
试用猿大师播放器播放一路视频效果很不错,延迟可以控制在200毫秒左右,但是如果播放多路高清视频,CPU占用就会比较高,并且网页也会卡顿,该如何解决呢?
464 0
猿大师播放器在Chrome网页播放多路H.265海康威视RTSP视频流页面卡顿CPU占用高怎么办?