Windows 7 Windows Media Player 是否支持可变帧率的 H.264 mp4 文件?

Windows 7 Windows Media Player 是否支持可变帧率的 H.264 mp4 文件?

我认为标题说明了一切。

我有一个 .flv 文件,正在将其转码为 h.264 mp4 文件。源使用可变帧速率。

将文件转码为具有恒定帧速率的 .mp4 文件会生成一个几乎是转码为可变帧速率 .mp4 的相同文件两倍大小的文件,但后者根本无法在 Windows Media Player 中呈现(不幸的是,我依靠此播放器来播放这些文件)。

文件是 1920x1080 yuv420p,我应该使用其他选项(配置文件预设和级别)吗,或者 vfr mp4 文件不可能在 Windows 7 WMP 中正确播放?

答案1

好的,这是我的发现。

Windows 7 上的 Windows Media Player 确实支持可变帧速率。这一切都涉及 H.264 配置文件和级别。下表是我测试的配置文件/级别:

Profile     Level   Works?
High        5.2     No
High        5.0     Yes
Main        4.0     Yes
Baseline    3.0     Yes

查找性能存在一些问题,但这是另一个可以通过强制关键帧来解决的问题(http://paulherron.com/blog/forcing_keyframes_with_ffmpeg)。

希望对你有帮助 :)

PS:使用的ffmpeg命令是:

ffmpeg.exe -i input.flv -preset slow -profile:v high -level 5.0 -acodec copy -vsync 0 -pix_fmt yuv420p -filter:v "crop=1920:1080:0:0" output.mp4

相关内容