OSXのAutomatorを使ったハイレゾ音源をAAC変換する方法(サウンドアプリXLDコマンドライン使用)

スポンサーリンク

 

前回記事でサウンドアプリ『XLD』でコマンドラインからハイレゾ音源をAAC変換するを紹介しました。 

前回記事のXLDコマンドラインによるAAC変換は音質的に優れているものの使い勝手が非常に悪いので、MacOSXで標準搭載されているAutomatorアプリを使って、XLDコマンドラインによるダウンサンプリングとAAC変換を一つの操作でハイレゾ音源を高音質にAAC変換が自動化できるAutomatorによるワークフローアプリを作ってみました。

今回の記事は、Automatorを使ったハイレゾ音源のAAC変換アプリ作成方法とアプリで変換されたAACファイルの音質評価を行った紹介です。

なお、Apple社によればAutomatorとは「macOSに付属する、Appleのアプリケーションです。ワークフローを作成することによって繰り返しの作業を自動化できます。Finder、Safari、“カレンダー”、“連絡先”、Microsoft Office、Adobe Photoshopなど、ほかのさまざまなアプリケーションと連携します。」と説明されています。

 

Automatorで作成した「AAC変換」ワークフローアプリの使い方を先ず説明します。

完成したワークフローアプリの名前を「XLD convert Hi_reso to ACC.app」としています。

下の動画に合わせたワークフローアプリによるハイレゾ音源のAAC変換手順です。

 

ポイント

  1. 完成したワークフローアプリ(XLD convert Hi_reso to ACC.appエイリアス)をクリックして起動します。
  2. 警告が表示されて、注意文を確認したらOKをクリックします。
  3. ファインダーが表示されて、AACに変換する元のハイレゾファイルを選択します。 ここでは、24192_param_sin_17-20_5k_step_0_5k_-20db.WAV」を選択しました。 
    ダイアログが表示され、OKをクリックします。
  4. AAC変換が完了すると 画面右から「ハイレゾファイルからAACへ変換されました。」との通知が出現しワークフローアプリが終了します。

〜〜〜〜〜〜〜〜〜〜〜〜

ハイレゾファイルのフォルダーを見ると、ファイル名に「XLD_chg」が追加されたAACファイル「24192_param_sin_17-20_5k_step_0_5k_-20db_XLD_chg.m4a」が生成されいます。

以上の手順に従った動画をご覧ください。

 

 

このワークフローアプリは、XLDのコマンドラインを使って、2つのステップを実行します。

  1. 高域減衰対策のためハイレゾファイルをAACのサンプルレート(48khz or 44.1khz)にダウンサンプリング(AIFFファイル変換)する
  2. AIFFファイルをビットレート等を事前設定したAACに変換する

この為、事前にXLDアプリの環境設定からAIFFとAACの夫々に対してオプション設定が必要です。(下の「XLDオプション設定」参照)

例えば、AACのサンプルレートを48khzにしたければ、AIFF・オプションでサンプルレートを48khz に指定しておきます。

+ XLDオプション設定 クリックして展開

AIFFのオプション設定

ハイレゾ音源をサンプルレート48khz(or44.1khz)でAACに変換する場合、高域(20khz付近)で減衰します。 この高域減衰を防止するために、AIFFをテンポラリファイルとして、一旦ハイレゾ音源を48khz(or44.1khz)にダウンサンプリングしますので、以下の様に、AIFFオプションを設定しておきます。 高域減衰の詳細はここをクリック。

XLDの環境設定から、環境設定 > 一般 からAIFFのオプション(サンプルレート48khz or44.1khz)を設定します。

AACのオプション設定

ダウンサンプリング生成された、aiff ファイルのサンプルレートに合わせ、更に高音質設定で AAC変換する必要がありますので、以下の様に、事前にAACオプションを設定しておきます。

XLDの環境設定から、環境設定 > 一般 からAACのオプションを設定します。

オプションは、以下で設定
モード:CBR
エンコーダの精度:最高
サンプルレート:自動にします。
(AIFFのサンプルレートに従ったAAC変換が行えます)

ビットレート:320kbps

展開を「閉じる」

 

「AAC変換」ワークフローアプリの作成

では、実際にワークフローアプリ作成手順を示します。

シェルスクリプトプログラムには、XLD・コマンドラインによる、基本的処理(ダウンサンプリングとAAC変換)のみで、エラー対応やファイル名のスペース対応等の処理は含んでいませんのでご注意ください。 (2020/11/22:ファイル名のスペースエラーに対応しました。)

 

step
1
Automatorアプリの起動と新規作成

先ず、Automatorアプリを起動して、ファイル > 新規作成 をクリックして、以下の様に、アプリケーション を選択します。

 

step
2
ワークフロー(作業手順)の作成

ワークフローのパーツ(アクション)を選び、作業エリアにドラッグして、ワークフローを以下の様に作成しました。

 

step
3
各ワークフロー項目の細部設定


  • 確認を求める

    ファイル名(パス含め)にスペースがあると、XLD・コマンドラインエラーになるので、注意を喚起しています。 (2020/11/22:ファイル名のスペースエラーに対応しました。)


  • Fainder項目の選択を求める

    • 開始番号は、ファイル選択ウィンドウが開いた時のスタートポイントフォルダーを指定しています。
    • 複数選択を許可(レ点)にすると、複数のハイレゾファイル選択に対して夫々をAAC変換することができます。

  • シェルスクリプトを実行

    シェルスクリプトの言語を /bin/bash を指定しダウンサンプリングとAAC変換を行います。 そのコードは以下の内容です。 14行と17行の「XLD・コマンドライン:」については、前回記事を参照してください。


  • 通知を表示

    AAC変換が完了すると、PC画面右から 「通知 」が現れます。


 

step
4
最後に

ワークフローの細部設定が完了したら、ファイル >  名称変更 でワークフローアプリの名前を付け、ファイル >  保存 をクリックします。 (「XLD convert Hi_reso to ACC.app」にしています。)

保存したホルダーを見ると、app の拡張子がついた実行ファイルが保存されていますので、appファイルをクリックすれば、ワークフロー通りのAAC変換を行うことができます。

 

自作したワークフローアプリ(ご参考)

ご参考までに自作したAutomatorによるワークフローアプリ:XLD convert Hi_reso to ACC.appをアップしておきます。 注意点をお読み頂きワークフローアプリをお試しいただけます。

アプリDLと使用上の注意ポイント

  • Down Loadボタンをクリックすると、XLD convert Hi_reso to ACC.app.zipがダウンロードできます。 zipファイルを解凍してXLD convert Hi_reso to ACC.appを抽出します。
  • このアプリを開こうとすると「“XLD convert Hi_reso to ACC.app”は、App Storeからダウンロードされたものでないため開けません。」と表示される場合は、お手数ですがNET検索して、Apple OSのセキュリティ設定を確認して「control」ボタンを押しながら右クリックで開いてみてください。
  • 事前にXLDのGUI版とCLI版のインストール及び音質オプション設定が必要です。
  • このアプリは、エラー処理等は含んでいませんのでご注意ください。
  • アプリの使用によって、生じたいかなる損害も、補償いたしかねますことをご承知おきください。

 

AAC変換したファイルの音質をピュアー音源で評価する

1khz -20db歪率確認

歪率確認のため、正弦波 1khz -20dbで記録したWAV(24bit 192khz)ファイルを、ワークフローアプリで変換したAACファイル(48khzの場合と44.1khz)の歪率を確認してみました。 (歪率測定はWaveSpectraで、aacファイルをwavにデコードしたファイルで測定しています)

48khz AAC歪率 44.1khz AAC歪率 参考 (CD :16bit 44.1khz)歪率
0.00056%(THD+N) 0.00034%(THD+N) 0.01535%(THD+N)

ポイント

44.1khzAACの方が歪率的に優れていました。 念の為、MediaInfoで確認すると、44.1khzAACはCBRモードで、48khzAACはVBRモードでした。 この差が歪率の差に現れたかも知れません。

しかし、参考値のCD歪率に対してワークフローアプリでAAC変換した方が断然優位です。 この理由は、XLDのAAC変換が24bitのビット深度に対応しており一方のCDでは16bitで量子化ノイズが大きくなり歪率が悪化するのが原因です。(詳しくはここをクリック)

高域減衰の確認

高域減衰確認のため、17khzから20.5khzまで0.5khzおきに、-20dbの正弦波を記録したWAV(24bit 192khz)ファイルを、ワークフローアプリで変換したAACファイル(48khzの場合と44.1khz)のスペクトル波形を確認してみました。 (スペクトル測定はWaveSpectraで、aacファイルをwavにデコードしたファイルで測定しています)

最上位周波数(20.5khz)において、48khzAACが-20.01dbに対して44.1khzAACが-20.06dbで若干減衰量が大きい結果でした。 (44.1khzAACの高域減衰が若干大きい原因は、ハイカットフィルターのナイキスト周波数(44.1khz/2=22.05khz)の影響を受けていると思われます)

 

ピュアー音源での音質評価マトメ

歪率では、44.1khzAACの方が優位で、高域減衰では、48khzAACが優位でした。 どちらを選択するか悩ましいところですが、その差は小さくどちらを選んでも問題ないレベルと思います。 次のリアルサウンドによるスペクトル評価でどちらにするか決めたいと思います。

 

♫ 「AAC変換」ワークフローアプリを使用したリアルサウンド

オリジナル・ハイレゾ音源

オリジナルハイレゾ音源は「CD音質を凌ぐ?「ハイレゾ音源のAAC変換」を行うために(その2:Windows版foober2000アプリの場合)」で使用した1962年に録音された「オイストラフが弾くJ.S.バッハ: ヴァイオリン協奏曲第1番イ短調 BWV.1041」のレコードの中のBWV1041 第1楽章を使いました。 (BWV1041_1st_movement.flac)

FLAC(24bit 192khz) Flac Down Load

ワークフローアプリでAAC変換

ハイレゾファイルからAACへの変換時間は約1分20秒でした。

44.1khzAACで変換

ファイル名:BWV1041_1st_movement_XLD_chg441.m4a

+ MediaInfo情報

オーディオ
ID : 1
フォーマット : AAC LC
フォーマット/情報 : Advanced Audio Codec Low Complexity
コーデック ID : mp4a-40-2
ながさ : 4分 4秒
ビットレートモード : VBR モード
ビットレート : 323 Kbps
チャンネル : 2 チャンネル
Channel layout : L R
サンプルレート : 44.1 KHz
フレームレート : 43.066 fps (1024 SPF)
Compression mode : Lossy
ストリームサイズ : 9.33 MiB (99%)

48.0khzAACで変換

ファイル名:BWV1041_1st_movement_XLD_chg480.m4a

+ MediaInfo情報

オーディオ
ID : 1
フォーマット : AAC LC
フォーマット/情報 : Advanced Audio Codec Low Complexity
コーデック ID : mp4a-40-2
ながさ : 4分 4秒
ビットレートモード : VBR モード
ビットレート : 318 Kbps
チャンネル : 2 チャンネル
Channel layout : L R
サンプルレート : 48.0 KHz
フレームレート : 46.875 fps (1024 SPF)
Compression mode : Lossy
ストリームサイズ : 9.33 MiB (99%)

 

ワークフローアプリでAAC変換されたリアルサウンドのスペクトル評価(総合マトメ)

スペクトル測定条件

以下のスペクトルグラフはAudacityに「BWV1041_1st_movementの」夫々の音源ファイルを取り込み、関数窓をhanning、size16384にて「先頭から54.6秒間」のスペクトルを観測しています。 スペクトルは、テキストデータとして書き出せますので、このテキストデータからNumbersでスペクトルをグラフ化しています。

尚、AAC及びCDの音源はFLAC(fs=192khz)のスペクトルの周波数軸に合わせるために、Audacityに音源を取り込み、予めトラックを192khzにアップサンプリングした後に周波数解析(スペクトル)を行っています。

44.1khz AAC スペクトル

48khz AAC スペクトル

 

スペクトル評価のマトメ

  • 44.1khz AACは、CDフォーマットと略一致し、48khz AACは、CDの上限周波数を超えています。
  • 下のスペクトルで示す過去記事で評価したサウンドアプリの「foober2000」及び 「Apple Degital Mastersツール」で AAC変換した差分スペクトルを見ますと、CDよりも高域上限が内側にあり、スプリアス(暴れ)も見られます。 それに引き換え今回のXLDベースのワークフローでの48kz AAC変換の差分スペクトルは、CDの上限周波数を超えており、スプリアスもなく夫々のサウンドアプリよりも音質的に優位と思われます。

foober2000 48khz AAC変換

Apple Degital Masters 44.1khz AAC変換

総合して

  • 今回作成したワークフローアプリでAC変換する場合、サンプルレートを48khzでAAC変換するのがベスト
  • 今まで評価した、CD音質を凌ぐ?可能性があるアプリに順位を付けてみました。

XLDベースのワークフローアプリ > Apple Degital MastersFoober2000 

 

 

 

以上、OSXのAutomatorを使ったハイレゾ音源をAAC変換する方法でした。 このXLDベースのAAC変換は今の所、ハイレゾ音源を高音質でAAC変換できる最右翼ではないかと思いました。

 

こちらもCHECK
CD音質を凌ぐか?シリーズ

 

スポンサーリンク

 

関連記事(一部広告含む)

 

 

Blog オススメ記事(コンテンツ選択)

ボタンを押してコンテンツ選択

レコード音質とハイレゾ化

CD音質と圧縮音源 AAC等

WebデザインやiPhone・PCなど

ツールと閑話ブログ

スポンサーリンク

© 2021 ハイレコのブログ Powered by AFFINGER5