![使用 qaac.exe 重新编码音频](https://linux22.com/image/1459655/%E4%BD%BF%E7%94%A8%20qaac.exe%20%E9%87%8D%E6%96%B0%E7%BC%96%E7%A0%81%E9%9F%B3%E9%A2%91.png)
我正在使用脚本通过 libvo-aac 编码器将音频批量重新编码为 AAC。
@ECHO OFF
FOR %f IN (*.mkv) DO call ffmpeg.exe -i "%f" -c:v copy -c:a libvo_aacenc -b:a 256k "%f"
但是由于我在 Windows 上使用 fdk-aac 构建 ffmpeg 有点麻烦,并且 qaac 被认为是更优秀的编码器,所以我想通过管道传输 ffmpeg 来使用 qaac。
我不太了解 ffmpeg,但我确实在这里发现了一条评论:如何使用 ffmpeg 将 5.1 DTS HD MA 或 Dolby TrueHD 混音为带有 Dolby Pro Logic II 的立体声 AAC?(最后一条评论)
尝试该命令后我收到此错误:
ERROR: CoreAudioToolbox.dll: The specified module could not be found.
但是我确实安装了 quicktime 和 Apple Application Support 以及 ffmpeg 文件夹中的 flac 和 libsnd 库。
我正在使用 Zeranoe Windows x64 静态版本
编辑:我让它与 32 位 qaac 和 flac 库一起工作,但它仍然无法与 64 位版本一起工作。
答案1
通过安装 64 位版本的 iTunes 解决了这个问题(实际上我只是从安装程序中提取了 AppleApplicationSupport64.msi。)由于 quicktime 中没有包含 64 位安装程序,所以我很困惑。
答案2
我注意到您正在输入 MKV?
我在 Windows 中使用 qaac 和 ffmpeg批处理文件将 MKV 中的音频转换为 aac,然后将其复用回 MKV 容器。
@ echo off
for %%a in (*.mkv) do ("ffmpeg" -i "%%~na.mkv" -f wav - | qaac -a 160 - -o "%%~na.m4a" --threading)
for %%a in (*.mkv) do (ffmpeg -i "%%~na.mkv" -i "%%~na.m4a" -c:v copy -c:a copy -map 0:0 -map 1:0 "%%~na_.mkv")
我知道这有点混乱,但对我来说还是有用的。我使用平均比特率为 160 和线程(我也对视频流进行了编码,但这里只是复制)。此外,ffmpeg 和 qaac 都在我的环境变量中,所以我不必在命令行上输入整个 path.exe。