因为工作需要接触MeGUI,不久发现处理某些视频极其不稳定。经常报System exception/DIB/AVS not open等错误。每次都是重启一下MeGUI又能解决,弄得我非常郁闷。不知道是压片机环境设置问题还是MeGUI中某些地方没有设置好。还有虽然MeGUI的确是个很专业的集成工具,但是在某些地方的操作上我非常不习惯,不能批量添加压片任务。
遇到以上问题,最开始我的解决方案主要是换了新版本的MeGUI(0.3.5.0)。
批量添加任务的问题,通过自己写了一个小工具。更改MeGUI程序目录下的joblists.xml文件,和向jobs目录下添加工作使用的job(序号).xml文件。同时需要通过EditPlus批量更改job(序号).xml的编码为UTF-8。虽然能解决,但是还是很不方便。而且我们批量压制rmvb视频时,每次都会出现很多Error的情况。
后来通过查找网上资料和查看MeGUI显示的一些参数代码,自行封装了一个傻瓜式的软件。
解决了批量添加文件的问题,稳定性目前还在测试中。
处理mp4文件步骤:
第一步、使用neroAACEnc转换音频,格式为m4a。
第一种方法:
代码:
#dshow2wav# #sourcefile# | #neroAacEnc# -ignorelength -q 0.5 -br 32000 -he -if - -of #targetfile#
批处理(实例):
D:/tools/dshow2wav.exe "D:/Wait/30.avs" | D:/tools/nero/neroAacEnc.exe -ignorelength -q 0.5
-br 32000 -he -if - -of D:/Wait/30.m4a
第二种方法:
#BePipe# --script "Import(^#sourcefile#^)" | #neroAacEnc# -ignorelength -q 0.5 -br 32000
-he -if - -of #targetfile# > #logofilename#
第二步、使用x264转换视频,格式为264。
代码:
--bitrate 500 --level 3.1 --ref 4 --mixed-refs --no-fast-pskip --bframes 4 --b-adapt 2 --b-pyramid --weightb
--direct auto --deblock -2:-1 --subme 7 --trellis 2 --partitions p8x8,b8x8,i4x4,i8x8 --8x8dct --me umh --threads 8
--thread-input --progress --no-dct-decimate --no-psnr --no-ssim --output #targetfile# #sourcefile#
批处理(实例):
D:/tools/x264.exe --bitrate 500 --level 3.1 --ref 4 --mixed-refs --no-fast-pskip --bframes 4 --b-adapt 2 --b-pyramid
--weightb --direct auto --deblock -2:-1 --subme 7 --trellis 2 --partitions p8x8,b8x8,i4x4,i8x8 --8x8dct --me umh
--threads 4 --thread-input --progress --no-dct-decimate --no-psnr --no-ssim --output "D:/Wait/30.264"
"D:/Wait/30.avs"
第三步、使用mp4box封装为mp4。
代码:-add #264file# -add #aacfile# -new #targetfile#
批处理(实例):
D:/tools/mp4box/mp4box.exe -add "D:/Wait/30.264" -add "D:/Wait/30.m4a" -fps 23.976 -new "D:/Wait/30.mp4"
最后附上软件界面图