この文書の状態
この節では、公開時点におけるこの文書の状態を説明する。現在の
W3C 刊行物の一覧と、この
技術報告書の最新版は、W3C
標準および草案の索引で確認できる。
本仕様へのフィードバックやコメントを歓迎する。
本仕様に関する議論には GitHub Issues の利用が推奨される。
また、メディアワーキンググループのメーリングリストである public-media-wg@w3.org (アーカイブ) にコメントを送信することもできる。
この草案では、ワーキンググループで今後議論する必要がある未解決の問題の一部を示している。
これらの問題の妥当性を含め、その結論についてはまだ何も決定されていない。
この文書は、メディアワーキンググループによって、
ノート
トラックを通じてグループノート草案として公開された。
グループノート草案は、
W3C およびその会員によって承認されたものではない。
この文書は草案であり、いつでも更新、置換、または他の文書によって廃止される可能性がある。
この文書を進行中の作業以外のものとして引用することは適切ではない。
W3C 特許ポリシーは、この文書に対していかなるライセンス
要件や確約も課さない。
この文書には、2025年8月18日付 W3C
プロセス文書が適用される。
1.
完全修飾されたコーデック文字列
コーデック文字列は "flac" である。
2. EncodedAudioChunk のデータ
EncodedAudioChunk
[[internal data]]
の内容は、
[FLAC] に記載されている "FRAME" であることが想定される。
3.
AudioDecoderConfig の説明
description
は必須であり、次の内容でなければならない。
-
バイト列 0x66 0x4C 0x61 0x43 (ASCII では "fLaC")
-
[FLAC]
の第7節に記載されている、STREAMINFO ブロックと呼ばれる metadata block
-
任意で、本仕様では使用されないその他のメタデータブロック
sampleRate
および numberOfChannels
メンバーは、デコーダーが
description
から取得した値によって上書きされる。
注記: これは、FLAC
ビットストリームの冒頭部分に相当し、音声
フレームより前に位置する。
4. EncodedAudioChunk の型
FLAC を含む EncodedAudioChunk
の
[[type]]
は常に
"key"
である。
注記: 初期化が成功した後は、どの FLAC
パケットもいつでもエラーなくデコードできるが、
期待される音声出力が得られるとは限らない。
5.
AudioEncoderConfig の拡張
partial dictionary AudioEncoderConfig {
FlacEncoderConfig flac;
};
flac、型は FlacEncoderConfig
-
FLAC コーデックに固有の設定オプションを含む。
5.1. FlacEncoderConfig
dictionary FlacEncoderConfig {
[EnforceRange] unsigned long blockSize = 0;
[EnforceRange] unsigned long compressLevel = 5;
};
FlacEncoderConfig
が有効かどうかを確認するには、次の手順を実行する。
-
blockSize
が有効なブロックサイズではない場合、
その有効性は [FLAC]
の第5.1節で説明されているが、false を返す。
-
compressLevel
が指定されており、その値が
0 (最速、圧縮率が最も低い) から 8 (最も遅く、圧縮率が最も高い)
までの範囲 (両端を含む) にない場合、false を返す。
-
true を返す。
blockSize、型は unsigned long、既定値は 0
-
出力される
EncodedAudioChunk
の各フレームで使用するサンプル数を設定する。
注記: エンコーダーに既定で
ブロックサイズを推定させるには 0 を使用する。
compressLevel、
型は unsigned long、既定値は 5
-
エンコード時に使用する圧縮レベルを設定する。
6. プライバシーに関する考慮事項
[WEBCODECS] の プライバシー
に関する考慮事項の節を参照すること。
7. セキュリティに関する考慮事項
[WEBCODECS] の セキュリティ
に関する考慮事項の節を参照すること。
文書の
表記規則
適合要件は、
説明的な記述と
RFC 2119 の用語を組み合わせて表される。
キーワード「MUST」、「MUST NOT」、「REQUIRED」、「SHALL」、「SHALL NOT」、「SHOULD」、「SHOULD NOT」、「RECOMMENDED」、
「MAY」および「OPTIONAL」は、
この文書の規範的な部分において、
RFC 2119 に記載されている意味で解釈しなければならない。
ただし、可読性のため、
本仕様ではこれらの語がすべて大文字で記載されるわけではない。
本仕様のすべての本文は規範的である。
ただし、明示的に非規範的と記された節、例、注記を除く。[RFC2119]
本仕様の例は「for example」という語で導入されるか、
規範的な本文とは区別して、
class="example" が指定され、
次のように表示される。
参考情報としての注記は「Note」という語で始まり、
規範的な本文とは区別して、
class="note" が指定され、
次のように表示される。
注記、これは参考情報としての注記である。
索引
本仕様で定義される
用語
参照によって定義される
用語
-
[WEBCODECS] は以下の用語を定義する。
- "key"
- AudioEncoderConfig
- EncodedAudioChunk
- [[internal data]]
- [[type]]
- description
- numberOfChannels
- sampleRate
-
[WEBIDL] は以下の用語を定義する。
- EnforceRange
- unsigned long
参考文献
規範的な参考文献
- [RFC2119]
- S. Bradner. RFC で
要求レベルを示すために使用するキーワード. 1997年3月. 現行の最良の慣行. URL: https://datatracker.ietf.org/doc/html/rfc2119
- [WEBCODECS]
- Paul Adenot; Eugene Zemtsov. WebCodecs. 7
2026年10月. WD. URL: https://www.w3.org/TR/webcodecs/
- [WEBIDL]
- Edgar Chen; Timothy Gu. Web IDL 標準. 現行
標準. URL: https://webidl.spec.whatwg.org/
- [FLAC]
- 自由な可逆音声
コーデック. URL: https://datatracker.ietf.org/doc/draft-ietf-cellar-flac
- [WEBCODECS-CODEC-REGISTRY]
- Paul Adenot; Eugene Zemtsov. WebCodecs コーデック
レジストリ. 2026年9月24日. DRY. URL: https://www.w3.org/TR/webcodecs-codec-registry/
IDL 索引
partial dictionary AudioEncoderConfig {
FlacEncoderConfig flac;
};
dictionary FlacEncoderConfig {
[EnforceRange] unsigned long blockSize = 0;
[EnforceRange] unsigned long compressLevel = 5;
};