我有一张 DVD,想将其从 DVD 格式转码为 MP4,这样我就可以在 iPad 上播放它了。通常这很容易,因为我可以使用 Handbrake。但这有一个有趣的转折。
视频播放了大约三十分钟后,DVD 出现了一个小故障。这个故障在物理 DVD 播放器上播放时会导致一些轻微的失真,但软件 DVD 播放器和转码器会发现这个问题并出现问题。这意味着我 13 年前的索尼 DVD 播放器可以播放 DVD,但如果我尝试在 VLC、Windows Media Center 等中播放它,当它遇到故障时,DVD 会冻结。此时 Handbrake 会表现得像正在翻录一样,但会挂在 100% 并创建一个不断增大的文件。
我可以精确地指出故障所在的帧。它大约有 3 帧长,据我所知,它不包含任何 I 帧,只有 P 帧。因此,我想告诉我最终使用的任何转码器对整个 DVD 进行转码,但从帧 52134 跳到 52136。mplayer
如果我告诉它在第 52134 帧处停止,然后重新启动 mplayer 并告诉它从第 52136 帧开始,我可以翻录整个 DVD 映像并播放它。这应该可以让我完成部分工作,因为我可以创建两个转储流,但我不知道如何合并 .vob 文件或将它们编码在一起。