我有大量带有AC3轨道的MKV文件,我想重新编码以包含使用脚本的AAC轨道。我目前的方法是提取AC3轨道(mkvextract)并尝试将其重新编码为AAC,然后将其合并回(mkvmerge)。到目前为止,我已经能够编写提取脚本(MKVTools和Powershell帮助那里),但我找不到将AC3转换为AAC的方法。
我尝试使用mp4box创建一个伪造的MP4文件和一个“empty.h264”文件(来自code.google.com)但是当它出现在handbrake_cli时,短视频输入会导致手刹到barf。我尝试了类似的avidemux(2.6.9)(来自CLI与avidemux2和GUI),但同样,非常短的视频轨道导致它无法创建一个合适的新目标。
如果Handbrake对视频采用“直通”模式,我只需使用它并添加从AC3转换为AAC的第二个音轨,但唉手刹不会传递视频。
我错过了什么?这个问题有解决方案吗?
答案 0 :(得分:0)
我应该做10分钟以上的研究而不需要发布......
到目前为止,最好的答案似乎是ffmpeg:
ffmpeg.exe -i foo.AC3 -strict -2 -ac 2 -ab 224k -codec aac foo.AAC
挑战将需要构建我自己的mkvinfo,因为它不会在其当前输出中产生音频比特率,然后允许使用MKVTools捕获并编写脚本。目标是做这样的事情:
Get-ChildItem -Filter“* .AC3”| %{$ f = Get-MkvInfo $ .FullName; $ a = $ f.Tracks [0]; ffmpeg.exe -i $ .FullName -strict -2 -ac $ a.Channels -ab“”+ $ a.BitRate +“k”-codec aac $ _。BaseName +“。aac”}
但还没有。