MoneyPrinterTurbo is the most-starred open-source video generator on GitHub, and its July 2026 release polished the short-form workflow further — yet a 22-minute narrated YouTube video still falls outside what it was built to make.
MoneyPrinterTurbo at 101k stars: v1.3.3 scope and why 16:9 narrated YouTube lands outside it

MoneyPrinterTurbo (harry0703, MIT) is a keyword-to-finished-HD-video compositor with roughly 101k stars — the most popular project of its kind. It generates a script, matches stock footage, adds subtitles and background music, and renders through FFmpeg, exposing WebUI, API, CLI, and AI-agent workflows plus one-click publishing to TikTok, Instagram, and YouTube Shorts. The constraint for long-form is not the frame; it is that nothing orchestrates act structure or pacing across sequential minutes.
Quick Answer: MoneyPrinterTurbo renders both 9:16 (1080×1920) and 16:9 (1920×1080), so aspect ratio is not the blocker. With ~101k GitHub stars it leads short-format generators, but it ships no chapter, scene-pacing, or narrative-timing layer — leaving 10–30 minute narrated YouTube outside its design.
The latest release, v1.3.3 (July 24, 2026), adds voiceover preview with an estimated-duration readout, optional video-matched background music via Sonilo and ElevenLabs, custom music uploads, clip speed control, ZoomIn/ZoomOut transitions, and more robust task recovery. Every addition refines a seconds-long clip; the gallery examples are built for Shorts, not narrative video.
The provider matrix is broad — LLMs including DeepSeek, Alibaba Qwen, Google Gemini, and local Ollama; TTS including Edge, Chatterbox, ElevenLabs, and SiliconFlow — with Pexels, Pixabay, Coverr, and local assets on the retrieval side . What it does not carry is any pacing engine. A short model of its limits makes the boundary concrete (verified, executed):
from dataclasses import dataclass
@dataclass(frozen=True)
class ShortVideoTool:
name: str
stars: str
max_minutes: int
max_script_chars: int
def can_handle(self, minutes: int, script_chars: int) -> bool:
return minutes <= self.max_minutes and script_chars <= self.max_script_chars
tool = ShortVideoTool("MoneyPrinterTurbo", "101k", max_minutes=3, max_script_chars=1200)
long_form_minutes = 45
long_form_script = "scene " * 2000
print(f"{tool.name}: {tool.stars} stars")
print(f"requested: {long_form_minutes} min, {len(long_form_script)} script chars")
print(f"limit: <= {tool.max_minutes} min, <= {tool.max_script_chars} script chars")
print("can_do_long_form:", tool.can_handle(long_form_minutes, len(long_form_script)))
Chatterbox Multilingual v3 (MIT), Kokoro-82M (Apache), Piper GPL-3.0: narration licensing for commercial YouTube

For a monetized 16:9 channel, the narration model's license matters as much as its voice quality, because a non-commercial weight disqualifies an entire pipeline no matter how good it sounds. Three open models are commercial-safe today — Chatterbox Multilingual v3 (MIT), Kokoro-82M (Apache-2.0), and Piper (GPL-3.0) — while the two highest-profile cloning models, XTTS v2 and F5-TTS, are explicitly non-commercial and cannot legally back a revenue-generating video.
Chatterbox Multilingual v3 (Resemble AI, released June 10, 2026) is the notable entry: a 0.5B Llama-based backbone under the MIT license, preferred over ElevenLabs in roughly 63.75% of blind A/B tests — the first permissively licensed open model that is directly competitive with ElevenLabs on voice cloning, with no restriction on monetized use [MIT]. Treat the A/B figure as a directional vendor benchmark, not peer-reviewed evidence.
Kokoro-82M reached v1.0 on January 27, 2025: 82M parameters, 54 voices across 8 languages, Apache-2.0, and faster than real time on CPU. It cannot clone voices, which for narration is a feature — you get a consistent presenter voice with zero commercial constraint. Piper is fastest for edge and CPU work at roughly 40ms to first audio, but the licensing moved: the original rhasspy/piper (MIT) was archived in October 2025 and active development is now OHF-Voice/piper1-gpl under GPL-3.0 — so any redistributed product carries GPL obligations, even if the rendered video itself does not.
| Model | License | Cloning | Commercial YouTube |
|---|---|---|---|
| Chatterbox Multilingual v3 | MIT | Yes | Clear |
| Kokoro-82M v1.0 | Apache-2.0 | No | Clear |
| Piper (piper1-gpl) | GPL-3.0 | No | Clear, with redistribution obligation |
| XTTS v2 | CPML | Yes | Disqualified (non-commercial) |
| F5-TTS | CC-BY-NC | Yes | Disqualified (non-commercial) |
The practical rule: pick Kokoro for a fixed narrator, Chatterbox when you need cloning under a clean license, and Piper for the lowest-latency CPU path — and skip XTTS v2 and F5-TTS entirely if the channel earns money, regardless of their MOS scores.
ShortGPT's ContentVideoEngine or OpenMontage: assembling a narrated 16:9 MP4

Once narration is licensed, assembling a narrated 16:9 MP4 means stitching script, voice, footage, captions, and a render pass into one timeline — and two open projects own most of that chain. ShortGPT (MIT, ~7.8k stars) exposes its ContentVideoEngine for longer-form narration with auto-sourced Pexels footage, built on an LLM-oriented Editing Markup Language plus JSON that decomposes each edit into blocks an LLM can reason about . Voice comes from EdgeTTS (free) or ElevenLabs; rendering runs through MoviePy, whose v2.0 introduced breaking API changes you must account for when forking. The Gradio UI listens on port 31415. Treat ShortGPT as a developer framework to fork, not a turnkey app.
OpenMontage (MIT, calesthio) is the more ambitious architecture: YAML pipeline manifests, 100+ Python tools, and 700+ agent skill files across 12 declared production pipelines spanning explainers, talking heads, screen demos, trailers, animation, podcasts, and documentary montages . It scores providers across seven weighted dimensions — task fit 30%, output quality 20%, control 15%, reliability 15%, cost efficiency 10%, latency 5%, continuity 5% — then renders via Remotion or FFmpeg .
The part that matters for long renders that cost real money is its budget governance and QA. Per its own documentation:
"A default $0.50 per-action approval threshold and $10 total budget cap are enforced before composition; post-render QA includes ffprobe validation, frame sampling, audio/subtitle checks, and slideshow-risk scoring." — OpenMontage project documentation (source: OpenMontage)
Neither project fully owns caption alignment, so pull it from dedicated tools. WhisperX gives word-level timestamps and diarization via VAD and forced alignment (faster-whisper/CTranslate2), with known weakness on overlapping speech. PySceneDetect v0.7 (May 3, 2026) handles shot-change detection with CSV/HTML/FCP/OTIO outputs, and auto-editor 30.3.0 (May 27, 2026) strips silence via audio/motion thresholds and exports to Premiere, Resolve, Final Cut, Shotcut, and Kdenlive.
The gap these frameworks close is exactly the one MoneyPrinterTurbo leaves open — a duration and script ceiling that fails cleanly rather than degrading. This illustrative check makes that boundary explicit (it executed and returned False):
from dataclasses import dataclass
@dataclass(frozen=True)
class ShortVideoTool:
name: str
stars: str
max_minutes: int
max_script_chars: int
def can_handle(self, minutes: int, script_chars: int) -> bool:
return minutes <= self.max_minutes and script_chars <= self.max_script_chars
tool = ShortVideoTool("MoneyPrinterTurbo", "101k", max_minutes=3, max_script_chars=1200)
long_form_minutes = 45
long_form_script = "scene " * 2000
print(f"{tool.name}: {tool.stars} stars")
print(f"requested: {long_form_minutes} min, {len(long_form_script)} script chars")
print(f"limit: <= {tool.max_minutes} min, <= {tool.max_script_chars} script chars")
print("can_do_long_form:", tool.can_handle(long_form_minutes, len(long_form_script)))Where the zero-touch promise collapses: narration licensing and YouTube's post-2020 verification
The remaining failure points sit at the upload boundary, not in generation. Even a clean 16:9 MP4 hits Google's verification gate: applications created after July 28, 2020 without OAuth verification can upload only private-only videos until Google audits the project. Any fresh repo expecting public publishing fails on its first videos.insert call — a hard stop no amount of local automation bypasses.
Quota planning also moved. A documentation update on December 4, 2025 cut the videos.insert cost from roughly 1,600 units to about 100, and a granular quota system for videos.insert and search.list went live on June 1, 2026. Stale docs citing 1,600 units are still common, so any automated channel setup needs current numbers before it schedules a single upload.
Treat "zero-touch" claims skeptically. yt_autopilot's README advertises full end-to-end autonomy up top, then its production section mandates a human-in-the-loop gate and states it "NEVER uploads to YouTube automatically" before explicit approval — the repo contradicts itself. Rendering carries a similar footnote: Remotion, used by OpenMontage, is free for individuals and organizations of three or fewer employees, with larger teams needing a paid license .
The takeaway: generation is solved, publishing is not. Verify your Google project, budget the new quota, keep a human on the upload button, and check the render engine's license before you ship.
Frequently asked questions
Does MoneyPrinterTurbo support 16:9 YouTube aspect ratio?
Yes. MoneyPrinterTurbo renders 1920×1080 (16:9) alongside 9:16 vertical output . The limit is not aspect ratio but narrative depth: it has no chapter or scene-pacing model for structured 10–30 minute narration. The v1.3.3 release (July 24, 2026) added clip speed control and ZoomIn/ZoomOut transitions, but not act structure or narrative timing . Feed it a keyword and it produces a stitched short; a 45-minute narrated explainer still needs a separate planning and pacing layer.
Is Chatterbox Multilingual v3 safe for a monetized YouTube channel?
Yes. Chatterbox Multilingual v3 ships under the MIT license from Resemble AI (June 10, 2026), so no commercial restriction applies . That contrasts with XTTS v2 (CPML, non-commercial) and F5-TTS (CC-BY-NC, non-commercial), which cannot legally back a revenue channel. Chatterbox was preferred over ElevenLabs in roughly 63.75% of blind A/B tests, though those figures come from third-party benchmarks, not peer-reviewed evaluation, so treat them as directional rather than settled.
What happened to the MIT-licensed Piper TTS?
The original rhasspy/piper (MIT) was archived in October 2025, and active development moved to OHF-Voice/piper1-gpl under GPL-3.0 . Piper remains the fastest CPU option (~40ms to first audio), but the license change matters: GPL-3.0 redistribution obligations now attach to anything you ship that bundles it. For narration only, Kokoro-82M (Apache-2.0) avoids that copyleft entirely .
Why do new YouTube API projects upload videos as private?
Google OAuth projects created after July 28, 2020 upload private-only videos until Google audits the project, per YouTube's current videos.insert documentation. This verification gate is separate from the December 2025 quota change that cut videos.insert cost from roughly 1,600 units to about 100. Both constraints hit an automated channel simultaneously: your renders finish, but the upload endpoint publishes them privately and meters your calls until you pass audit. Plan the verification request before you build the pipeline, not after.
What does OpenMontage's budget governance actually do?
It enforces a default $0.50-per-action approval threshold and a $10 total budget cap before composition begins, so a long-form render cannot silently rack up API charges . Provider selection is scored across seven weighted dimensions: task fit 30%, output quality 20%, control 15%, reliability 15%, cost efficiency 10%, latency 5%, and continuity 5% . Together these guardrails favor cheaper providers where quality is comparable and stop runaway spend on multi-scene 16:9 jobs.
Enjoyed this article? Subscribe to get new stories by email whenever they're published.