js检测网页视频是否有流的两种方法
2019年10月12日
没有评论
当前web页面一般通过video标签来播放视频(点播或直播),我们在做音视频的自动化测试时,需要通过程序自动检测是否有视频流。
在具体的实践中,有两种方法可以实现视频流的检测:
- video标签的属性
var video = document.getElementsByTagName('video'); var isPalying = !(video.paused || video.ended || video.seeking || video.readyState < video.HAVE_FUTURE_DATA);
- 比较不同时刻的视频图像
- 在页面上构造一个canvas,在其上绘制当前视频的图像
- 通过getImageData获取图像的RGBA数据,简单计算(如求和)得到一个数值
- 隔一段时间(如1秒)再依次获取若干图像的计算值
- 通过比较这几个图像计算值是否相等,可以判断这段时间内是否有活动的视频流
- 可综合上述两种方法进行视频流的检测
方法2详细细节可加QQ群【KITE-WebRTC自动化测试】讨论。