2018-06
9

我的m2ts修复及压制套路

By xrspook @ 8:29:04 归类于: 烂日记

家里的电脑是32位i3加4G内存,单位的电脑是64位i5加8G内存。CPU这种东西,平时你看不出差别有多大,但是压片的时候区别就非常明显。时长差不多的东西,单位的电脑只需要5分钟左右就搞定,但家里的电脑却需要接近50分钟。虽然从压制速度上看来,数据不过是一个是另外一个的两三倍而已。所以,用电单位的电脑压制,压制时长不过是上个厕所而已,但用家里的电脑压制,压制时间则可以完成一篇blog,再睡个小觉。二者最大的区别在于在单位的时候,我只能在某些时间干这种事,但在家里,只要我没有睡着,我都可以一直干。用了电脑这么多年,我觉得最能显示CPU性能的大概对我来说就只有压片了,因为我不玩游戏,尤其是大型游戏,其它电脑程序通常都只会耗费内存,如果硬盘容量不够,电脑也会被拖慢,但很少情况下需要CPU持续飙到100%。

昨晚我终于接受了这么一个事实。下载回来的《古拉姆》的五首歌舞的m2ts文件一律关键帧都有问题,天知道那个好心人用的是什么剪切软件。所以在压制的时候会出现一开头卡死。到现在为止我已经压过三首歌,最夸张的那一首卡了18秒,但即便是不怎么夸张的也要卡不到一秒,或者一秒多一点。第一帧是否关键帧我是通过Aegisub去看的,因为如果遇到关键帧,显示当前帧数和当前帧对应的开始时间的格子会显示绿色,否则是灰色。把下载回来的原盘文件,放到Aegisub里,一律一开始的时候都不是绿色。Aegisub觉得这不妥当,压制软件也觉得这不妥当,但是视频播放软件已经习以为常了。要解决这个问题,昨天我用的是Smart Cutter for DV and DVB剪切软件,剪完以后再放回Aegisub里测试。昨晚我明明可以十点多就睡觉,但却搞到了12点多,因为我一直都没有得到我想要的结果。后来发现,之所以得不到是因为我想太多了。只要把原盘文件放到那个剪切软件里面重新输出,自然就会修复关键帧,再放回Aegisub里,第一帧就是绿色的。即便在Aegisub里播放的时候仍然会有问题。这个是我的最终结论,在这之前我用那个剪切软件剪过不下十个视频,然后再一个一个的放到Aegisub里播放。到底应该从哪一帧下剪刀?我试过把下载回来的m2tv文件放到Aegisub里找到关键帧,记住那个时间,然后在剪切软件里也同样找到那个时间。结果发现,即便这么较劲,剪切出来的的东西放到Aegisub里播放还是神经病。发现剪切软件输出的视频第一帧都是关键帧是我非常偶然的发现。既然保证了那是关键帧,压制的时候能不能通过呢?于是我在AVS脚本里加入了trim剪切代码,试压一开始的几十秒。试验证明保证第一帧是关键帧就可以!我需要做的只是把所有下载回来的m2ts都放到剪切软件里修复关键帧。到现在为止,理论上我觉得这样就能解决一开始的卡帧问题。只要放进去输出就行,根本没必要纠结必须选择从哪一帧开始或结束,全部选上就好。

需要注意的是经过剪切的文件时间总会跟之前不一样,至于相差多少,很难说,所以如果在剪切之前就已经调好时间轴,剪切后就得根据修复后的m2tv把字幕调整一下。之前我的步骤是这样的,首先根据下载回来的原盘文件做精准的时间轴,然后把那个原盘文件拿去修复关键帧,调整时间轴。然后,把时间轴跟视频压到一起。最后用dgavcindex从原盘文件中提取两个音频,它们分别是DTS和AC3。之所以用那个分离,是因为那个索引软件能自动读取出音频的延迟时间。虽然根据修复后的视频我已经调整过一次时间轴,但如果音频的延迟时间超过一百毫秒,出来的东西还是会跟我料想的有一点点区别。所以我的制作步骤就应该调整为首先是根据原盘文件制作精准的时间轴,然后是dgavcindex输出原盘文件的音频文件,接着是用剪切软件修复原盘文件的关键帧。按照修复后的m2ts调整时间轴,调整的时间的时候还得同时考虑音频输出的延迟时间,也就是说,我要预先把那个音频的延迟时间加上去。字幕轴调整的时间包括修复前后的m2ts差异以及音频延迟。接着,我就可以把修复后的蓝光文件以及字幕拿去压制。最后把压制后的视频和原盘文件提取出来的音频封装在一起。严格按照这个流程操作,理论上我只需要压制一次就行了,但这是我做到第三首歌舞的时候才得出的结论。之所以之前没有得出,首先是因为我太着急了,第二是因为当时我有新手的运气,第三次是单位的电脑性能好,压制不怎么耗我时间,我可以不断地失败重来,但是家里不一样。为什么我要从原始的m2ts里提取音频而不是从修复后的m2ts文件里提取音频呢?果然不出我所料,从修复后的m2ts文件里提取音频,延迟的毫秒数就只是个位,完全无需额外调整!!!

在一次又一次挫败中,我逐渐摸索出我自己的套路。

http://www.bilibili.com/video/av24578736/

© 2004 - 2024 我的天 | Theme by xrspook | Power by WordPress