AAC音声 (.aac)
ISO/IEC 標準Advanced Audio Coding(AAC)はMP3の後に標準化された非可逆音声コーデックです。圧縮効率と聴感上の品質は、エンコーダー、ビットレート、音声の内容によって異なります。
AAC を MP3 に変換
無料のブラウザ内 AAC から MP3 へのコンバーター。お使いのデバイスでファイルを即座に変換します。
調査とメタデータ
オペレーティングシステムやファイル解析ツールは、先頭のバイナリ列を検査してAACファイルを識別します:
バイトレベルのヘッダーシグネチャ (マジックバイト)
オペレーティングシステムやファイル解析ツールは、先頭のバイナリ列を検査してAACファイルを識別します:
16進数シグネチャ(オフセット0):
FF F1ASCII表現: ÿñ
標準化: ISO/IEC 13818-7 / ISO/IEC 14496-3
技術仕様
| コンテナアーキテクチャ | ADTS(Audio Data Transport Stream)ビットストリーム、またはMPEG-4 Part 14コンテナ |
| 圧縮 | 時間方向のノイズ整形と心理音響モデルを用いた修正離散コサイン変換(MDCT) |
| バイトエンディアン | ビッグエンディアンのビットストリーム形式 |
| 色空間 | 該当なし(音声ビットストリーム) |
| チャンネルと構造 | 最大48の独立した音声チャンネルに対応し、スピーカー割り当ては任意 |
| 最大寸法 | サンプリング周波数は8 kHz~96 kHz(16/24ビットPCMソース) |
| 透過性 | 知覚符号化による非可逆圧縮。ステレオで約192~256 kbpsなら通常、音質劣化を感じにくい |
| ストリーミングとプログレッシブ | ADTSフレームの同期ワードにより、任意のバイト位置からストリーミング可能 |
技術比較表:AACと競合製品
| 技術属性 | AAC (現在) | MP3 | OGG | OPUS |
|---|---|---|---|---|
| 圧縮効率 | 高:128〜192 kbpsで透明感のあるステレオ音質 | 中:192〜256 kbpsが必要 | 高:160 kbpsのAACに匹敵 | 超高:96〜128 kbpsで透明感を実現 |
| 最大チャンネル数 | 48のディスクリートチャンネル | 2チャンネル(ステレオ) / MPEG-2では5.1 | 255のディスクリートチャンネル | 255のディスクリートチャンネル |
| ハードウェアアクセラレーション | すべてのモバイルおよびデスクトップ用シリコンで100%ユニバーサル対応 | 100%のレガシーシリコンサポート | 限定的な専用DSPハードウェアチップ | ブラウザおよびAndroid/iOSのハードウェアサポートが拡大中 |
| アルゴリズム遅延 | 中程度(約100 msのバッファ遅延) | 高(約100〜150 ms) | 中程度(約100 ms) | 超低(5〜26.5 ms、VoIP向けに最適化) |
一般的な破損モードと16進数リカバリガイド
メディアプレーヤーがループ再生するか、高音のデジタルノイズが断続的に発生する。
根本原因: パケットロスや12ビットの同期ワードの欠落により、ADTSフレームヘッダーの同期が失われる。
復旧: フレームインデックスを再構築するため、ffmpeg -i broken.aac -c:a copy fixed.m4a を使用して、生AAC音声をMP4/M4Aコンテナに再パッケージ化する。
セキュリティ分析とパーサー攻撃ベクトル
AACデコーダーはスループットの高いオーディオDSPループ内で動作するため、不正なパケット長が存在する場合、ソフトウェア実装において整数オーバーフローを引き起こす可能性がある。
既知の攻撃ベクター
- パッチ未適用のC++デコーダーにおいて、ADTSフレーム長のフィールドにおける整数オーバーフローが原因でバッファの読み取りすぎが発生する。
- 細工されたチャンネル構成ビットにより、マルチチャンネルのダウンミックス処理中に無効なメモリ書き込みが引き起こされる。
- SBR(Spectral Band Replication)の合成テーブル解析中に、境界外のヒープ割り当てが発生する。
防御的ベストプラクティス: メモリ安全性に優れたWASMライブラリまたはオペレーティングシステムのメディアフレームワークを使用し、サンドボックス化されたメモリ空間でAACファイルをデコードします。
歴史的背景とマイルストーン
主なメリット
- 同等またはより低いビットレート(例:128 kbps対192 kbps)で、MP3よりも優れた音の透明感を実現。
- サラウンドサウンドやドルビープロロジックのワークフロー向けに、最大48のフルバンド幅オーディオチャンネルをネイティブサポート。
- iOS、Android、macOS、Windows、および一般家庭用スマートテレビ全体で、普遍的なネイティブハードウェアデコードに対応。
技術的な制限とデメリット
- 知覚的な非可逆エンコードにより不可聴な倍音周波数が破棄されるため、音楽のマスタリング作業には不向き。
- ADTSビットストリームには、MP4(M4A)コンテナへの格納(カプセル化)を行わない限り、埋め込みシークテーブルが存在しない。
- Via Licensing Corporationが管理するパテントプールライセンスの影響により、歴史的にオープンソースエンコーダーの革新が遅れていた。
興味深い技術トリビア
- YouTubeでは、標準的なステレオ動画の音声ストリームに対して、128 kbpsのAACエンコードがデフォルトで適用される。
- ADTSの同期ワードは12連続のバイナリ1(0xFFF)であり、チューナーがストリームの途中からでもライブ配信にロックオンできるようになっている。
- ソニーは、PlayStation 3、PlayStation Portable、およびVitaの音声におけるデフォルトの圧縮標準としてAACを採用した。
よくある技術的な質問
なぜ AAC は 128 kbps で MP3 よりも音質が良いのですか?
AAC は、より高い周波数分解能(最大 96 kHz)、純粋な MDCT フィルターバンク、時間領域ノイズシェーピング(TNS)、および MP3 に見られるプリエコーアーティファクトを排除するより柔軟なステレオ予測ツールを組み込んでいます。
生の AAC と M4A の違いは何ですか?
生の AAC は、チャプターやメタデータのインデックスなしで単純な ADTS フレーミングを使用します。一方、M4A は、同一の AAC オーディオペイロードをメタデータ、アルバムアート、シークテーブルとともに ISO Base Media コンテナ(MP4)に収めます。
AAC はロスレス(可逆圧縮)オーディオをサポートしていますか?
いいえ。標準の AAC は厳密に非可逆圧縮(ロッシー)です。Apple は、同じ M4A コンテナ内でビットパーフェクトなロスレスオーディオを実現するために Apple Lossless(ALAC)を開発しました。
関連するAAC変換ペア
Advanced Audio CodingファイルをMPEG-1 Audio Layer IIIに変換することで、音楽やポッドキャストを古いハードウェアプレイヤーやレガシーなカーオーディオで再生できるようになります。
MP3ファイルをAAC形式に変換することで、古い非可逆圧縮音声を最新の高効率エンコードに更新し、ファイルサイズを小さく抑えながら音質を向上させます。
M4B オーディオブックを AAC ナレーションに変換することで、チャプターマーカーやコンテナのラッパーが取り除かれ、ほぼすべての標準的なメディアプレーヤーで再生可能な標準オーディオストリームになります。