Turns a topic or keyword into a finished short video, handling script, voiceover, footage, subtitles and music automatically.
linyqh/NarratoAI
AI-powered tool that writes video narration scripts and automatically edits videos, with voiceover and subtitle generation, for commentary-style content.
- Stars
- 11,475
- Forks
- 1,731
- Open issues
- 8
- Last commit
- yesterday
What is it?
NarratoAI is an automated tool for producing narrated video commentary. It uses large language models to write scripts, then handles the editing workflow: cutting footage, generating voiceover, and producing subtitles in one pipeline.
The project supports short-drama commentary and remixing, one-click material merging and transcription, and export of CapCut (剪映) drafts so edits can be refined in that editor. It offers multiple TTS engines, including voice cloning options, and an optional AI background music feature. Vision-language models such as Qwen2-VL and TwelveLabs Pegasus can be used to understand video content.
It runs as a local Streamlit web app, installable via a Windows or macOS (Apple Silicon) bundle, Docker Compose, or from source with uv and Python 3.12+. A hosted cloud version is also available.
Key features
- 01Generates narration scripts from video content with LLMs.
- 02Automatically edits videos and merges footage.
- 03Produces voiceover with multiple TTS engines, including voice cloning.
- 04Generates subtitles through one-click transcription.
- 05Exports drafts to CapCut (剪映) for further editing.
- 06Runs as a local Streamlit web UI on Windows, macOS, or Docker.
Use cases
- Creating commentary or recap videos for film and TV clips.
- Remixing short drama footage into new narrated episodes.
- Batch-producing subtitled voiceover videos for social platforms.
Quick start
- 1
Clone the repository
git clone https://github.com/linyqh/NarratoAI.git - 2
Enter the project directory
cd NarratoAI - 3
Deploy with Docker Compose
docker compose up -d - 4
Open http://localhost:8501 in your browser
Things to know
- You must configure your own LLM API keys in config.toml before the script and narration features work.
- Local runs require Python 3.12 or newer.
- Some voice cloning engines (IndexTTS-1.5 MLX, IndexTTS-2 MLX) are only available for Apple Silicon Macs, and the IndexTTS-2 Windows package is not yet updated.
Topics
FAQ
- What is NarratoAI?
- AI-powered tool that writes video narration scripts and automatically edits videos, with voiceover and subtitle generation, for commentary-style content. NarratoAI is an automated tool for producing narrated video commentary. It uses large language models to write scripts, then handles the editing workflow: cutting footage, generating voiceover, and producing subtitles in one pipeline.
- Is NarratoAI free to use? What license does it have?
- NarratoAI is open source under the MIT license. Check the license terms before using it in commercial products.
- Is NarratoAI still maintained?
- Actively maintained. The last commit to NarratoAI was on Oct 19, 2026.
- What can I use NarratoAI for?
- Creating commentary or recap videos for film and TV clips. Remixing short drama footage into new narrated episodes. Batch-producing subtitled voiceover videos for social platforms.
- How do I install NarratoAI?
- Clone the repository: git clone https://github.com/linyqh/NarratoAI.git Enter the project directory: cd NarratoAI Deploy with Docker Compose: docker compose up -d Open http://localhost:8501 in your browser
- Where can I get NarratoAI?
- The source code and installation instructions are on GitHub: https://github.com/linyqh/NarratoAI
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
An AI video editing agent that turns natural-language instructions into clip search, script writing, music and font selection, and edits.
An LLM-powered web scraper, built on Streamlit, that extracts data from pages using OpenAI, Gemini, Ollama or LiteLLM models.
Desktop and web app that converts EPUB, PDF, text and subtitle files into audio with synced subtitles, using Kokoro-82M TTS.
Open-source text-to-speech system with voice cloning, natural-language emotion control and multi-speaker generation, built on LLM-style models.
Turns a Xiaomi AI Speaker into a voice front end for ChatGPT and other LLMs, routing wake-word questions to a model and speaking the reply.