mirror of
https://github.com/storytold/craft-libs.git
synced 2026-11-12 10:03:51 +00:00
* craft-video: VP8 key-frame encoder (`vp8-encode` feature) Moves effectcraft's effectcraft-vp8enc here: the lossy picture of a WebP image or animation frame, written from RFC 6386. Rate-distortion choice between the 16x16 and B_PRED intra modes, per-frame token probability updates, loop filter level from the quantizer. `vp8` now turns on `vp8-decode` and `vp8-encode`, as `vp9` does; the decoder's tests and examples require `vp8-decode`. The tests decode the encoder's frames with this crate's decoder: with the loop filter off it reproduces the encoder's reconstruction exactly. * craft-webp: animated WebP writer, lossy through craft-video (feature vp8) The VP8X/ANIM/ANMF container around frames another encoder made (lossy with an alpha plane, or lossless VP8L), and with feature vp8 whole lossy animations from RGBA frames through craft-video's VP8 key-frame encoder. --------- Co-authored-by: Justin A. Wilson <waj334@gmail.com>
24 lines
834 B
TOML
24 lines
834 B
TOML
[package]
|
|
name = "craft-webp"
|
|
description = "WebP container (RIFF) reader and writer: canvas, alpha and animation frames from the chunk headers, and the container around an encoded VP8 frame with alpha and metadata chunks."
|
|
version.workspace = true
|
|
edition.workspace = true
|
|
license.workspace = true
|
|
rust-version.workspace = true
|
|
repository.workspace = true
|
|
|
|
[lints]
|
|
workspace = true
|
|
|
|
[features]
|
|
# Decoding every frame through the `image` crate's WebP decoder, with bounded memory.
|
|
frames = ["dep:image"]
|
|
|
|
[dependencies]
|
|
thiserror = { workspace = true }
|
|
image = { version = "0.25", default-features = false, features = ["webp"], optional = true }
|
|
|
|
[dev-dependencies]
|
|
# Decodes the files the writer makes and writes still test files; not a product dependency.
|
|
image = { version = "0.25", default-features = false, features = ["webp"] }
|