OpenReels

tsenseiMIT更新放缓

一条命令把任意选题自动做成可直接发布的短视频,涵盖调研、脚本、配音、画面、配乐、字幕与合成,适合批量生产 YouTube、Reels、TikTok 内容。

Open-source AI pipeline that turns any topic into a publish-ready YouTube/Instagram/TikTok Short — research, script, voiceover, visuals, music, captions, and assembly in one command.

暂无版本235star50fork同步于 2026-11-07 07:30 UTC

怎么上手

由 README 提炼,执行前请确认
git clone https://github.com/tsensei/OpenReels.git
cd OpenReels
cp .env.example .env
docker compose up
硬件要求按 README 说明

README 未说明显存或 GPU 要求;本地开发需 Node.js 22+、pnpm 与 ffprobe,Docker 运行建议加 --shm-size=2gb。

有 Docker 镜像
下载:源码 zip·GitHub Releases(安装包)本站不镜像安装包

项目说明

由 README 自动翻译提炼

一条命令把任意主题做成可直接发布的竖屏短视频,自动完成调研、脚本、配音、画面、配乐与字幕

一条命令把任意选题自动做成可直接发布的短视频,涵盖调研、脚本、配音、画面、配乐、字幕与合成,适合批量生产 YouTube、Reels、TikTok 内容。

核心能力

  • 按调研、脚本、配音、画面、配乐、字幕、合成七阶段流水线自动出片
  • 用词级时间戳生成卡拉OK式动态字幕,内置7种字幕样式
  • 视觉素材支持AI图像、AI视频与经视觉校验的图库素材自动重试
  • 渲染前展示分项成本估算并需确认,渲染后按真实用量结算
  • 提供Web UI实时流水线可视化、REST API、Docker与CLI四种用法

容易踩的坑

必须先在 .env 填入 API key,至少一个 LLM 加一个 TTS 才能跑通;默认 TTS 是 ElevenLabs,想零成本需显式指定 --tts-provider kokoro 或 --provider local;Docker 运行需加 --shm-size=2gb,否则渲染可能失败。

内容由模型根据 README 生成,可能不完整或不准确,以官方文档为准。看原文 README

最近发版

0 个版本

暂无 release 数据(可能没有发版,或尚未同步)。

用户点评

登录用户的真实使用记录,可按版本和硬件筛选
共 0 条

    还没有人点评。第一个说出真实体验的人最有价值。

    README 原文

    未翻译

    OpenReels

    GitHub stars License: MIT Version Tests TypeScript Docker

    Open-source AI pipeline that turns any topic into a publish-ready YouTube/Instagram/TikTok Short. One command. Research, script, voiceover, AI-generated visuals, AI-generated music, animated captions, scene transitions. Out comes a vertical MP4, ready to upload.

    Web UI with live pipeline visualization, REST API, Docker, and CLI. Bring your own API keys.

    Demo

    https://github.com/user-attachments/assets/c4df8893-7764-43c3-b004-ef610fec710f

    Topic in, MP4 out. This video was generated in a single command:

    openreels "the apollo 13 disaster, from explosion to miraculous return" --provider google
    

    Web UI

    Live pipeline visualization. Watch research, script, voiceover, visuals, music, and assembly stages stream in real time.

    How it works

    Give it a topic. It handles everything:

    StageWhat happens
    ResearchWeb search grounds the script in real facts, not hallucinations
    ScriptWrites a punchy short-form script with scene breakdowns, visual direction, and emotional arc
    VoiceoverGenerates TTS audio with word-level timestamps for karaoke-style captions
    VisualsAI images (Gemini, DALL-E), AI video clips (Google Veo 3.1, fal.ai Kling 2.6 Pro) with dedicated cinematography prompts and negative prompt guidance, plus vision-verified stock footage that rejects bad matches and retries automatically
    MusicAI-generated background score via Google Lyria 3 Pro, scene-synced to match the video's emotional arc. Or pick from 25 bundled royalty-free tracks
    CaptionsSpring-animated 3-state captions with 7 distinct styles, per-archetype theming, and word-level karaoke highlighting
    AssemblyComposites everything into a vertical MP4 via Remotion with crossfade, slide, wipe, and flip transitions
    CritiqueAI critic scores the output. If quality is below threshold, the pipeline re-runs

    Every stage streams live progress to the web UI. You watch the AI research, write, paint, compose, and render in real time.

    Provider flexibility

    Mix and match providers or go all-in on one ecosystem:

    CapabilityProviders
    LLMAnthropic Claude, OpenAI GPT, Google Gemini, OpenRouter (300+ models), any OpenAI-compatible endpoint
    SearchNative (provider built-in), Tavily, or parametric knowledge
    TTSElevenLabs, Inworld, OpenAI TTS, Gemini TTS, Kokoro (free, local)
    ImagesGemini Imagen, OpenAI DALL-E
    VideoGoogle Veo 3.1, fal.ai Kling 2.6 Pro (with cross-provider fallback, negative prompts, structured cinematography prompts)
    MusicGoogle Lyria 3 Pro (AI-generated, $0.08/track), Bundled library (free)
    StockPexels, Pixabay (both searched, vision-verified, with AI fallback)

    One key, everything Google: --provider google sets LLM, images, TTS, video, and music to Google APIs with a single GOOGLE_API_KEY.

    Zero-cost voiceover: --provider local uses Kokoro for free local TTS. No API key needed.

    Quickstart

    Web UI (recommended)

    git clone https://github.com/tsensei/OpenReels.git
    cd OpenReels
    cp .env.example .env   # fill in your API keys
    docker compose up      # starts Redis + API + Worker
    # Open http://localhost:3000
    

    Type a topic, pick your providers, and watch the pipeline run. Research, script, voiceover, visuals, music, and assembly stages stream live to the browser. Download the final video when it's done.

    Docker CLI (single run)

    cp .env.example .env   # fill in your API keys
    
    docker run --env-file .env --shm-size=2gb -v ./output:/output ghcr.io/tsensei/openreels "5 stoic lessons that changed my life"
    

    Or run through Docker Compose:

    docker compose run worker npx tsx src/index.ts --yes "5 stoic lessons that changed my life"
    

    Local development

    Prerequisites: Node.js 22+, pnpm, ffprobe

    git clone https://github.com/tsensei/OpenReels.git
    cd OpenReels
    pnpm install
    cp .env.example .env   # fill in your API keys
    
    # Full pipeline with AI music
    pnpm start "the fall of the Roman Empire" --provider google
    
    # Free local TTS, no API spend on voiceover
    pnpm start "5 stoic lessons" --provider local
    
    # Dry run (outputs DirectorScore JSON, no asset generation)
    pnpm start "your topic" --dry-run
    
    # Specific archetype and provider combo
    pnpm start "your topic" --archetype anime_illustration --provider openai
    
    # Creative direction file (guide the AI with a brief)
    pnpm start "deep sea exploration" --direction examples/direction-brief.md
    
    # Replay from a previous score (skip research + director, re-render)
    pnpm start "your topic" --score output/2026-04-10-111939-.../score.json
    

    API keys

    Minimum to run (pick one LLM + one TTS):

    • ANTHROPIC_API_KEY or OPENAI_API_KEY or GOOGLE_API_KEY — Anthropic / OpenAI / Google AI Studio
    • ELEVENLABS_API_KEY or INWORLD_TTS_API_KEY — ElevenLabs / Inworld. Or use --tts-provider kokoro (free, no key), --tts-provider openai-tts, or --tts-provider gemini-tts
    • GOOGLE_API_KEY — also needed for Gemini image generation, AI video (Veo), AI music (Lyria), and Gemini TTS

    Optional: PEXELS_API_KEY (Pexels), PIXABAY_API_KEY (Pixabay) for stock footage, FAL_API_KEY (fal.ai) for Kling video generation

    CLI flags

    FlagDescriptionDefault
    --provider <name>LLM provider (anthropic, openai, gemini, openrouter, openai-compatible, google, local)anthropic
    --llm-model <model>Model ID override (e.g. anthropic/claude-sonnet-4 for OpenRouter)provider default
    --llm-base-url <url>Base URL for openai-compatible (e.g. http://localhost:11434/v1)—
    --search-provider <name>Search provider (native, tavily, none)auto-detect
    --image-provider <name>Image provider (gemini, openai)gemini
    --tts-provider <name>TTS provider (elevenlabs, inworld, kokoro, gemini-tts, openai-tts)elevenlabs
    --music-provider <name>Music provider (bundled, lyria)bundled
    --video-provider <name>Video provider (gemini, fal)auto-detect
    --archetype <name>Override visual archetypeLLM chooses
    --platform <name>Target platform (youtube, tiktok, instagram)youtube
    --dry-runOutput DirectorScore JSON without generating assetsoff
    --previewOpen Remotion Studio after renderingoff
    -o, --output <dir>Output directory./output
    --no-musicDisable background musicmusic on
    --no-videoDisable AI video generationvideo on
    --no-stock-verifyDisable VLM stock footage verificationverify on
    --stock-confidence <n>Min confidence for stock verification (0-1)0.6
    --stock-max-attempts <n>Max stock API calls per scene4
    --video-model <model>Video model overrideprovider default
    --kokoro-voice <voice>Kokoro voice presetaf_heart
    --direction <file>Creative brief file (markdown) to guide the AI—
    --score <path>Replay from a saved score.json, skipping research + director—
    -y, --yesAuto-confirm cost estimation (Docker/CI)off

    Cost transparency

    Before spending any money, the pipeline shows a detailed cost breakdown and asks for confirmation:

    Estimated cost: $0.686
      LLM:    $0.0029 (7 calls)
      TTS:    $0.0171 (853 chars)
      Images: $0.3030 (3 AI images @ $0.101/ea)
      Video:  $0.3000 (1 AI videos)
      Music:  $0.0802 (Lyria AI generation)
      Stock:  free
    

    After rendering, actual cost is computed from real token usage. Use --dry-run to preview the DirectorScore without spending anything.

    Archetypes

    14 visual styles that control colors, captions, motion, lighting, and AI image prompting. Same topic, four different archetypes:

    ArchetypeBest for
    editorial_caricatureNews commentary, satire, social issues
    warm_narrativeStorytelling, history, human interest
    studio_realismProfessional photography, editorial, luxury
    infographicData, facts, explainers, rapid-fire content
    anime_illustrationDynamic, action-oriented, pop culture
    pastoral_watercolorNature, contemplative, hand-painted aesthetic
    comic_bookAction, adventure, energetic content
    gothic_fantasyDark themes, mythology, epic content
    vintage_snapshotNostalgic, intimate, personal stories
    surreal_dreamscapeSci-fi, fantasy, mind-bending topics
    warm_editorialLifestyle, people stories, general purpose
    cinematic_documentaryFactual, historical, science
    moody_cinematicMystery, tension, crime, dark history
    bold_illustrationEducational, how-to, listicles

    Background

    OpenReels is a full rewrite of ReelMistri, a CLI pipeline originally built for Bangla-language YouTube Shorts automation. ReelMistri proved the concept: one command, fully produced video, language-aware scripts, culturally coherent visuals, proper Bengali text rendering.

    The rewrite moves from Python to TypeScript for native Remotion integration. Cleaner video rendering, better developer experience, no Python-to-TypeScript bridge.

    Status

    v0.17.0 shipped. See CHANGELOG.md for full version history and TODOS.md for known issues and roadmap.

    Star History

    If OpenReels is useful to you, consider giving it a star. It helps others discover the project.

    Star History Chart

    License

    This project is licensed under the MIT License.