解决DVD无损提取MPG文件中遇到的文件损坏问题
最近转转上有人卖《亮剑》的正版盘,原价二百多的,五十包邮,得到10张D9,卖家甚至连包装塑料都没拆:lol到手之后,按惯例用DVD Decrypter抓碟保存。
由于碟片菜单开头太罗嗦,要一分多钟;菜单也制作得一般般,虽然有一点动画但是看看就烦了;而且每张D9只有3集,每集正好2GiB,不如分15张D5更经济。所以我准备将DVD的视频无损提取成MPG格式,一集一个文件,方便观看和再次压制。
无损制作MPG格式的方法有很多,可参阅:批量无损分割提取DVD章节/曲目为分集MPG/VOB文件并保存到硬盘的方法总结【单集提取】。然而这些方法可能不满足我的需求,比如说DVD Decrypter只能从DVD光驱中抓取,还要单独为此制作ISO文件,太麻烦;小日本则会把超过4GiB的文件分割成多个dvddata文件。此外,每张D9的3集,都在同一个【标题】里,而且1集有3个【章节】,所以那些小工具分出来的也比较乱。
思来想去,决定用copy /b拼接之后,用SolveigMM Video Splitter手动分成3段保存。
注意:如果你没有经验,不要使用copy /b等方法甚至是“WinRAR合并法”拼接媒体文件,ts文件除外。这样拼接之后,MPEG的文件头仍然只是第一个文件的,有些软件不能正确地识别合并后的所有内容,可能会导致一些问题。
以这个D9为例,3集电视剧一共是7个VOB文件,每集40多分钟,整个【标题】一共是两个小时,用K-lite附带的MPC-HC软件播放copy /b之后得到的大vob文件,进度条显示只有50分钟,也就是一集多一点的样子。而PowerDVD则会正确地识别拼接后的内容。这当然不是说MPC-HC不好,而是这个粗暴合并后的MPG文件并没有提供正确的文件头,所以那些不带“纠错”的播放软件无法播放,也是情理之中。
SolveigMM Video Splitter并不是太关心文件头,它会亲自统计MPG文件的信息,并对其重新索引。
从这里我们也可以看出,SolveigMM Video Splitter除了可以用来无损剪切或者合并媒体文件之外,还可以用来识别损坏的媒体文件,并重新输出成合格的媒体文件。
本来事情到这里就结束了,然而在最后一碟上出了小插曲。最后一碟的倒数第2集,SolveigMM Video Splitter导出了空的文件。经过仔细检查,发现是该碟的VTS_01_3.VOB文件有一些瑕疵,表现为用MPC-HC播放时无法正常拖动,PowerDVD则正常。真不愧是大名鼎鼎的中凯正版啊,这10张碟卷标形式不统一也就罢了,第一碟开头的片头曲最后几秒有一个没做好的淡入淡出过渡也就罢了,两集之间可能会出现1帧的片尾曲画面也就罢了,这个VOB文件居然还有瑕疵!不能忍!
推测是文件头问题,所以用小日本的剥离工具将其拆为m2v+ac3,播放之,这次是能播放了,但是只要一拖动进度条就会音画不同步,不拖条直接播放没事。看来除了文件头外,MPG的其他数据也是有问题的。
最后的解决办法是,再次请出SolveigMM Video Splitter进行处理。有人可能会问了,这个软件刚才不是生成了空文件吗?没错,但那是在我指定了分割点的情况下,这样子SolveigMM Video Splitter软件肯定会借助MPG内的信息进行快速定位,然后进行无损剪切。但是这个MPG文件现在坏了,不能定位了,只能从头播放到尾。这意思也就很明白了,就是把copy /b之后的VOB文件导入SolveigMM Video Splitter,不切割,原样保存!这样SolveigMM Video Splitter就会从头到尾重新组织一遍视频,把原本有瑕疵的MPG文件修复好。
修复后的VOB文件可以用MPC-HC播放了。把修复后的VOB文件再次导入SolveigMM Video Splitter进行剪切,这次终于成功输出了想要的片段。
好了,做个总结,也就是两点:
1. 新手一定不要使用粗暴拼接的方式把VOB文件合并,不要用copy /b甚至“WinRAR合并法”。
2. SolveigMM Video Splitter软件不仅仅可以用来无损剪拼,还能用来修复损坏的视频文件。
下图的文件名就是这10张光盘的卷标了,逼死强迫症啊!
分割后的文件倒是特别整齐,大都是差几MiB就2GiB了。这样整齐的剧集,不做双集的D5,偏偏做了个成本更高的三集的D9!想不明白。
话说这电视剧清晰度确实一般,就算这是D9的收藏版也一样,字幕也是硬的,大约是拍摄和剪辑时的资金限制吧。
:(感谢楼主分享! 本帖最后由 南谷夏野 于 2018-5-5 14:49 编辑
经验很宝贵,对于新手来说这样的详细步骤显得尤为重要! 南谷夏野 发表于 2018-5-5 14:47
经验很宝贵,对于新手来说这样的详细步骤显得尤为重要!
其实一点也不详细,比如说copy /b命令怎么用我省略了 感谢楼主分享好资源
页:
[1]