程序的步骤就是mkvextract解出264+aac+srt (其实这里应该还有更万能的方法,用mplayer或者ffmpeg等都可以解,这样就不用局限于mkv封装输入了,当时纯粹只是考虑了halfcd2的转化)
然后mp4box -ttxt "srtpath" (会在srt同名目录产生一个ttxt文件,这里要注意下,如果是自己要加的字幕,必须保证该srt是UTF-8编码,mkv内置字幕的话一般解出来就是UTF-8编码)
[可选步骤]如果要重编码hev2aac到lcaac的这里可以重编码下,不打算重编码到lcaac的可以跳过,不过ip虽然可以播放hev2aac,但是播放起来是单声道的
一次性用片源作为输入的重编码lcaac的方法:dshow2wav.exe "mkvpath" AudiotrackNumber | neroaacenc.exe -lc -q 0.25 -ignorelength -if - -of "lcaacpath"
neroaacenc.exe的具体参数意义,可以自行查阅
比如dshow2wav.exe aaa.mkv 0 | neroaacenc.exe -lc -q 0.25 -ignorelength -if - -of aaa.m4a
音频轨道号的0表示第一条音轨(对应mkv里音频是轨道2)
轨道号可省略,省略的话就是默认第一条音轨
还有就是要使用dshow2wav的话得先装好directshow filter的相应分离器和解码器
再然后mp4box -ipod -fps xx.xxx -add “h264path” -add “aacpath” -add “ttxtpath:lang=zho:font=微软雅黑:size=12" -new ”mp4path“