A fully automated, deterministic TikTok motion graphics pipeline using Remotion + signal processing only. No AI is used anywhere in the workflow.
git clone <this-repo>cd video-workflowpython3 -m pip install -r tools/requirements.txtnpm installcd remotion && npm install && cd ..cp /path/to/your/audio.mp3 input/./run.sh --dur 10 --title "My Title"open assets/renders/<job>.mp4
This will fail gracefully if there is no audio in input/:
./run.sh --dur 5./run.sh performs:
- Dependency checks (
tools/doctor.sh) - Audio prep (trim + loudness normalization -> wav)
- Cue detection (librosa onset strength + peak picking)
- Props generation for Remotion
- Headless render to vertical 1080x1920 MP4
- Writes job notes and hashes
./run.sh --audio input/myfile.mp3 --start 00:12.0 --dur 10 --title "My Title" --slug my_slug- If
--audiois omitted, the newest file ininput/is used. - Output MP4 goes to
assets/renders/<job>.mp4 - Job folder and logs go to
jobs/<job>/
This repository is the Codex skill directory (root). The canonical skill file is SKILL.md.
For compatibility, a copy also lives at .codex/skills/tiktok-motion-factory/SKILL.md.
Example invocation:
$tiktok-motion-factory
The skill will ask for an audio path (or use the newest file in input/), then run ./run.sh end-to-end.
.codex/skills/tiktok-motion-factory/SKILL.md
remotion/
src/Root.tsx
src/index.ts
tools/
prep_audio.sh
analyze_cues.py
make_props.ts
doctor.sh
input/
assets/
audio/
renders/
jobs/
- No downloading from TikTok/Spotify/YouTube/etc. Provide local audio only.
- Compatible with macOS and Linux.
- If you pass a URL, the pipeline will refuse and ask for a local file.