3

我想以编程方式检查 MP4 文件是否可播放。我很感兴趣以编程方式解决这个问题。

手动,我可以轻松验证损坏的 MP4,但我不会为此观看 2-3 小时的电影,而且我的驱动器中有 500 多个视频。:/

什么是我的损坏文件?

好吧,当我播放 MP4 时,我会遇到一些小故障,有时会在播放时出现错误,例如“无法播放此视频”。有时视频播放没有任何错误,但我什么也看不到或听不到任何东西。这有点随机腐败。

我敢肯定,编写视频播放器的人一定遇到过/处理过此类问题。

如何以编程方式找到此类文件?

4

2 回答 2

3

除非您完全解码文件,否则无法找出答案。您可以解码但不显示。所以使用 ffmpeg 之类的东西来解码成 /dev/null。如果没有错误消息并且它没有在中间中止,那么一切都很好。如果你知道你在某种文件中有损坏。

通常,如果它们是可恢复的错误,ffmpeg 将继续。因此,您可以根据错误消息的数量和持续到最后的能力来了解错误的数量或严重性。

于 2013-05-11T19:50:34.693 回答
1

您可以开始查找 mp4 解析器库并使用它,看看它是否失败。可能有那些只是阅读 moov 标题的人。

于 2014-01-24T18:27:01.740 回答