-
-
Notifications
You must be signed in to change notification settings - Fork 38
Troubleshooting and FAQ
Common issues, their solutions, and frequently asked questions.
Error: Gemini AI analysis fails with authentication error.
Fix: Ensure your .env file contains a valid Gemini API key:
GOOGLE_API_KEY=your-key-here
Get one at aistudio.google.com/apikey.
Error: FileNotFoundError: ffmpeg not found or ffmpeg is not recognized
Fix: Install FFmpeg and ensure it's in your system PATH:
- Windows: Download from ffmpeg.org and add to PATH
-
Linux:
sudo apt install ffmpeg -
macOS:
brew install ffmpeg - Colab/Kaggle: FFmpeg is pre-installed
Error: torch.cuda.OutOfMemoryError or RuntimeError: CUDA out of memory
Fix: Try these solutions in order:
- Use a smaller Whisper model:
--whisper-model medium - Use int8 compute type:
--whisper-compute-type int8 - Force CPU:
--whisper-device cpu - Use
--use-dlp-substo skip Whisper entirely (YouTube sources only)
Error: Whisper crashes with compute type errors on Kaggle T4.
Fix: Use float32:
python main.py --url "VIDEO_URL" --whisper-compute-type float32Error: Split-screen or camera-switch fails with Pyannote error.
Fix: This is a Pyannote version compatibility issue. Ensure you have the latest version:
pip install --upgrade pyannote.audioError: 401 Unauthorized when using --split-screen or --camera-switch
Fix:
- Create a token at huggingface.co/settings/tokens
- Accept the Pyannote model agreement
- Add to
.env:HF_TOKEN=hf_your-token
Alternative: Use --split-trigger face which doesn't require a token:
python main.py --url "VIDEO_URL" --split-screen --dynamic-split --split-trigger faceError: HTTP Error 429: Too Many Requests when downloading from Google Drive.
Fix: The system uses gdown for Google Drive downloads. If rate-limited:
- Wait a few minutes and retry
- Use a direct download link
- Download the file manually and use
--source local
Error: Rendering crashes when source video uses AV1 codec.
Fix: The system automatically excludes AV1 (av01) codecs. If issues persist, try:
python main.py --url "VIDEO_URL" --source-height 1080Error: IndexError: tuple index out of range during Whisper transcription for TikTok videos.
Fix: The system automatically prefers H.264 for non-YouTube sources. If issues persist, the video may need to be downloaded manually.
Error: Hook glitch teaser is invisible or glitchy at 2K/4K resolution.
Fix: This was fixed in v0.9.11. Ensure you're using the latest version. The glitch video now dynamically scales to match output dimensions.
Any NVIDIA CUDA-compatible GPU works. Tested on:
- NVIDIA T4 (Google Colab / Kaggle)
- NVIDIA RTX 3060 / 3070 / 3080 / 3090
- NVIDIA RTX 4060 / 4070 / 4080 / 4090
CPU-only mode is also available (slower but functional).
Processing time depends on:
- Video length
- Number of clips
- GPU vs CPU
- Enabled features
Typical benchmarks for a 30-minute source video, 7 clips:
| GPU | Time |
|---|---|
| RTX 3080 | ~15-20 minutes |
| T4 (Colab) | ~25-35 minutes |
| CPU only | ~60-90 minutes |
Yes! The project is open source. However, ensure your BGM music is royalty-free and your source video content is licensed for commercial use.
Use YouTube's built-in subtitles:
python main.py --url "VIDEO_URL" --use-dlp-subsYes! Supported platforms:
- TikTok:
--source tiktok - Instagram:
--source instagram - Google Drive:
--source gdrive
- Find the
gemini_response.jsonin your output directory - Re-run with
--load-gemini-jsonto skip the AI analysis step:python main.py --url "VIDEO_URL" --load-gemini-json
Try these approaches:
-
Change the Gemini model:
--gemini-model gemini-2.5-flash -
Increase clip count:
--clips 10(more choices = better chance of good clips) -
Try NVIDIA NIM:
--ai-provider nvidia -
Manual curation: Use
--load-gemini-jsonto edit the JSON and re-render
The pipeline creates intermediate files that can take up significant space. Clean up with:
bash cleanup.shThis removes temporary files while preserving final clips and job history.
- Getting Started β Installation guide
- Google Colab Guide β Cloud GPU setup
- CLI Reference β All available options