mirror of
https://github.com/storytold/filmcraft.git
synced 2026-10-26 16:09:46 +00:00
4304cd9382
- GpuRendering defaults to Off (opt-in per export) until measured on Windows and macOS; docs and ROADMAP say so. - The shared export device installs an uncaptured-error handler and a device-lost callback that log once and retire GPU export for the session (frames go to the CPU) instead of wgpu's default panic. - RendererPool drops a renderer that panicked and retires the pool, so the rest of the export renders on the CPU (regression test in gpu_hook_scenarios); the duplicate hostile-size test that raced on the global registry is folded into it. - Rebased onto main's render_plan/transitions: render_export_prepared reads the linear accumulator after render_plan; transition (Composite) plans fall back to the CPU. - es/ja rows for the new Export strings; web_time::Instant in the export pipeline. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
31 lines
976 B
TOML
31 lines
976 B
TOML
[package]
|
|
name = "filmcraft-gpu"
|
|
description = "wgpu compositor: YUV/RGB layer sampling, linear-light premultiplied compositing in WGSL"
|
|
version.workspace = true
|
|
edition.workspace = true
|
|
license.workspace = true
|
|
rust-version.workspace = true
|
|
|
|
[lints]
|
|
workspace = true
|
|
|
|
[dependencies]
|
|
filmcraft-color = { workspace = true }
|
|
filmcraft-frame = { workspace = true }
|
|
filmcraft-geom = { workspace = true }
|
|
filmcraft-project = { workspace = true }
|
|
filmcraft-render = { workspace = true }
|
|
filmcraft-time = { workspace = true }
|
|
wgpu = { version = "30", default-features = false, features = ["wgsl"] }
|
|
log = { workspace = true }
|
|
pollster = "0.4"
|
|
rayon = { workspace = true }
|
|
|
|
[dev-dependencies]
|
|
pollster = "0.4"
|
|
filmcraft-export = { workspace = true }
|
|
image = { version = "0.25", default-features = false, features = ["png"] }
|
|
wgpu = { version = "30", features = ["wgsl", "metal", "vulkan", "dx12", "gles"] }
|
|
filmcraft-media = { workspace = true }
|
|
filmcraft-time = { workspace = true }
|