週次オープンソース:コーデック群が適合性を挽き、fstool が littlefs を覚える
コミット数では静かな週で、しかも非常に一様だった:ほぼすべての コミットが Pure-Rust のメディアフレームワーク oxideav の中に 入り、番号付きの作業ラウンド(447 から 450)がまた一組、 コーデッククレート群を一斉に横断した。新しいリポジトリはない—— 代わりに適合性作業の幅広い一掃で、進捗の尺度はリファレンス ストリームがいくつバイト厳密に復号できるかだ。コーデックの外では、 fstool がファイルシステムを二つとブラウザ内エディタを加えた。
oxideav-h266:スコアカードを登る
oxideav-h266—— Pure-Rust の H.266 / VVC デコーダ——は最も読みやすい週だった。 適合性コーパスに対するスコアカード(pass / fail / unsupported / error)を付けているからだ。三ラウンド分のトランシェで 1P/14F/33U/8E から 34P/12F/9U/1E へ動いた。ラウンド 447 は affine 非マージのゲートを解消し、時間方向の動き、GPM、PROF/BDOF の 境界を仕様厳密にした。ラウンド 449 は コーパスのイントラ ピクチャをすべてバイト厳密 にし、SBT のパースを入れたことで パース非同期のエラー群がまるごと消えた(29E → 2E)。ラウンド 450 は MMVD オフセット導出、DMVR のクロマ境界、CIIP のゲート、空間 マージ走査を直し——「poc-1 luma inter」の失敗群もそれとともに 崩れた。
oxideav-opus:DTX と低レート復号
oxideav-opus は、 実際のストリームが頼る Opus の部分を埋めた。DTX(不連続送信) が両側で動く——400 ms リフレッシュ付きの SILK エンコーダ側抑制、 CELT-only とハイブリッドの DTX、長さゼロのフレームを隠蔽を通して 保持——リファレンスストリームのフィクスチャが恒久的なゲートだ。 RFC 7845 §4.1 のギャップ修復は欠落区間に PLC パケットを合成する。 デコーダは全経路で 低い出力レート(8 / 12 / 16 / 24 kHz)を 覚え、SILK リサンプラはリファレンスとビット厳密。コーデックは oxideav-core を通して本物のデコーダ/エンコーダのファクトリ (型付きのエンコーダオプション付き)を登録するようになった。
H.264 と H.265:広がるエンコーダ
古い方の二つの映像コーデックは、今週エンコーダに時間を使った。
oxideav-h264 は
モノクロ 4:0:0 のエンコード(CAVLC と CABAC、I/P/B、8×8 変換)
と、両側での separate colour plane 符号化——§8.1 の三回呼び出し
復号とプレーンごとのエンコーダ——を加えた。
oxideav-h265 は
レート制御を得た:平均ビットレート、ピラミッド経路、VBV 制約
(bufsize)、加えて空間適応量子化——最初の cu_qp_delta
ライタ——と VUI のフレームレート宣言。
JPEG XL と MPEG-TS
oxideav-jpegxl は
注目すべき節目に達した:ISO 18181-2 のファイル形式(型付き
ボックス、jbrd バンドル)と バイト厳密な JPEG 再構築——
再圧縮した JPEG をビット単位で元のファイルに戻せる JPEG XL の機能で、
サブサンプリングされたトランスコードも含む。
oxideav-mpegts は
北米の放送に取り組んだ:ATSC PSIP のテーブル一式(A/65 ——
STT、MGT、VCT、RRT、EIT/ETT、DCCT)と Annex C の Huffman テキスト
伸長、マルチプレクサ側の CAT と TDT/TOT の出力、宣言された Rmax
からの映像 T-STD ペーシング。いずれも敵対的入力と fuzz の
バッテリの下で。
fstool:littlefs、FAT12/16、そしてブラウザエディタ
fstool——ディスク イメージ、ファイルシステム、アーカイブを作り・調べ・変換し・ 再パックするツール——は littlefs(マイコンでよく使われる ファイルシステム、lfs2 イメージの読み書きとインプレース編集)と、 FAT32 に並ぶ FAT12 / FAT16 を加え、dosfstools と mtools に 対して相互検証した。新しいインメモリ作成層は空のファイルシステム やパーティション分割されたディスクを作り、その上の Web ビルド はブラウザ内で直接イメージを作成・編集・ダウンロードできる。 ext の修正はジャーナルの revoke レコードとインライン symlink に 及び、v0.4.21 と v0.4.22 をリリースした。
今週その他
- oxideav-av1 — S フレーム(switch frame)、フォーマット横断のフィルムグレイン、 複数タイルでの superres、エラー耐性のあるインターフレームの エンコーダ作業で、自己エンコードのコーパスを 133 から 151 ストリームへ。
- oxideav-h263 — Annex V のデータ分割スライス、Annex R の独立セグメント復号、 UMV+ 動きベクトル、そして無限ループと二次の再復号を見つけた 四ターゲットの fuzz ハーネス。
- oxideav-ape — 予測器カスケードが入り、Monkey's Audio がフィクスチャコーパスで ファイル丸ごとバイト厳密に復号できるようになった。レジストリにも 接続済み。
- oxideav-vorbis は IMDCT を FFT 分解(O(N log N))に移した。 oxideav-mp2 は §2.5 マルチチャンネルエンコーダを得た。oxideav-wma は重複再構築とレジストリエントリを得た。 oxideav-basic は WAVE_FORMAT_EXTENSIBLE への自動昇格を覚えた。
- oxideav-png と oxideav-raster — バイト厳密を保った性能作業のプロファイリングラウンド(単一 アロケーションの PNG 復号、サンプリングタップのキャッシュ、 O(1) 半径のモルフォロジー)。
- oxideav-nsf — NES サウンドプレーヤのエミュレートされた CPU に、halt サイクル厳密な DMC/OAM タイミングを持つ命令以下粒度の DMA エンジン。
来週
コーデックのラウンドは続く——H.266 に残る失敗ストリームは短い リストになり、エンコーダは広がり続ける。fstool には新しい作成層の 後ろに、さらにコンテナとファイルシステムの形式が並んでいる。