iTunesをインストールせず、Core Audioを使用する方法を以前ブログで紹介したが、
その際、iTunesインストーラーのバージョンは12.10.8.5以前のものしか使用できないと注意を促していた(12.10.9.3から構造が変更)。
この度、以前と異なる方法で12.10.9.3以降のバージョン(最新含む)でも容易にDLLを抽出できることが判明したため、記事にして共有したいと思う。
- https://enctools.com/qaac/にある手順のとおり、qaacと、Apple公式からiTunesインストーラーをダウンロードします。
qaacはそのまま解凍、iTunesインストーラーはインストールせず、7-ZipやWinRAR、Total Commander等を用いて解凍し【iTunes64.msi】を取り出します。
- 【iTunes64.msi】をCドライブ内の適当なフォルダに移動させ、パスを取得(Shiftキーを押しながらファイルを右クリックし「パスとしてコピー(A)」を選択)します。
- Command Promptを起動させ、以下に「【iTunes64.msi】のパス」および「抽出したファイルの保存先」を記述した後、コマンドとして実行します。
start /wait msiexec.exe /a "【iTunes64.msi】のパス" targetdir="抽出したファイルの保存先" /qn
(記述例)start /wait msiexec.exe /a "C:\itunes\iTunes64.msi" targetdir="C:\itunes\temp\output" /qn
- 出力先として指定した場所に「iTunes」フォルダ、「System64」フォルダ、iTunes64.msiの3つが生成されるため、「iTunes」フォルダから以下8ファイルを取り出し、qaac64.exeと同じフォルダに入れます。
ASL.dll
CoreAudioToolbox.dll
CoreFoundation.dll
icudt62.dll
libdispatch.dll
libicuin.dll
libicuuc.dll
objc.dll
※ DLLファイルを12.10.8.5のものとバイナリ比較した結果、8ファイルともすべて不一致(何らかの変更が加えられている)
※ 最新のiTunesがWindows7をサポートしているかは不明だが、DLLとqaacを用いたエンコードではWindows10、Windows7いずれも問題なくAACファイル(m4a)を生成
※ オリジナルファイルとの一致率は12.10.8.5、12.12.10いずれも
Difference (rms) = -46.45dB [-47.05dBA] / DF Metric (Median)=-39.3dB / サイズ=12.4MB
と同一だが、バイナリ比較では不一致
最後に上記方法が有効な証として、iTunes64Setup-12.12.10.exe(2023.9.13リリース)から抽出したDLLを置いておきます。
12.12.10.rar
これまで幾度となく【mp3】と【AAC】の優劣を検証行ってきましたが、【AAC】はmp3を規格・開発したフラウンホーファー研究機構と、DVDやBlu-rayの音声圧縮方式【AC3】を開発したドルビー社が共同開発した次世代圧縮方式です。
Apple社の「Apple Digital Masters テクノロジー概要」で、フラウンホーファーとドルビーはその後も繰り返し調整・改良を重ねた結果、AACは現在最高品位の音質にまで改善されたとあります。
mp3は高周波数帯をばっさりカットすることで、データ容量の削減を図る設計のため、CD以上に高周波数帯の占める割合が多いハイレゾの圧縮には不向きです。
(オリジナル(ハイレゾ)) 高周波数帯までぎっしり情報が詰っている
(AAC) 高周波数帯は間引きされているが見た目の違和感はない
(mp3) 高周波数帯がカットされている