[package]
edition = "2024"
name = "lumen-engine"
version = "0.2.2"
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Core composition model and rendering orchestration for Lumen."
readme = "README.md"
license = "Apache-2.0"
repository = "https://github.com/lumiscia/lumen-oss"
[features]
cuda = ["lumen-ffmpeg?/cuda"]
experimental-msdf = ["lumen-text/experimental-msdf"]
ffmpeg = [
"dep:ffmpeg-next",
"dep:lumen-ffmpeg",
]
image = ["dep:image"]
json = [
"dep:anyhow",
"dep:serde_path_to_error",
]
metadata = []
metal = [
"dep:objc2-metal",
"lumen-ffmpeg?/metal",
"lumen-gpu/metal",
]
vulkan = [
"lumen-ffmpeg?/vulkan",
"lumen-gpu/vulkan",
]
webgl = []
[lib]
name = "lumen_engine"
path = "src/lib.rs"
[[test]]
name = "gpu_compile"
path = "tests/gpu_compile.rs"
[[test]]
name = "node_schema"
path = "tests/node_schema.rs"
[dependencies.anyhow]
version = "1.0.101"
optional = true
[dependencies.bytemuck]
version = "1.25.0"
features = ["derive"]
[dependencies.ffmpeg-next]
version = "8.0"
optional = true
[dependencies.image]
version = "0.25.9"
features = [
"png",
"jpeg",
"webp",
"gif",
"bmp",
"tiff",
"ico",
]
optional = true
default-features = false
[dependencies.lumen-ffmpeg]
version = "0.2.2"
optional = true
package = "lumen-engine-ffmpeg"
[dependencies.lumen-gpu]
version = "0.2.2"
package = "lumen-engine-gpu"
[dependencies.lumen-macros]
version = "0.2.2"
package = "lumen-engine-macros"
[dependencies.lumen-text]
version = "0.2.2"
package = "lumen-engine-text"
[dependencies.objc2-metal]
version = "0.3.2"
optional = true
[dependencies.serde]
version = "1.0.228"
features = ["derive"]
[dependencies.serde_json]
version = "1.0.145"
[dependencies.serde_path_to_error]
version = "0.1.20"
optional = true
[dependencies.smallvec]
version = "1.15.1"
[dependencies.thiserror]
version = "2.0.18"
[dependencies.tracing]
version = "0.1.44"
[target.'cfg(all(target_arch = "wasm32", target_os = "unknown"))'.dependencies.glemu]
version = "0.1.2"
features = [
"api",
"video-frame",
]
default-features = false
[target.'cfg(all(target_arch = "wasm32", target_os = "unknown"))'.dependencies.js-sys]
version = "0.3"
[target.'cfg(all(target_arch = "wasm32", target_os = "unknown"))'.dependencies.wasm-bindgen]
version = "0.2"
[target.'cfg(all(target_arch = "wasm32", target_os = "unknown"))'.dependencies.web-sys]
version = "0.3"
features = [
"VideoFrame",
"WebGl2RenderingContext",
"console",
]