AACFawを使って音声を読み込む

AACFawを使うと、AACを無劣化でカットできます。AACファイルをwaveファイルに偽装して(Fake AAC Wave)扱います

FAWのメリット / デメリット

メリット

  • 音質が劣化しない
  • 音声の再エンコードが必要なくなる分、その分の時間が短縮
  • Encoder Delayを気にしなくてよい

デメリット

  • MPEG2+AACのTSファイルを編集する場合、L-SMASH WorksならそのままTSファイルをロードすればよいが、AACFawの場合は別途AACファイルを分離(Demux)しておく必要がある
  • 編集中、音声の波形がおかしなことになるので、編集中のプレビューに向かない

導入

外部リンク : Rutice

AviUtlプラグイン の “AACをFAWとして読み込むプラグイン” をダウンロードします

解凍してできた中にある “aacfaw.aui”“aacfaw.dll” にリネームし、AviSynth+のPluginsフォルダにいれてください

AviSynth64フォルダにあるものは64bit用です。64bitを使う方はこちらをAviSynth+のPlugins64フォルダにいれてください

使い方

フィルタは AACFaw() です。AACファイルを指定します。なお、48khzでエンコードされたAACファイルと仮定しているそうです。壊れた(ドロップした)AACの場合、壊れた直前までしか読まない、と同梱のテキストに記載されています

基本的な使い方

“xxx DELAY -280ms.aac”をFAWとして読み込み、音声データを”a”という変数に格納します。AACファイルに “DELAY nms” が含まれていた場合、その分をディレイ調整して読み込んでくれます。自動でやってくれるので、スクリプトに別途ディレイ調整を記述する必要はありません

AACファイルの用意

音ずれをしないようにするためには、映像ファイルの読み込み方に合わせて、それに合うようにAACファイルを用意する必要があります

MPEG2+AACのTSファイルの場合

例えば、L-SMASH WorksのLWLibavVideoSourceを使ってTSファイルから映像を読み込んだ場合、TSファイルから、ffmpeg(またはLibav)を使ってTSファイルから映像を分離して読み込んでいます。このようにして読み込んだ映像と音ずれをしないようにするためには、音声も同じように分離する必要があります。そのためには ts_parser というツールが必要です

外部リンク : OneDrive

ts_parserは、MPEG_API_Utilsの中に入っています

ts_parserの使い方

delay typeで3を指定して実行します

このようなバッチファイルを用意すれば、TSファイルをドラッグ&ドロップするだけでAACファイルが分離されます

上記コードをメモ帳にコピペし、ts_parserのパスを適宜変更し、名前を付けて保存から “ts_parser.bat” という名前で保存するなどすればバッチファイルが作れます

C:\直下にts_parser.exeを配置した場合

ts_parserを使ってAACを用意した場合は

このように映像と音声を読み込めばよいでしょう

MPEG2+AACのTSファイルの場合2

例えば、DGIndexでは、TSファイルから映像部分のm2vファイルと、音声のaacファイルを分離することができます。DGIndexは一応もう入手できないツールとなっているので、DGIndexの使い方は特に解説しませんが、DGIndexでm2vとaacを分離した場合は

このように読み込んでやれば、ts_parserを用意しなくても良いでしょう

FAWからAACに戻すために必要なツール

fawcl.exeというアプリを使います

外部リンク : Friio関係ファイル置き場

“up1009.zip” をダウンロードしてください。実際に戻す手順は別ページで紹介します。ダウンロードだけしておいてください