本文地址:https://blog.youkuaiyun.com/MagicFMan/article/details/127825558,严禁转载,后果自负
背景
当前spice判断一个连续图片是不是视频数据的方法:
连续帧满足:
(1) 图片width、height都相等;
(2) 图片绘制的目标区域都相同。
问题
(1) 当播放器在播放视频时,移动、窗口尺寸微调都会导致:退出流->检测流->进流;
(2) 遇到过chrome网页播放视频的一个场景,视频在播放时,区域位置会不断发生几个像素偏移,造成chrome视频频繁退流、进流。
(3) 窗口播放时,在进流之前,不断移动窗口,是无法检测进入到局部流的。 这些场景都会造成流的频繁退出,同时在检测进流的过程中,大量图片采用普通压缩方式,造成带宽峰值升高。
分析
进流的目的:采用h264压缩,降低带宽。采用h264压缩的条件:连续图片需要有固定的width和height。
也就是说我们在检测的时候可以去掉目标区域相同这一限制。
当前去掉目标区域限制的影响:桌面上同时播放两个大小相同的流就会进入同一个流,造成关键帧增多,影响带宽。
问题就简化为:当一条指令下发时,如果当前有个流的图片大小和该指令相同,但是区域不相同,如何判断指令是不是属于这个流。即:该指令是由流移动、或窗口大小发生变化而来,还是一个新的流。


本文探讨了在视频流检测中,如何应对窗口移动、尺寸变化和不同流的混合导致的频繁流切换问题。提出移除目标区域一致性的限制,并提出区分窗口移动与新流的策略,以及Win7和Win10环境下处理指令的不同方式。讨论了客户端修改的需求,以及如何通过特定指令判断是否属于现有流而非新创建的流。
最低0.47元/天 解锁文章
2617

被折叠的 条评论
为什么被折叠?



