Local Tools
Whisper + FFmpeg. Your music, your computer. No paid API, keys or generation credits.
Working in the website now
MP3/WAV uploads, waveform and tempo estimates, editable lyric and word timing, karaoke highlighting, glow/neon/kinetic text, free music-themed artwork, uploaded footage, pan/zoom, fade/slide transitions, multiple short clip ranges and browser video export. MP4 recording is browser-dependent; WebM is never mislabeled as MP4. Projects and export history still use the built-in key-value store. Uploaded files are public.
Open lyric video editor →Local Whisper
Not checked on this computerAutomatic multilingual transcription with segment and estimated word timestamps. Runs only when the companion and Whisper are installed. Singing is harder than speech: review every result.
Local FFmpeg
Not checked on this computerConverts your browser composition to H.264/AAC MP4 in 9:16, 16:9 or 1:1. Requires FFmpeg with libx264 on PATH. Browser render and local conversion are real processing, not a simulated cloud job.
Optional Demucs
Not checked on this computerSeparate vocals before Whisper for difficult mixes. Enable in the Lyrics panel after installation. Uses additional processing time, memory and model downloads; not required.
Connect this computer
Download worker.py above, install Python and FFmpeg, then run these commands in its folder. The companion binds only to the loopback interface. It does not run inside this hosted website or on your phone. Model weights download on first use; after installation, transcription runs locally. Keep the terminal open.
1. Install Whisper (FFmpeg must also be installed on PATH)
python -m pip install openai-whisper2. Start the companion
python worker.py --model baseOptional vocal separation
python -m pip install demucsHardware: start with tiny/base on CPU; larger models take more memory and time. An NVIDIA CUDA GPU is optional (start with --device cuda after configuring PyTorch). Long songs and Demucs can take longer than the song itself. The health check detects installations, not model accuracy or a successful render.
Your browser may ask for local-network permission or block localhost requests from an iframe. Grant permission where supported. For a preview with a different origin, start worker.py with --origin followed by the preview's exact origin; current origin: https://lyriglow-ai.genmb.com. The published origin is already allowed. The JSON-import and command-line conversion paths below remain available if the browser blocks the connection.
Command-line workflow (no browser-to-local connection)
Transcribe the original song on your computer, then import the resulting JSON from the Lyrics panel. Or download a finished browser video and convert it to MP4 with FFmpeg.
whisper song.mp3 --model base --word_timestamps True --output_format json --task transcribeffmpeg -i video.webm -vf "scale=trunc(iw/2)*2:trunc(ih/2)*2" -c:v libx264 -pix_fmt yuv420p -c:a aac -movflags +faststart video.mp4Convert an existing browser video
Sends this selected file only to your local companion, not to a paid provider. Connection and FFmpeg setup are required. The result is downloaded locally, not added to hosted Export History.
Free processing, real setup requirements
No OpenAI API or Shotstack account is used by this workflow. Built-in text suggestions remain optional and have platform rate limits; they never block manual editing or exports. Generated backgrounds are procedural artwork, not paid AI generation. Hosting and public file storage retain the platform's actual file-size and space quotas. The local companion uses temporary files and checks exact browser origins; only allow origins you trust.