- This index lists documentation files only, each with a one-line description.
- Do not add project history, task lists, architecture overviews, or narrative context here.
- When you add a new doc under
docs/ordocs/technical/, add exactly one bullet with its path and description.
ai-context.md- Core project architecture, rules, and conventions.
docs/guides/getting-started-windows.md- Windows: Pinokio search glitchframe (easiest); or manual order of installs (Python, optional Git, ffmpeg via winget), PowerShell, ZIP vs git clone, venv, PyTorch, run.
docs/technical/pinokio-package.md- Pinokio scripts (install.js,torch.js,start.js,pinokio.js);uv pip+ platform PyTorch; venvenv;ffmpegprereq; optionaldevbranch note.docs/technical/pinokio-lyrics-align-windows-handover.md- Handover prompt: Pinokio on Windows, Align lyrics / WhisperX / cuDNN, what we tried, open questions, revert notes.docs/technical/project-setup-and-config.md- Repo layout, pyproject/requirements, config paths, optionalpresets/*.yamlregistry.docs/technical/windows-venv-recovery-guide.md- Windows: step-by-step venv recovery after PyTorch / WhisperX lyrics-align issues (weights_only, cuDNN DLL mismatches).docs/technical/gradio-ui.md- Gradioapp.pytabbed UI, inputs, queue, placeholder actions, and run log.docs/technical/audio-ingest-and-cache.md- Upload ingest,cache/<hash>/WAV artifacts, and Gradio waveform preview.docs/technical/audio-analyzer.md- Beat/onset/spectrum/RMS/segment extraction, optional demucs vocal stem, andanalysis.jsoncache.docs/technical/musical-events.md- Schema v2 drop detection, build-up tension series, post-drop afterglow, and low/mid/high band transient envelopes for reactive shaders.docs/technical/spectrum-renderer-ffmpeg.md- M1 spectrum bars,bgr24ffmpeg pipe, NVENC mux withoriginal.wav, run outputs and CI encoder overrides.docs/technical/lyrics-aligner.md- WhisperX large-v3 word timings + Needleman-Wunsch alignment of pasted lyrics; inline[m:ss]anchors, typed--- tagmarkers, Silero VAD tighten, vocal-onset snap, andlyrics.aligned.jsonv3 cache (with per-word CTC score).docs/technical/lyrics-timeline-editor.md- Visual per-word timeline editor (Gradio tab + vanilla-JS waveform / drag handles) that writesmanually_edited: trueto the aligned JSON so re-aligns don't clobber user corrections;user-select: noneon word UI and high-contrast helpkbdstyles.docs/technical/waveform-peaks.md- Sharedcompute_peaksWAV→min/max column downsampling for canvas waveforms (pipeline/_waveform_peaks.py).docs/technical/effects-timeline.md-EffectKind/EffectClip/EffectsTimeline, per-kind settings allowlist, and atomiceffects_timeline.jsonload/save under the song cache.docs/technical/effects-editor-backend.md-load_editor_state/save_edited_timeline/bake_auto_scheduleinpipeline/effects_editor.py(peaks, ghost auto hints, 20 ms dedupe when baking).docs/technical/effects-timeline-editor.md-build_editor_htmlinpipeline/effects_editor.py: self-contained CSS + markup + inline JS (gr.HTML), 9 colour-coded rows (Beam, Glitch, Shake, Invert, Chromatic, Scanline, Fade, Smear, Block), master reactivity slider, per-clip gear panel bound toEFFECT_SETTINGS_KEYS,window._glitchframe_effects_stateround-trip, number keys 1–9 to add clips at the playhead,user-selecton clips and helpkbdcontrast.docs/technical/effects-timeline-renderers.md- Umbrella: frame post-pass renderers vs logo-path kinds; compositor order; links to per-renderer docs.docs/technical/effects-timeline-test-suite.md- Whichtests/test_effects_*.pyand compositor tests cover the effects-timeline stack; how to rununittest.docs/technical/effects-timeline-gradio-tab.md- Gradio Effects timeline tab inapp.py: handler wiring, audio URL precedence, savejs=pattern, clear-all semantics, and smoke test; orchestrator hook-up is out of scope here.docs/technical/screen-shake-renderer.md-shake_offset(t, clips, song_hash)for deterministicSCREEN_SHAKEpixel offsets from timeline clips (pipeline/screen_shake.py).docs/technical/chromatic-aberration-renderer.md-apply_chromatic_aberration(frame, t, clips, song_hash)for full-frame R/B channel split fromCHROMATIC_ABERRATIONclips (pipeline/chromatic_aberration.py).docs/technical/scanline-tear-renderer.md-apply_scanline_tear(frame, t, clips, song_hash)for horizontal band shifts fromSCANLINE_TEARclips (pipeline/scanline_tear.py).docs/technical/color-invert-renderer.md-invert_mix(t, clips)for a [0, 1] lerp weight toward a colour-inverted frame fromCOLOR_INVERTtimeline clips (pipeline/color_invert.py).docs/technical/fade-renderer.md-fade_alpha(t, clips)/apply_fade(frame, alpha)for a fade-to-black overlay fromFADEtimeline clips (pipeline/fade.py);direction_mode("in"/"out"),peak_alpha,ease_mode("smoothstep"/"linear"), duration driven directly by clip length.docs/technical/pixel-smear-renderer.md-apply_pixel_smear(frame, t, clips, song_hash)for deterministic horizontal pixel-streak datamosh fromPIXEL_SMEARtimeline clips (pipeline/pixel_smear.py).docs/technical/block-glitch-renderer.md-apply_block_glitch(frame, t, clips, song_hash)for deterministic full-frame macroblock displacement fromBLOCK_GLITCHtimeline clips (pipeline/block_glitch.py).docs/technical/effects-timeline-compositor.md- Compositor integration of the effects timeline: fixed-order post-stack frame pass, user BEAM / LOGO_GLITCH merging,auto_reactivity_masterscaling of the auto envelopes.docs/technical/pipeline-orchestrator.md- Rootorchestrator.py: stage order, cache-key rules, progress mapping, Gradio wiring.docs/technical/orchestrator-effects-timeline-wiring.md- Preview/full render: loadeffects_timeline.jsonintoCompositorConfig,OrchestratorInputsflags, merged auto-reactivity master.docs/technical/reactive-shader-layer.md- Offscreen moderngl fragment-shader pass, bundled GLSL shaders,analysis.json→uniforms mapping (onset_env,bar_phase,build_tensionsamplers + compositor-injectedbass_hit/transient_*/drop_hold), and the per-uniform shader authoring guide.docs/technical/reactive-composite-and-gradio-preview.md- Reactive pass blended over RGB background in GLSL, strict shader resolution, intensity, and Gradio one-frame preview.docs/technical/visual-style-presets.md- Shader-first Visual style tab,pipeline/visual_style.pydefaults per stem,style-*cache ids,BUILTIN_SHADERS, optional YAML presets.docs/technical/kinetic-typography.md- Skia per-word typography layer, motion presets keyed bytypo_style, andlyrics.aligned.json→RGBA frames.docs/technical/logo-composite.md- Optional PNG logo load, resize, corner/center placement, and NumPy alpha blend onto RGB/RGBA frames; Gradio branding preview.docs/technical/logo-rim-lights-prep.md-compute_logo_rim_prep: luma+edge line mask, alpha centroid, and stroke-vs-halouse_line_featuresfallback for future rim lighting.docs/technical/logo-rim-lights.md- Rim field overview:compute_logo_rim_light_patch/RimLightConfig, mask fallback, multicolour and audio modulation (cross-ref prep/color/audio/compositing/UI docs).docs/technical/logo-rim-lights-color.md- Multi-colour rim (rim_color_layers2--3), HSV spread, per-layer phase offsets,hue_drift_per_sec,song_hashpalette seed, and halo-only dual-tone behaviour.docs/technical/logo-rim-audio-modulation.md- Snare/bassRimAudioModulationoncompute_logo_rim_light_patch, compositorlogo_rim_audio_reactivestepper and analysis tracks.docs/technical/logo-rim-compositing.md-LogoGlowMode, rim vs classic neon blend order,composite_logo_onto_framekwargs, and compositor_effective_rim_light_config/ defaults.docs/technical/logo-rim-branding-ui.md- Gradio Branding accordion →OrchestratorInputs→resolve_logo_rim_compositor_fields/CompositorConfig; cosmetic-only (no song cache impact).docs/technical/logo-rim-beams.md- Pre-choreographed rim beams on drops + snare lead-ins: schedule algorithm, 10 s group gating, per-frame premultiplied RGBA patch, andBeamConfigtuning.docs/technical/rim-beams-bloom-handover.md- Ongoing investigation handover: beam glow cutoff, rim attachment, tried fixes, and suggested next steps for a future session.docs/technical/background-stills.md- SDXL FP16 keyframe generator, section-aware prompts, cached PNGs undercache/<hash>/background/, and smoothstep-crossfadebackground_frame(t)API.docs/technical/background-stills-hidream.md- Optional HiDream-O1-Image backend (out-of-process worker, manifest namespacing, env config) for higher prompt-fidelity background stills.docs/technical/background-keyframes-editor.md- Gradio Background keyframes tab: waveform timeline, per-clip prompts, regen/replace/crop,keyframes_timeline.json, auto-sync +selected_target_id, upload staging; no in-UI add-keyframe (fixed still count).docs/technical/rife-morph-background.md- Optional RIFE optical-flow morph between SDXL keyframes (defaults, cachemanifest_rife.json+rife_timeline/, CUDA bake, HF weights).docs/technical/background-modes.md-BackgroundSourcefactory, Ken Burns + AnimateDiff caches, AnimateDiff seeded from SDXL stills (init-latent injection, sequential SDXL→AnimateDiff lifecycle, cross-segment prompt travel), Gradio/orchestrator mode wiring (cross-ref SDXL stills doc).docs/technical/frame-compositor.md- Per-frame compositor pipeline: bg + reactive + typography + logo, compositor-scope shader uniforms (bass_hit,transient_lo/mid/hi,drop_hold) built once per render, bounded queue producer/consumer,bgr24ffmpeg stdin.docs/technical/audio-vignette.md- Audio-pulsing dark-edge vignette post-pass (between shader composite and typography) — adds baseline SDXL/shader contrast and a subtle bass + drop_hold breath at the corners.docs/technical/thumbnail-generator.md- Chorus/RMS frame pick,render_single_frame, Skia title overlay, andthumbnail.pngbesideoutput.mp4.docs/technical/metadata-generator.md-metadata.txt(title, description, chapters, tags) from analysis, lyrics, and preset;write_run_metadatainorchestrator.py.docs/technical/preview-and-render.md- Preview 10 s (loudest RMS window), full render, progress/ETA mapping, and ffprobe A/V sync validation.docs/technical/title-and-beat-pulse.md- Burned-inArtist — Titleoverlay (9-point grid, 3 sizes) and the logo-branding reactive stack: attack-dominant bass pulse, snare neon, snare squeeze, and RMS-jump impact glitch.docs/technical/gpu-memory.md- Sharedrelease_cuda_memory/move_to_cpuhelpers used by demucs, WhisperX, SDXL, and AnimateDiff to hand off VRAM cleanly between pipeline stages.