--- tags: [video-stack, setup] updated: 2026-10-16 --- # Tools and Setup Back to [[Video Stack - Overview]] ## Paths on TonyB - `C:\tts\tts.py` - Chatterbox voice script (`--ref ` for cloning) - `C:\tts\gemini_tts.py` - Gemini TTS; `--style` for directions, `--whole` (whole script in one request), `--fallback-model` (switch to Lite when the daily limit is hit) - `C:\tts\qwen3tts` - Qwen3-TTS venv (1.7B VoiceDesign / Base clone) - `C:\tts\chatterbox` - Chatterbox venv - `C:\tts\voices\user_announcer_ref.wav` - user's own announcer recording (20.65 s, mono 24 kHz) - `C:\tts\vt\vt.py` - voice-test runner - `C:\video\template` - video template - `C:\video\HERMES_PROMPT.md`, `C:\video\COPYWRITING.md` - `C:\video\examples\prop1ad` - worked example - `C:\video\voice_tests` - bake-off samples - Hermes profile: `C:\Users\fight\AppData\Local\hermes\profiles\explainer` - start with `explainer chat` ## GPU (RTX 3060, 12 GB) - Qwen llama-server on :1922 uses ~6.4 GB baseline. Never start Gemma (:1923) alongside it. - Peak VRAM seen: Chatterbox 3.9 GB, Qwen3-TTS VoiceDesign ~4.3-4.5 GB, Qwen3-TTS clone 5.0 GB. Run TTS models one at a time. - Long runs: one-time scheduled tasks (`schtasks /create ... /sc once`, `/run`), delete afterwards. ## Gemini - Free tier: 10 requests/day on flash-tts (resets ~4:50 PM PT); flash-lite-tts 3/min. Script auto-falls back to Lite. - Style must go in `speech_metadata.style` (interactions endpoint), never in the text. - `GEMINI_API_KEY` goes in the explainer profile `.env` (user step; not confirmed done). ## Music: ACE-Step 1.5 (primary, added 2026-10-16) - Install: `C:\Users\fight\Projects\ACE-Step-1.5` (v1.5.0, commit ca1e85f, `.venv`). License **MIT** (code + weights): commercial use OK. - Models: `acestep-v15-turbo` DiT + `acestep-5Hz-lm-0.6B` (1.7B LM also on disk, unused). - Server: scheduled task `ACEStepServer` -> `start_acestep_api.bat` -> Gradio UI + REST API at http://127.0.0.1:7860 (`/health`, `/release_task`, `/query_result`). Log: `acestep_server.log`. Restart: `schtasks /Run /TN ACEStepServer` (~80 s to load). Does not start at boot. - Wrapper: `C:\Users\fight\Projects\ACE-Step-1.5\.venv\Scripts\python.exe C:\tts\acestep_music.py --prompt ", no vocals" --duration 47 [--bpm N --key "D minor" --seed N] --out ` -> full mp3 + 20 s preview at -18 LUFS. - Speed: 22-30 s per 45 s instrumental. VRAM: shares the 3060 with Qwen (1922); peak ~11.7/12 GB during generation (CPU offload on). Don't run it at the same time as Qwen3-TTS/Chatterbox. - Test tracks: `C:\video\music\acestep\acestep_business.mp3`, `acestep_political.mp3`. - Fallbacks: code-synth `scripts/music/gen.py`/`gen2.py`; ElevenLabs `el_music.py` (optional, paid).