mirror of
https://github.com/storytold/filmcraft.git
synced 2026-11-02 18:09:21 +00:00
cb2ac66c3b
- av1: a 4:2:2 stream (profile bit flipped) could reach blocks with no chroma size (BLOCK_INVALID) and index MAX_TX_SIZE_RECT out of bounds; reject them with an error in decode_block. - av1: frame size accepted up to 65536x65536 (gigabytes of buffers from a few header bytes); cap at 16384 per side and 2^27 samples. - mpeg2v: 16383x16383 4:4:4 sequences (gigabytes per picture) are refused; area capped at 2^25. - fuzz_hostile tests (truncation, header byte/bit sweeps, random mutation) for h264, hevc, vp8, vp9, av1, mpeg2v, apv, prores and dnx; ffmpeg-based ones skip without ffmpeg. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
23 lines
519 B
TOML
23 lines
519 B
TOML
[package]
|
|
name = "filmcraft-vp9"
|
|
description = "Clean-room pure-Rust VP9 decoder (VP9 Bitstream & Decoding Process Specification)"
|
|
version.workspace = true
|
|
edition.workspace = true
|
|
license.workspace = true
|
|
rust-version.workspace = true
|
|
|
|
[lints]
|
|
workspace = true
|
|
|
|
[features]
|
|
default = ["threads"]
|
|
threads = ["dep:rayon"]
|
|
|
|
[dependencies]
|
|
filmcraft-bitstream = { workspace = true }
|
|
thiserror = { workspace = true }
|
|
rayon = { workspace = true, optional = true }
|
|
|
|
[dev-dependencies]
|
|
filmcraft-testkit = { workspace = true }
|