M4A
主に音声のみを含むMPEG-4ファイルの拡張子として使用され、AACやALACなどのコーデックをカプセル化できます。これは、独立した音声コーデックではなく、ファイルの用途やコンテナの仕様を定義するものです。
詳細説明
M4A は MPEG-4 オーディオファイルで一般的に使用される拡張子であり、通常は `.m4a` と表記されます。この種のファイルは、ISO ベースメディアファイル形式および MPEG-4 ファイル構造に基づいており、トラック、メディアデータ、タイムテーブル、メタデータボックスによってコンテンツが構成されています。M4Aは、ISO規格における独立したオーディオ圧縮アルゴリズムではなく、ソフトウェアや配信システムが、オーディオを主とするMPEG-4ファイルを区別するために用いる命名規則です。
M4Aはエンコード形式ではありません。
ファイル内のオーディオは、AACまたはApple Lossless Audio Codec(ALAC)が最も一般的ですが、コンテナがサポートする他のコーデックが使用される場合もあります。AACは非可逆圧縮、ALACは可逆圧縮です。両方のファイルが `.m4a` を使用しているからといって、その圧縮特性が同じであるとは限りません。正しく識別するには、サンプル記述内のエンコーディング識別子を読み取り、同時にオブジェクトタイプ、サンプリングレート、ビット深度、およびチャンネル数を確認する必要があります。
コンテナ内の `moov` などの構造体はトラックやサンプルテーブルを保存し、`mdat` はメディアデータを保存します。タグ、カバーアート、チャプター、シームレス再生情報は、対応するメタデータボックスに格納されます。`moov` の位置は、ファイルが完全に取得される前にネットワーク上のプログレッシブダウンロードの解析が開始できるかどうかに影響しますが、オーディオコーデック自体を変えることはありません。ファイルには複数のオーディオトラックやその他の補助データが含まれる可能性もありますが、一般的な M4A ファイルにはメインオーディオトラックが 1 つしか含まれていません。
`.m4a`、`.mp4`、および `.m4b` は、同じ基本コンテナを使用している場合があります。`.mp4` は音声・動画番組に、`.m4b` はオーディオブックやチャプター・ブックマーク付きコンテンツによく使用され、拡張子の違いは主にアプリケーションが処理方法を選択するための目安となります。拡張子を直接変更しても、エンコードの変換は行われず、互換性のない内部トラックを修復することもできません。
AAC M4Aを別のコンテナに再パッケージ化しても、オーディオストリームは変更されません。ALAC M4A に変換する場合は、まずデコードを行い、デコード済みのサンプルをロスレスで保存する必要があります。元のロス圧縮で削除された情報は復元されません。メディアデータベースでは、M4A をコンテナまたはファイルタイプとして扱い、AAC や ALAC などの実際のコーデックとは区別して記述する必要があります。