首页 > 解决方案 > 不断调整 .webm 文件的大小

问题描述

我一直在弄乱 webm 文件头(弄乱文件长度等的标头数据),在这个过程中,我偶然发现了一个行为怪异的 webm。我在 webmshare 上重新上传了它。它不断调整自己的大小,这使得关闭/暂停它变得非常困难。使用 vlc 媒体播放器和 mpv 播放器可以观察到相同的行为。它仍然在不和谐中这样做,但播放器本身不会重新缩放,只是图像会。

经过一番挖掘,我找到了 .webm 的明显来源,这是一个由创建者youtube 链接提供的 youtube 视频。

这引起了我的怀疑,并解释了原始 webm 相对较大的文件大小:

显然,在 webm 的每一帧之间都给出了更改 webm 大小/纵横比的命令。原始创建者似乎以编程方式在帧之间添加了这个。

现在我的问题:

这是怎么发生的?正在添加哪些信息来更改播放时的纵横比?它在哪里添加以及如何添加?它是十六进制值编辑还是其他?

非常感谢任何关于在哪里查看或解释的提示!

标签: videovlcwebm

解决方案


我停止研究这个问题,但最近(完全是偶然的)偶然发现了这个解决方案,它比人们想象的更无聊。这与文件头或任何东西无关,只是简单的旧编辑:

  • 首先,视频被分成几部分。这些部分中的每一个都是以不同的纵横比生成的。(例如,这可以使用 ffmpeg 来完成)。
  • 然后将这些部分再次连接在一起以形成单个视频文件,第一部分的纵横比为 1:1,以使文件在预览中看起来正常。(同样,ffmpeg 有一个 concat 函数)
  • 然后将原始文件的音频(在将视频分割并再次连接的过程中丢失)复制到这个新文件中。

所以它“只是”一堆具有不同纵横比的视频,拼接在一起。


推荐阅读