広告 MP3、AAC音質関連

CD音質を凌ぐ?「ハイレゾ音源のAAC変換」を行うために(その3:Apple社 afconvertのコマンドラインを使う)

スポンサーリンク

 

CD音質を凌ぐか?「ハイレゾ音源のAAC変換」シリーズの第3弾です。

Apple Degital Mastersのドロップレットツール」のAAC変換はApple社 Afconvertのコマンドラインを使っています。 今回はこれに倣って、afconvertのコマンドラインツールとAutomatorを使ったAAC変換にチャレンジしてみました。

「Apple Degital Masters のドロップレットツール」以前の記事で紹介した通り高音質でAAC変換できますが、不満な点として以下があります。

  1. サンプルレートが192khzのハイレゾ音源をAAC変換すると高域減衰が生じること(仕様上は、96khzまでになっています)
  2. AAC変換のビットレートは256Kbpsのみで、320kbpaは対応不可になっていること
  3. ハイレゾ音源ファイルの対応フォーマットがwave( 又はAIFF)ファイルのみでFLACファイルが使えないこと

以上の「Apple Degital Masters のドロップレットツール」の不満足な点を改善すべく afconvertのコマンドラインとAutomator を使って、出来ればCD音質を凌ぐハイレゾ音源のAAC変換に挑戦してみました。

OSXユーザーでハイレゾを高音質でAAC変換したいと思っている方は是非この記事を参考にしてみてください。

 

Afconvertのコマンドラインについて

Afconvertはmac osx に標準で搭載されているオーディオファイルのフォーマットを変換することが出来るコマンドラインツールです。 通常はターミナルから実行できます。

例えば、waveファイル「test_XLD.WAV」をCBRでビットレートを320kbpsでAAC変換に変換したい場合のコマンドラインは、以下になり、同じディレクトリに「test_XLD.m4a」としてAACファイルが生成されます。 (名前を指定したファイルを生成したい場合は、フルパスで【ファイル名.m4a 】を追記します。)

afconvert -d aac -f m4af -s 0 -b 320000 "/〜/test_XLD.WAV"

注記:

  • -s オプション:CBRの場合は0、ABRの場合は1、VBR_constrainedの場合は2、VBRの場合は3を指定します。
  • -d オプション:データー形式 -b オプション:ビットレートの指定
  • その他、オプションで変換品質等を指定できます。

なお、afconvertのヘルプを見るには、ターミナルに「afconvert -hf」「afconvert -h」を打ち込みます。

コマンドラインについて、参考にさせて頂いたURL

 

高音質「AAC変換」に向けたAfconvertのコマンドラインについて

高音質でAAC変換を行うためには、高域減衰を防ぐため、ハイレゾ音源をダウンサンプリング(48khzにAIFF変換)した後、AAC変換する2つのコマンドラインが必要です。


  • step.1 ダウンサンプリング用のコマンドライン

    afconvert -d BEI24@48000 --quality 127 -r 127 --src-complexity bats -f AIFF [変換元ファイル名(フルパス)]

    • このコマンドラインは、変換元のファイル名で指定されたファイル(WAVE、FLAC、etc)をサンプルレートをAIFFフォーマットで48khzにダウンサンプリングします。 (ダウンサンプリングする意味は、ハイレゾファイルを直接AAC変換すると高域減衰が生じるために、AAC変換する前にダウンサンプリング処理しておくことが必要です)
    • オプションは、「Apple Degital Mastersのドロップレットツール」のソースコードから見倣ったもので、ダウンサンプリング後で、高域減衰が生じませんでした。 BEI24は、ビッグエンディアンで24bitを指定し@で目的のサンプルレート(hz)を指定しています。

  • step.2 AAC変換用のコマンドライン

    afconvert -d aac -f m4af -q 127 -s 0 -u pgcm 2 -b 320000 [ダウンサンプリンされたグファイル名(フルパス)]

    • このコマンドラインは、ダウンサンプリンされたグファイル名で指定されたファイル(AIFF)をAAC変換します。
    • オプションは、「Apple Degital Mastersのドロップレットツール」のソースコードから見倣ったものです。 -q 127の意味は、codec_quality: 0-127 最大127を指定しています。 -s の意味は0でCBRを指定しています。(1 で ABR, 2 で VBR_constrained, 3 で VBR) -b 320000は、ビットレート320kbpsを指定しています。

ポイント

ターミナルからAfconvertのコマンドラインを入力してAAC変換を2ステップで行うのは至難の技です。 これを自動化するためにOSXのAutomatorを使います。

 

Automator(ワークフロー・アプリ)の作成

今回作成するワークフロー・アプリは、OSXのAutomatorを使ったハイレゾ音源をAAC変換する方法(サウンドアプリXLDコマンドライン使用)で作成したワークフローを基本にしてモディファイしています。 基本のAutomatorワークフローファイルを複製し、アプリの名前を「Afconvert convert Hi_reso to AAC .app」として必要箇所を変更しています。

ここでは、ワークフローパーツの「シェルスクリプトを実行」(以下)のコード部分についてのみの紹介です。

ハイライトされている14、17行がAfconvertのコマンドラインになります。

 

Automator AAC変換アプリの配布

Afconvert convert Hi_reso to AAC .app

  • Down Loadボタンをクリックすると、Afconvert_Hi_reso_to_AAC.app.zipがダウンロードできます。
  • Apple OSXユーザの方は、ダウンロードした「Afconvert_Hi_reso_to_AAC.app.zip」を解凍後、appファイルをクリックすればAfconvert_Hi_reso_to_AAC.appが起動し、選択したハイレゾファイル(複数選択可)を選択するとAACファイルに変換できます。 
  • セキュリティ保護からappファイルをクリックして警告が出て起動しない場合があります。 その時は、appファイルを右クリックして「開く」をクリックすれば起動すると思います。
  • このアプリの変更を行いたければ、Automatorアプリを起動してから、「Afconvert_Hi_reso_to_AAC.app」ファイルを開けば、ワークフローを編集することができます。

  • シェルスクリプトプログラムは、Afconvertのコマンドラインによる、基本的処理(ダウンサンプリングとAAC変換)のみで、エラー処理等は含んでいませんのでご注意ください。
  • 当アプリのご使用に際しては自己責任でお願いします。 アプリの使用によって、生じたいかなる損害も、補償いたしかねますことをご承知おきください。

 

スポンサーリンク

 

Afconvert_Hi_reso_to_AAC.appアプリ仕様(マトメ)

スペック比較

spec Afconvert convert Hi_reso
to AAC .app
Apple Degital Masters XLD convert Hi_reso
to ACC.app
変換元ファイル形式
WAVE、FLAC、etc
WAVE、AIFF
WAVE、FLAC、etc
変換元
対応フォーマット
サンプルレート:
 192khz〜48khz
ビット深度:24bit
サンプルレート:
 96khz のみ
ビット深度:24bit
サンプルレート:
 192khz〜48khz
ビット深度:24bit
AAC:ビットレート 320kbps 256kbps 320kbps
AAC:サンプルレート 48khz(44.1khz) 44.1khz 48khz(44.1khz)
その他 タグ情報の引継ぎ:☓ タグ情報の引継ぎ:☓ タグ情報の引継ぎ:○
オプションはコマンドラインで
指定できる
ーー オプションは環境設定から指定
する必要アリ
参照リンク ーー ここをクリック ここをクリック

ポイント

XLDのコマンドラインは環境設定から予め音質オプションを設定する必要がありますが、afconvert はコマンドラインに音質オプションを直接指定することが出来るメリットがあります。 一方、afcinvertは、タグ情報の引継がないのが難点です。

 

ピュアー音源による音質評価

テストファイル(24bit 192khz wave)を「Afconvert_Hi_reso_to_AAC.app」でAACに変換したファイルの周波数特性(F特)と歪率(THD+N)を確認しました。

 

1,周波数特性(F特)の確認

AAC 48khz用 F特テスト音源(Wave 24bit 192khz)から「Afconvert_Hi_reso_to_AAC.app」で変換したAACファイルのF特は以下の通りです。 参考・比較のため、AAC 44.1khz用 F特テスト音源(Wave 24bit 96khz)から「Apple Degital Mastersのドロッレットツール」で変換したAACファイルも載せています。 

F特・ポイント

「Afconvert_Hi_reso_to_AAC.app」は、サンプルレートが48khzですので、24khz(fc=48khz/2)でハイカットされます。 F特の結果は、23.6khzまでフラットで、23.8khz付近から減衰が始まっていることが確認できました。 

一方のApple Degital Mastersのドロップレットルール」は、サンプルレートが44.1khzですので、22.05khz(fc=44.1khz/2)でハイカットされます。 F特の結果は、21.7khzまでフラットで、21.8khz付近から減衰が始まっていることが確認できました。

F特的には、当然サンプルレートが48khzの「Afconvert_Hi_reso_to_AAC.app」の方が優位となります。

 

2,歪率(THD+N)の確認

歪率確認のため、代表的な1khz正弦波( -3db -20db -60db)で記録した歪率・テストファイル(24bit 192khz wave)を、「Afconvert_Hi_reso_to_AAC.app」で変換したAACファイル(48khzの場合と44.1khz)の歪率を確認してみました。 参考として、「Apple Degital Mastersのドロッレットツール」の歪率も合わせて比較しています。 (歪率測定は下段の 「+歪率の測定方法 > ここをクリック」で参照してください。)

1khz sin
レベル
Afconvert convert Hi_reso
to AAC .app
Apple Degital Mastersの
ドロッレットツール
参考 (CD :16bit 44.1khz)
歪率
-3db 0.00285%(THD+N) 0.00544%(THD+N) 0.00206%(THD+N) 
-20db 0.00058%(THD+N) 0.00544%(THD+N) 0.01535%(THD+N)
-60db 0.00751%(THD+N) 0.01045%(THD+N) 1.52535%(THD+N)

歪率・ポイント

「Afconvert_Hi_reso_to_AAC.app」で変換したAACファイルが歪率的に優れていました。 

この要因は、下に示すAACに変換後の sin 1khz -20db のスペクトルを見ると、Fig-2のスペクトルは1khzを中心にスプリアス状のノイズが見られます。 このノイズの為に「Apple Degital Mastersのドロッレットツール」の歪率が悪化していると考えられます。

一方の「Afconvert_Hi_reso_to_AAC.app」は、Fig-1に示される様にスプリアス状のノイズが少なく、全体的にCD歪率と同等以下になっていることが判りました。

sin 1khz -20db のスペクトル

「Afconvert_Hi_reso_to_AAC.app」でAACに変換したスペクトル

----Fig-1------

「Apple Degital Mastersのドロッレットツール」でAACに変換したスペクトル

-----Fig-2-----

 

リアル音源による音質評価(Apple Degital Mastersとの比較)

過去記事の「Apple Digital MastersのAAC音質(その1)」で使用した音源ファイルを使って、「Afconvert_Hi_reso_to_AAC.app」で変換したAACファイルとの比較を行ってみます。 基準音源をe-onkyoから購入したハイレゾ(Flac 24bit 96khz)で評価します。

音源:1962年に録音されたカラヤン指揮・ベートーベン「交響曲 第8番 第2楽章」です。

  1. e-onkyoから購入したハイレゾファイル(基準):ベートーヴェン 交響曲全集_31_Beethoven Symphony No.8 In F, Op.93 - 2. Allegretto scherzando[SACD Stereo].flac
  2. iTunesから購入したApple Degital Mastersファイル:4-06 交響曲 第8番 へ長調 作品93_ 第2楽章_ Allegretto scherzando (SACD Stereo).m4a
  3. e-onkyoハイレゾ音源を今回作成したアプリ「Afconvert_Hi_reso_to_AAC.app」で変換したAACファイル
ファイル
諸元
フォーマット ファイルサイズ 圧縮率
e-onkyo
ハイレゾ
FLAC
24bit 96khz
77.9 MB 基準
Apple Degital Masters AAC(m4a)
256kbps 44.1khz
8.7 MB 11.2 %
Afconvert_Hi_reso_
to_AAC.app
AAC(m4a)
320kbps 48khz
9.6 MB 12.3 %

 

1.スペクトルの比較

スペクトル測定条件・ポイント

夫々のファイルをAudacityに取り込み周波数分析(スペクトル)を行います。 e-onkyoのハイレゾファイル(基準)のサンプルレートが96khzですので同じ土俵でスペクトルを表示させるために、評価するAACファイルは、96khzのサンプルレートに合わせる必要があります。 AudacityにAACファイルを取り込んだ後、 トラック > 再サンプリング96khzにアップサンプリングを行っておきます。

周波数分析の条件は以下の通りで、分析した後分析データをテキストファイルに書き出してグラフ化し比較を行います。

周波数分析の条件】

  • 関数窓:hanning 大きさ:16384ポイント
  • 解析対象パート:始点から109.2秒間(トラック全体を選択して 解析 > スペクトル表示
  • 周波数分析データをテキストファイルに書出しグラフ化

リアル音源 のスペクトル

全体スペクトル

----------

高域部分拡大・スペクトル

----------

e-onkyoハイレゾ基準・差分スペクトル

--- Fig-3 ----

リアル音源・スペクトル解説

  • e-onkyoから購入したハイレゾ音源(24bit 96khz Flac)は、25khz以上の高域までスペクトルが延びいることが判ります。 一方、iTunesから購入した「Apple Degital Masters」と「Afconvert_Hi_reso_to_AAC.app」の場合は、ピュアー音源のF特よりも若干低い周波数から高域が減衰していました。 (この原因は良く分かりませんが、WaveSpectraAudacityのFFTの違いによるものかも知れません)
  • Fig-3 のe-onkyoハイレゾ基準にした、差分スペクトルを見ますと、カットオフ周波数以内で「Apple Degital Masters 」及び 「Afconvert_Hi_reso_to_AAC.app」とも ±0.5db以内の誤差で、聴感上は判別不能なレベルでは無いかと思われました。

 

2.各音源の試聴比較

各音源は、HDDプレーヤ:Sony HAP-Z1ES に取り込み、「我が家の "B級オーディオ"」で試聴比較しました。

本来は、HAP-Z1ESのデコーダの差を無くすために、各音源をApple Degital MastersのドロッレットツールでWave形式に統一した後、試聴すべきところですが、今回は、ファイル形式そのままでの試聴です。

プラシーボ効果があるかも知れませんが、僅かにe-onkyoハイレゾ音源の方がストリングスのディーテイルと深みを感じ、Afconvert_Hi_reso_to_AAC.appのAAC は同等でしたが、Apple Degital MastersのAACは音色がワームで鮮度が若干落ちる感じでした。 どちらにしても僅差です。

独断と偏見での聴感・順位

e-onkyoハイレゾAfconvert_Hi_reso_to_AAC.appのAACApple Degital MastersのAAC 

 

Afconvert_Hi_reso_to_AAC.appのAAC マトメ

Apple社のAfconvertを使った「Afconvert_Hi_reso_to_AAC.app」のAACは、以上の評価結果から、本家のApple Degital MastersのAAC音質を超えて、更にCD音質を凌ぐ?AAC変換が出来ると言えるのではないでしょうか? 

ただし、Afconvert・コマンドラインは、ハイレゾ音源のタグ情報を引き継げないと言う問題があります。 一方の XLD・コマンドラインでは、音質オプションをXLDの環境設定を行う必要があるものの、ハイレゾ音源のタグ情報を引き継げるメリットがあり、どちらを使うか悩むところです。

 

最後に、同一音源のレコードからハイレゾ録音(24bit 192khz FLAC )したファイルを「Afconvert_Hi_reso_to_AAC.app」でAAC変換したサウンドを聴いてみてください。

 

以上、Apple社 afconvertのコマンドラインを使った「CD音質を凌ぐか?シリーズ」第3弾 でした。

 

 

 

スポンサーリンク

 

スポンサーリンク

 

t