【发布时间】:2016-11-21 04:19:47
【问题描述】:
使用一些编解码器和容器,视频可以在中途更改分辨率。这对于 RTC 风格的视频流尤其常见,其中分辨率可以根据可用带宽放大/缩小。在其他情况下,录制设备可能会旋转,视频可能会从纵向翻转到横向,反之亦然。
在网页上播放这些视频(简单的<video> 标签)时,如何检测 JavaScript 何时发生这种大小变化?
我能想到的最好的方法是验证每一帧的视频大小,但是这种方法有相当多的开销。如果有办法在视频更改大小或触发事件时触发回调,那将是最好的。
严重调整大小的示例视频:https://bugzilla.mozilla.org/attachment.cgi?id=8722238
【问题讨论】:
-
onresize或onratechange有什么帮助吗? -
你有一个视频的例子可以用来测试吗? :)
-
@dandavis 是的,这些视频肯定存在。这是一个示例:bugzilla.mozilla.org/attachment.cgi?id=8722238 在 VLC 中播放(不是全屏或最大化,VLC 设置为在视频大小更改时调整大小)并观看 VLC 调整大小。
-
@guest271314 实际视频调整大小,应用程序窗口随之调整大小。
-
我找不到任何证据表明您的示例视频使用 MPC 或
<video>标签改变了分辨率。再说一次,我想相信你,但我从未见过你所说的东西是常见的,甚至是可能的......请记住,视频图像与视频编码是分开的,并且可能会发生内部缩放,但视频播放器不会参与此类事件。
标签: javascript html video html5-video