Create polished Quran recitation videos with a modern desktop interface, subtitle controls, and fast FFmpeg-based rendering.
- 🎬 Modern desktop UI with clean workflow tabs
- 🎯 Two generation modes: random batch + custom ayah ranges
- 🌍 Dual subtitle mode: Arabic + one selected language
- ⚙️ Quality controls: preset, CRF, bitrate, duration
- 📦 Distribution-ready output in
dist/QuranVideoGenerator
This repository is intentionally deep-cleaned and organized:
loki2/
├─ assets/
│ └─ icons/
│ └─ app_icon.ico
├─ docs/
│ └─ CLEANUP_REPORT.md
├─ scripts/
│ └─ README.md
├─ src/
│ ├─ app/
│ │ └─ gui_app.py
│ └─ core/
│ └─ quran_video_generator.py
├─ dist/ (ignored from git push)
│ └─ QuranVideoGenerator/
├─ gui_app.py # compatibility entrypoint
├─ quran_video_generator.py # compatibility export
├─ requirements.txt
└─ README.md
- Install dependencies:
pip install -r requirements.txt- Run the app:
python gui_app.pyUse the packaged build directly from:
dist/QuranVideoGenerator/QuranVideoGenerator.exe- or
dist/QuranVideoGenerator/Start.bat
- Windows (desktop app target)
- Python 3.10+ (if running from source)
- FFmpeg available via:
- system PATH (
ffmpegcommand), or - local executable files bundled beside the app
- system PATH (
- Random: generate multiple videos in one run
- Custom: select exact surah + ayah range + reciter
- Settings: control quality, output paths, subtitle language
gui_app.py: desktop interface, settings/state, async generation flowquran_video_generator.py: core media generation logic and FFmpeg integration- Progress callbacks are attached/detached per generation run to avoid stale state
- The distributable folder is already prepared in
dist/ - Keep the entire
dist/QuranVideoGeneratorfolder together when sharing
- Quran text/audio API: alquran.cloud
- Media processing: FFmpeg