FLAC音声 (.flac)
Xiph.Orgオープン標準 標準FLACは広く使われているオープンソースの可逆音声形式です。性能は音声や設定によって異なります。
FLAC を MP3 に変換
無料のブラウザ内 FLAC から MP3 へのコンバーター。お使いのデバイスでファイルを即座に変換します。
調査とメタデータ
オペレーティングシステムやファイル解析ツールは、先頭のバイナリ列を検査してFLACファイルを識別します:
バイトレベルのヘッダーシグネチャ (マジックバイト)
オペレーティングシステムやファイル解析ツールは、先頭のバイナリ列を検査してFLACファイルを識別します:
16進数シグネチャ(オフセット0):
66 4C 61 43ASCII表現: fLaC
標準化: Xiph.Orgオープン標準 / IETFドラフト
技術仕様
| コンテナアーキテクチャ | METADATA_BLOCK構造を持つネイティブFLACビットストリームコンテナ |
| 圧縮 | サブフレーム分割を用いた線形予測(LPC)とRiceエントロピー符号化 |
| バイトエンディアン | ビッグエンディアンのビットストリームヘッダー。サンプルのペイロードは符号付き整数PCM |
| 色空間 | 該当なし(可逆音声ストリーム) |
| チャンネルと構造 | 独立した音声チャンネルを1~8系統収録可能 |
| 最大寸法 | サンプリング周波数最大655,350 Hz、1サンプルあたり4~32ビット |
| 透過性 | 音声を数学的に完全かつビット単位で再現 |
| ストリーミングとプログレッシブ | フレーム同期ワードとシークテーブルにより、HTTPのバイト範囲指定ストリーミングに対応 |
技術比較表:FLACと競合製品
| 技術属性 | FLAC (現在) | ALAC | WAV | APE |
|---|---|---|---|---|
| ライセンスモデル | フリー&オープンソース (BSD/GPL) | Apache 2.0 オープンソース | パブリックドメイン / 独自RIFF | オープンソースのカスタムライセンス |
| デコードCPU負荷 | 超低負荷、バッテリーへの影響が最小限 | 低負荷 | CPUの解凍オーバーヘッドがゼロ | 中程度から高負荷 |
| エラー検出 | 生PCMオーディオの埋め込み128ビットMD5署名 | アトムレベルの整合性のみ | 組み込みなし | フレームごとのCRC32チェックサム |
| ハードウェアプレーヤーの普及 | カーオーディオ、ホームレシーバー、Hi-Fi機器で広く普及 | Apple製デバイスおよびAirPlayレシーバー | 対応状況はプレーヤーとデバイスによって異なります。 | 非常に限定的 |
一般的な破損モードと16進数リカバリガイド
FLACデコーダーが「MD5 signature mismatch」をログに記録するか、再生中にプレーヤーが途切れる。
根本原因: ビット化けや転送エラーにより、圧縮されたオーディオフレームデータのビットが反転した。
復旧: 「flac -t sample.flac」を使用して整合性をテストする。破損したフレームを無視して音声を復元するには「flac -F」で再エンコードする。
セキュリティ分析とパーサー攻撃ベクトル
FLACのコードベースは成熟していますが、不正な形式のメタデータブロック(過度に大きな画像やキューシートのブロックなど)がパーサーの問題を引き起こす可能性があります。
既知の攻撃ベクター
- METADATA_BLOCK_PICTUREの解析における整数オーバーフローにより、未パッチのメディアインデクサーでヒープ破損が発生する。
- 細工されたチャンネル割り当てビットにより、ステレオ非相関ルーチンでゼロ除算が発生する。
- libFLACのVorbisコメントリーダーにおけるヒープの境界外読み取り。
防御的ベストプラクティス: メモリバッファを割り当てる前にメタデータブロック長を検証し、合理的な最大カバーアートの寸法を適用します。
歴史的背景とマイルストーン
主なメリット
- 特許制限のない、完全にオープンでロイヤリティフリーな仕様。
- 非対称設計により、バッテリー容量が限られたハードウェアでも瞬時かつ軽量なデコードが可能。
- STREAMINFOヘッダーにMD5オーディオ署名が含まれており、ビット単位の破損検証を自動で実行可能。
技術的な制限とデメリット
- MP3、AAC、Opusなどの非可逆フォーマットに比べてファイルサイズが大幅に大きい(通常約5倍)。
- DAWの内部ミキシングバスで一般的に使用される32ビット浮動小数点オーディオデータへのネイティブサポートがない。
- Appleのレガシーアプリケーションによる歴史的な非対応のため、ALACなどの代替フォーマットが必要であった。
興味深い技術トリビア
- 4バイトのマジックシグネチャ「fLaC」には、「Free Lossless Audio Codec」を表す大文字と小文字が混在しています。
- 欧州宇宙機関(ESA)は、大気宇宙ミッションからの科学的音声記録を圧縮するためにFLACを使用しました。
- ニール・ヤングの高解像度音楽プレーヤーPonoは、24-bit/192 kHz FLACを中心にエコシステム全体を構築しました。
よくある技術的な質問
FLAC は MP3 と同様に音声を圧縮できますか?
いいえ。FLACは可逆形式なので、デコード後の音声サンプルは元のサンプルと一致します。ファイルサイズは音声の内容や設定によって変わり、一定の削減率はありません。MP3は非可逆形式で、音声情報を削除するためファイルが小さくなることがよくあります。
FLAC の圧縮レベル(0〜8)は何をするものですか?
FLAC の圧縮レベルは、音質ではなく、エンコード時間と CPU の負荷に影響します。すべてのレベル(0 から 8)で、デコード結果はまったく同じオーディオになります。レベル 8 はエンコードに時間がかかりますが、わずかに小さなファイルを生成します。
FLAC はアルバムカバーのアートワークを保存できますか?
はい。FLAC には、フロントカバー、バックカバー、ライナーノーツをオーディオファイル内に直接埋め込むための専用の METADATA_BLOCK_PICTURE ブロックが含まれています。
関連するFLAC変換ペア
ロスレス形式のFLACファイルを圧縮されたMP3ファイルに変換すると、ファイルサイズが大幅に小さくなり、音楽ライブラリを古いメディアプレイヤーや容量制限のあるモバイル端末でも再生できるようになります。
MP3からFLACへの変換では、デコードしたPCM音声を可逆圧縮しますが、元のMP3圧縮で削除された周波数は復元できません。
Apple Lossless Audio Codec ファイルを FLAC マスターに変換することで、アーカイブ音楽コレクションを Apple 独自の MP4 コンテナから、数千のメディアプレーヤーやハードウェアデバイスでサポートされているオープンな標準形式に移行できます。
ロスレス形式間で適切に変換すれば音声サンプルを保持できますが、結果は変換ツールによって異なります。
非圧縮の WAV PCM を FLAC マスターに変換すると、音声データを 1 ビットも失うことなく、ファイルサイズを半分に縮小できます。
FLAC マスターを WAV PCM に変換すると、妥協のないハードウェア互換性のために、圧縮された音声が生のパルスコード変調データに展開されます。
Monkey’s Audio(APE)のトラックをFLACに変換すると、多くのプレーヤーやデバイスでより幅広くサポートされる可逆音声になります。
AIFFをFLACに変換するとファイルサイズを小さくできますが、圧縮率は音声の内容によって異なります。