AviUtl qaac エラー “出力音声ファイルがみつかりません。” によるエンコード失敗。原因と対策方法について

qaacによるエンコードエラー

AviUtl でH.265 動画変換をした時にqaacのエラーが出ました。(てか、動画変換の最後の最後でエラーが出なくても・・・泣)

以下、原因と対策方法について調べたのでご紹介します!

AviUtl 変換中に出たqaacのエラー

encoded 4976 frames in 121.24s (41.04 fps), 59.89 kb/s, Avg QP:29.68
auo [info]: CPU使用率: Aviutl: 13.84% / x265: 59.20%
auo [info]: Aviutl 平均フレーム取得時間: 4.712 ms
auo [info]: x265エンコード時間 : 0時間 2分 1.5秒
auo [info]: qaac で音声エンコードを行います。 ABR (AAC) ビットレート指定, 128kbps
auo [error]: 出力音声ファイルがみつかりません。qaac での音声のエンコードに失敗しました。
auo [error]: 音声エンコードのコマンドラインは…
auo [error]: “.\exe_files\qaac.exe" -q 2 –abr 128 –ignorelength -o “D:\sample.m4a" “-"
qaac [error]: ERROR: CoreAudioToolbox.dll: 指定されたモジュールが見つかりません。
auo [info]: 総エンコード時間 : 0時間 2分 6.3秒

出力されたエラーメッセージです。。

“qaac.exe" のパスは通っているのに、"CoreAudioToolbox.dll" が足りないと・・・

CoreAudioToolbox.dll って何に入っている?

“CoreAudioToolbox.dll" が足りない。。何に入っている?

色々調査した結果、QuickTimeやiTunesをインストールすることで “CoreAudioToolbox.dll" が一緒にインストールされるようでした。

そもそも qaac ってなんなんだ?と思った方は、以下GitHub qaac documentationを参照ください。

qaac によるエンコードを行う対策方法

ざっくりqaacによるエンコードを行う方法をまとめてみると

  • QuickTime、またはiTunesをインストールし、必要なファイルを取ってくる
  • qaac 64bit版を入れなおす
  • 代わりに Nero AAC Codecを入れる

が良さそうでした。

私は “Nero AAC Codec" を使うことにしてみます。

Nero AAC Codec のインストール

Nero AAC Codec Ver 1.5.4 をダウンロード

以下のサイトより “Nero AAC Codec" をダウンロードします。

私がダウンロードした時は “NeroAACCodec-1.5.4.zip" が最新のようでした。

“NeroAACCodec-1.5.4.zip" を展開する

zip ファイルを展開すると、以下のファイルがあります。

  • changelog.txt
  • license.txt
  • NeroAAC_tut.pdf
  • readme.txt
  • linux
    • neroAacDec
    • neroAacEnc
    • neroAacTag
  • win32
    • neroAacDec.exe
    • neroAacEnc.exe
    • neroAacTag.exe

AviUtl Nero AAC Codec の置き場所

私は、上記 “win32 > neroAacEnc.exe" を以下の場所に配置しました。

  • aviutl
    • aviutl.exe
    • aviutl.ini
    • exe_files
      • neroAacEnc.exe

あとは H.265 動画変換の音声エンコードをNero AAC Codecを選択するだけです。

Nero AAC Codec で変換してみると成功!

encoded 6353 frames in 14780.37s (0.43 fps), 26054.08 kb/s, Avg QP:23.78
auo [info]: CPU使用率: Aviutl: 5.06% / x265: 86.23%
auo [info]: Aviutl 平均フレーム取得時間: 74.623 ms
auo [info]: x265エンコード時間 : 4時間 6分21.0秒
auo [info]: NeroAacEnc で音声エンコードを行います。 AAC-LC ビットレート指定, 192kbps
auo [info]: L-SMASH muxer (r1474) でmuxを行います。映像: on, 音声: on, tc:off, chap:off, 拡張モード:なし
auo [info]: 総エンコード時間 : 4時間 6分53.4秒
2019年8月20日 17時22分 エンコード終了

以上、AviUtl qaac エンコードエラーの原因と対策方法についてでした。