Files
filmcraft/crates/engine/Cargo.toml
aiongg f565f7b38d fix(engine): follow stored media paths only on this computer or the project's share
Media and proxy paths read from a project file, a project template or an
interchange file are opened only when they name a local file or a file on
the network share the document itself is on (craft-docpath); a relative
path is taken from the document's folder. Other paths count as missing:
the item renders the offline slate with the reason, the open says how many
were not opened, and Link Media lists them. This covers the open-time
scan, rendering and proxies, the growing-files look and interchange
import. Files imported or linked in this session are opened as given.

The Scratch Disks folders use the same check, and Captured Audio and Video
(voice-over takes, pasted images, the default proxy folder) and Audio
Previews follow the rule Auto Save and Video Previews already follow.
2026-10-16 17:27:39 +00:00

53 lines
1.8 KiB
TOML

[package]
name = "filmcraft-engine"
description = "FilmCraft engine façade: session, command registry, history, media pool"
version.workspace = true
edition.workspace = true
license.workspace = true
rust-version.workspace = true
[lints]
workspace = true
[features]
default = []
# Speech-to-text with Whisper (candle, CPU). Off by default and in wasm builds.
whisper = ["filmcraft-speech/whisper"]
# Speech-model downloads over HTTPS.
speech-download = ["filmcraft-speech/download"]
# Natural voices for Text to Speech: Kokoro-82M on candle (CPU) and their download.
neural-voices = ["filmcraft-tts/kokoro", "speech-download"]
[dependencies]
filmcraft-time = { workspace = true }
filmcraft-geom = { workspace = true }
filmcraft-color = { workspace = true }
filmcraft-frame = { workspace = true }
filmcraft-media = { workspace = true }
filmcraft-codecs = { workspace = true }
filmcraft-project = { workspace = true }
filmcraft-edit = { workspace = true }
filmcraft-render = { workspace = true }
filmcraft-scopes = { workspace = true }
filmcraft-text = { workspace = true }
filmcraft-audio-dsp = { workspace = true }
filmcraft-export = { workspace = true }
filmcraft-mxf = { workspace = true }
filmcraft-format = { workspace = true }
filmcraft-interchange = { workspace = true }
filmcraft-captions = { workspace = true }
filmcraft-speech = { workspace = true }
filmcraft-tts = { workspace = true }
serde = { workspace = true }
serde_json = { workspace = true }
thiserror = { workspace = true }
log = { workspace = true }
craft-docpath = { workspace = true }
web-time = "1"
[dev-dependencies]
filmcraft-testkit = { workspace = true }
filmcraft-dng = { workspace = true, features = ["writer"] }
filmcraft-isobmff = { workspace = true }
image = { version = "0.25", default-features = false, features = ["png", "gif"] }