88 lines
4.0 KiB
YAML
88 lines
4.0 KiB
YAML
# Opt-in profile for the LOCAL cinematic-highlight Proof of Concept.
|
|
# Activate with: --spring.profiles.active=localpoc (or SPRING_PROFILES_ACTIVE=localpoc)
|
|
#
|
|
# This profile does NOT change base/production defaults. It points only at concrete, pre-provisioned
|
|
# local model paths, keeps render disabled + approval required, isolates PoC input/output, and never
|
|
# starts a network-capable bootstrap script.
|
|
#
|
|
# Prohibitions still in force: no rendering without an explicit approved.flag for the specific project,
|
|
# no external AI, no placeholder audio. Models load offline from models/ (the worker sets HF_HUB_OFFLINE).
|
|
|
|
video-clipping:
|
|
# Keep the other schedulers out of the PoC run.
|
|
folder-scheduler:
|
|
enabled: false
|
|
|
|
editing:
|
|
enabled: true
|
|
|
|
# Isolated PoC output tree (base output/ is left untouched).
|
|
highlight-project-directory: ./output/localpoc/highlight-projects
|
|
|
|
# Soft cross-dissolves between montage beats (0 = hard cuts). Softens the abrupt cut into the slow-mo payoff.
|
|
crossfade-seconds: 0.25
|
|
|
|
# R13 cut-to-the-music: snap cut boundaries onto the generated score's beat grid (needs the asset venv).
|
|
beat-sync-enabled: true
|
|
|
|
# R14 subject-tracking reframe: follow the detected subject (YOLO/CV venv) instead of a static centre crop.
|
|
subject-reframe-enabled: true
|
|
|
|
# Tier-2 vision JUDGE: prefer the stronger Qwen2.5-VL (llama.cpp/GGUF) backend. It falls back to moondream
|
|
# with a loud WARN if the binary env (LLAMACPP_SERVER_BIN / LLAMACPP_MTMD_BIN) or weights aren't provisioned
|
|
# — so this default never silently degrades. See docs/LOCAL-MODELS.md.
|
|
vision-caption-script: ./tools/vision_caption_llamacpp.py
|
|
|
|
assets:
|
|
# Empty/absent asset folders -> the pipeline generates assets with local models instead of copying.
|
|
music-folder: ./input/localpoc/assets/music
|
|
sfx-folder: ./input/localpoc/assets/sfx
|
|
fonts-folder: ./input/localpoc/assets/fonts
|
|
luts-folder: ./input/localpoc/assets/luts
|
|
voiceover-folder: ./output/localpoc/highlight-projects/_voiceover-cache
|
|
|
|
# Heuristic visual analysis for the first PoC (real CV worker requires the prohibited bootstrap
|
|
# script; wiring resident CV is a Phase 3 quality improvement). No network, no fallback ambiguity.
|
|
visual-analysis:
|
|
provider: heuristic
|
|
fallback-to-heuristic: false
|
|
local-cv-worker:
|
|
auto-start: false
|
|
|
|
# The other (multi-clip) local director scheduler is not part of the highlight PoC.
|
|
local-director:
|
|
enabled: false
|
|
|
|
# Local generative audio models — concrete pre-provisioned paths. Never auto-start the bootstrap.
|
|
local-asset-worker:
|
|
auto-start: false
|
|
strict-runtime: false
|
|
python-binary: ./.venv-local-asset/bin/python
|
|
script: ./tools/local_asset_worker.py
|
|
piper-binary: ./.venv-local-asset/bin/piper
|
|
piper-model-path: ./models/piper/en_US-lessac-medium/en_US-lessac-medium.onnx
|
|
music-model: ./models/musicgen-small/config.json
|
|
sfx-model: ./models/audioldm2/model_index.json
|
|
|
|
# Single-source highlight flow: ingest + candidate generation ON, render OFF, approval REQUIRED.
|
|
highlight-scheduler:
|
|
enabled: true
|
|
source-directory: ./input/localpoc/highlights/source
|
|
working-directory: ./input/localpoc/highlights/working
|
|
processed-directory: ./input/localpoc/highlights/processed
|
|
rejected-directory: ./input/localpoc/highlights/rejected
|
|
render-enabled: false
|
|
require-director-approval: true
|
|
# Tier-1 automatic director: compose director/montage.json from measured motion + audio after analysis.
|
|
auto-director-enabled: true
|
|
# Tier-2 vision director: augment the montage with a semantic overlay + scene-informed music (moondream2).
|
|
vision-director-enabled: true
|
|
max-highlights-per-source: 3
|
|
# No fixed highlight length — a highlight can be as long as the story needs (soft candidate hints only).
|
|
highlight-min-duration-seconds: 2
|
|
highlight-max-duration-seconds: 3600
|
|
|
|
logging:
|
|
level:
|
|
org.example.videoclips: INFO
|