在Windows中,vlc插件上的视频流有问题。我在嵌入标签中添加了windowless="true“属性,这样我就可以在vlc插件上显示透明的DIV,以便在视频上绘图。在添加此标签之后,停止视频,不接收视频帧。但是当我点击视频或在视频上画一些东西时,视频帧会刷新一段时间。即使当我删除windowless=“真”属性视频时也是有效的。在windows中只使用windowless="true“观察到问题。
发布于 2015-09-16 08:35:16
我也有同样的行为。Windows 10,Safari 5.1.7
到目前为止,我找到的唯一解决方案是强制浏览器更新播放器的框架。我是通过快速添加和删除一个“玻璃”div来实现的:这个区域占据了整个浏览器的屏幕,并且有一个不透明的背景填充颜色。因为它是透明的,所以屏幕上没有任何可见的更改,但是Safari总是重新绘制重叠的区域,即使它们是由透明窗格重叠的。以下是我所做的:
function play() {
// ...create player, set properties, etc.
// assuming player taking whole browser's screen.
// It's a glass pane - it should cover whole player's output surface.
var glass = $('<div>');
$('body').append(glass);
// Here we start updating...
setInterval(function() {
$('body').toggleClass('glass');
}, 20); // <== 1000ms / 30fps = 33ms, put 20ms just in case.
}.glass {
position: absolute;
width: 100%;
height: 100%;
z-index: 10000;
background-color: rgba(40,1,1,0);
}
当然,您需要调整z-index,使什么玻璃是重叠播放器表面,但不阻塞您的自定义控件。
是的,这是一个丑陋的黑客,但它作为一个短期的解决方案。
https://stackoverflow.com/questions/32449601
复制相似问题