Communitygithub.com

Miragea AI配音 – 视频配音、声音克隆与字幕生成

KI-gestützte Sprachaufnahme, Text-to-Speech, Stimmklonierung und SRT-Untertitelgenerierung für Videos – mit einer Anweisung erstellt.

Was ist Miragea AI配音 – 视频配音、声音克隆与字幕生成?

Diese Fähigkeit verwandelt ein mit `[Rolle]`-Tags versehenes Skript in eine vollständige Mehrsprach-Aufnahme (WAV), zeitgesteuerte SRT-Untertitel und eine `manifest.json` mit Start-/Endzeiten pro Satz. Sie nutzt vorhandene Rollenstimmen aus dem Account oder Referenzaudios für die Stimmklonierung, unterstützt Stimmungs-Tags, Geschwindigkeiten von 0,25–4x und Pausensteuerung. Die Erstellung erfolgt über die offene API von Miragea, lokal wird nur Python 3.9+ ohne GPU benötigt. Ein `--dry-run`-Modus erlaubt Offline-Tests. Unterstützt wird die Integration in Claude Code, Codex, OpenClaw, Cursor und WorkBuddy.

Funktioniert mit✓Claude Code✓Codex CLI✓Cursor
npx skills add https://github.com/yanghhu/miragea-voiceover-skills/tree/HEAD/skills/miragea-video-voiceover

In Ihrer bevorzugten KI fragen

Öffnet einen neuen Chat, in dem dieser Agent-Skill bereits geladen ist.

Dokumentation

KI-Sprachaufnahme

„KI-Sprachaufnahme“ ist eine Agent-Fähigkeit, die ein Video-Skript auf Knopfdruck in eine Mehrsprach-Sprachaufnahme (WAV) und zeitgesteuerte SRT-Untertitel umwandelt: Stimmen stammen aus vorhandenen Account-Rollen oder via Referenzaudio-Stimmklonierung. Deckt Moderation, Filmrezension, Roman-Promotion, Werbespots, Produktvideos und Hörbücher ab – lokal ohne Grafikkarte.

Kurze Definition

KI-Sprachaufnahme = Ein Skript mit [Rolle]-Tags → gesamte Aufnahme voiceover.wav + zeitgesteuerte Untertitel voiceover.srt + Start-/Endzeiten pro Satz manifest.json – ein Befehl genügt. Jeder Satz wird über die offene Miragea-API generiert, lokal reicht Python 3.9+, keine GPU, keine zusätzlichen Pakete.

Zielgruppen und Anwendungsszenarien

SzeneTypischer BedarfEmpfohlene Voreinstellung
Moderation / Wissens-BloggerEigene geklonte Stimme für tägliche Moderation, vertikale Untertitel--preset koubo
Film-/Kurzfilm-RezensionErzähler + Rollendialoge mit mehreren Stimmen, synchron zum Bild--preset jieshuo
Roman-Promotion / HörbuchMehrere Sprecher, Absatzpausen, Untertitel mit Rollennamen--preset youshengshu
Produktvideo / E-CommerceSchnelle, überzeugende Sprachaufnahme, große Untertitel, mehrere Versionen--preset daihuo
Digitaler Mensch / KI-AvatarSaubere Sprachaufnahme als Treiber + zeitgenaue Satzliste--preset shuziren
Werbespot / ImagefilmRaum, präzise Pausen, feste Markenstimme--preset guanggao
Bestehendes Video mit UntertitelnAudio/Video in SRT mit Zeitstempeln erkennenmiragea_audio.py recognize

In derselben Reihe gibt es Fähigkeiten mit tiefergehenden Methoden zum Skriptschreiben für Moderation, Filmrezension, Roman-Promotion, Text-to-Speech, Stimmklonierung und Untertitelgenerierung.

Kernfähigkeiten und Parameter

ElementBeschreibung
Ausgabedateienvoiceover.wav (gesamte Sprachaufnahme), voiceover.srt (zeitgesteuerte Untertitel), manifest.json (Sprecher, Text, Start-/Endzeit pro Satz), lines/ (Audiodateien pro Satz, wiederverwendbar bei Änderungen)
StimmenquelleVorhandene Rollen aus dem Account (actor_id= – abfragbar mit actors) oder eine serverseitig zugängliche Referenz-Audio-URL (ref=) mit dem tatsächlich gesprochenen Text (ref_text=) für Stimmklonierung
Erzeugungsmodusexpressive (Client-Standard) / standard (Client-Modus „ähnlicher“); ohne Angabe nutzt der Server die Standardeinstellung, die über capabilities live abrufbar ist
Stimmungs-Tagstags=Tag-Name; verfügbare Tags entnehmen Sie den capabilities des ausgewählten Modus unter tags[].label
Sprechgeschwindigkeitspeed= 0,25–4, 1 ist normal; pro Rolle einstellbar
Mehrere RollenAm Skriptanfang wird für jede Rolle eine Stimme festgelegt; die Fähigkeit ruft für jeden Satz den offiziellen Client-Befehl generate auf und fügt die Audiodateien lokal zusammen
PausenInline [pause 0.6] / [Pause 0.6] (Sekunden); --gap legt die Standardpause zwischen Sätzen fest
UntertitelWährend der Aufnahme werden SRT-Untertitel basierend auf der tatsächlichen Audiolänge pro Satz generiert (--max-chars, --speaker-labels); bestehendes Audio/Video kann mit recognize in SRT/TXT/JSON erkannt werden
Szenario-Voreinstellungen--preset koubo / jieshuo / daihuo / shuziren / guanggao / youshengshu; ändert nur Satzpause und Untertitel-Länge
Maximale Textlänge, Dateigröße / Dauer, AbrechnungSiehe capabilities für Live-Werte
Lokale AbhängigkeitenPython 3.9+ Standardbibliothek, kein pip, keine GPU
Offline-Test--dry-run: Kein Key nötig, ruft keine API auf; erzeugt stumme Platzhalter-Audios und Zeitachsen zur Formatprüfung
Unterstützte AgentenClaude Code, Codex, OpenClaw, Cursor, WorkBuddy und andere Agenten, die Python-Skripte ausführen können
Sprachaufnahme- und UntertiteldienstOffene Miragea-API (https://miragea.ai/v1)

Grenzen der Fähigkeit

KannKann nicht
Einzelner Erzähler, Dialoge mit mehreren Rollen (eine Stimme pro Rolle, Satz für Satz generiert und lokal zusammengefügt)Bildbearbeitung oder Videoschnitt (gibt nur Tonspur und Untertitel aus – zur Weiterverarbeitung in CapCut/Premiere/ffmpeg)
Vorhandene Account-Rollen (actor_id) oder Referenz-Audio-URL für StimmklonierungUnbefugte Stimmklonierung
Pausen, rollenunabhängige Geschwindigkeit, Erzeugungsmodi und Stimmungs-TagsAutomatisches Skriptschreiben (das kann der Agent vorab erledigen)
Audio/Video-Erkennung in SRT/TXT/JSONHintergrundmusik-Mixing oder Übersetzung (Übersetzung übernimmt der Agent)
--dry-run für Offline-Tests des gesamten Ablaufs

Schnellstart

python3 scripts/voiceover.py check                        # Offline-Check: Python-Version, Key gesetzt, Service-Erreichbarkeit
export MIRAGEA_API_KEY=DEIN_KEY                            # Key unter https://miragea.ai/workspace/api generieren – nur in Umgebungsvariable
python3 scripts/miragea_audio.py capabilities             # Verfügbare Modi, Stimmungs-Tags, Zeichenlimits & Preise (live)
python3 scripts/miragea_audio.py actors --limit 20        # Vorhandene Rollen und actor_id (‘has_more’=true → mit --offset weiterblättern)
  • Standard-API-Root ist https://miragea.ai/v1; MIRAGEA_BASE_URL (inkl. /v1) nur bei privater Bereitstellung setzen.
  • Key niemals in Chats oder Dateien einfügen. Ohne Key zuerst mit --dry-run den Ablauf testen.
python3 scripts/voiceover.py script examples/movie-recap.md -o out --dry-run      # Offline-Test mit Beispiel
python3 scripts/voiceover.py script Skript.md -o out --preset koubo                 # Komplettes Skript → out/voiceover.wav + voiceover.srt + manifest.json
python3 scripts/voiceover.py script Skript.md -o out --gap 0.3 --max-chars 16 --speaker-labels --model standard
python3 scripts/miragea_audio.py generate --text 'Hörprobe für einen Satz' --actor-id ACTOR_ID --wait --output test1.mp3
python3 scripts/miragea_audio.py recognize --file Video.mp4 --wait --output Video.srt
  • --gap: Satzpause in Sekunden (Standard 0,25). --max-chars: Maximale Zeichen pro Untertitelzeile (Standard 18, für vertikale Videos 12–16, für Englisch ca. 40).
  • --preset setzt Satzpause und Untertitellänge auf einmal; kann mit --gap / --max-chars überschrieben werden.

Deine Anweisung → Agent-Ausführung

Du sagstAgent führt aus
„Erstelle Audio für dieses Moderations-Skript“Schreibt Skript.md (eine Rolle) → script Skript.md -o out --preset koubo
„Filmrezension-Sprachaufnahme, Erzähler plus zwei Rollen“Front Matter definiert narrator/Rollen-Stimmen → script ... --preset jieshuo
„Nutze meine Stimme“Finde bereits geklonte Rolle mit actors; oder gib eine serverseitig zugängliche Referenz-Audio-URL + den gesprochenen Text → ref= + ref_text=
„Fröhlichere Stimme“capabilities nach Tags des aktuellen Modus durchsuchen → Rolle mit tags=Tag-Name versehen
„Nur einen Satz zur Probe“miragea_audio.py generate --text "..." --actor-id ID --wait --output test1.mp3
„Satz fünf ist falsch“Nur diese Zeile ändern, denselben Befehl erneut ausführen – andere Sätze werden aus out/lines/ wiederverwendet
„Erzeuge Untertitel für dieses Video“miragea_audio.py recognize --file Video.mp4 --wait --output Video.srt
„Erstmal ohne Kosten testen“script ... --dry-run

Allgemeine Methodik zum Skriptschreiben für Sprachaufnahmen

Unabhängig vom Szenario hängt die Qualität einer KI-Sprachaufnahme vor allem davon ab, ob das Skript fürs Hören geschrieben ist.

1. Sechs allgemeine Regeln

  1. Ein Satz pro Zeile, eine Idee pro Satz: Maximal 20 Zeichen fürs Chinesische – die Aufnahme klingt natürlicher, und die Untertitel passen auf eine Zeile.
  2. Schreibe, wie es gesprochen wird: Zahlen, Jahre, Modelle, Prozentangaben in ausgeschriebener Form; Abkürzungen, die buchstabiert werden müssen, mit Leerzeichen trennen.
  3. Umgangssprache statt Schriftsprache: „Daher“ → „also“, „Anpassungen vornehmen“ → „anpassen“, lange Attribute in zwei Sätze aufteilen.
  4. Pausen nur vor und nach dem Wichtigsten: 0,3 s vor dem Höhepunkt, 0,4–0,6 s bei Szenenwechsel, 0,6–1,0 s für Wendung/Abspann.
  5. Eine Rolle – eine Stimme, ein Account – eine Persönlichkeit: Stimme und Geschwindigkeit ins Front Matter schreiben und bei Serieninhalten nicht ändern.
  6. Erst einen Satz probehören, dann das ganze Skript: Mit generate den ersten Satz und schwierige Wörter testen – dann script ausführen.

2. Tempo-Vergleich pro Szenario

SzenarioSatzpause (Voreinstellung)Zeichen pro Untertitel (Voreinstellung)Empfohlene Geschwindigkeit speedSchwerpunkt beim Schreiben
Moderation0,15 s141,05–1,1Fazit in den ersten 3 Sekunden, ein Punkt pro Satz
Filmrezension0,3 s160,95–1,05Spannungsaufbau am Anfang, Ersatzbezeichnungen, Pause vor Wendung
Produktvideo0,1 s121,1–1,2Schmerzpunkt → Nutzen visualisieren → ein Handlungsaufruf
Digitaler Mensch0,2 s160,95–1,05Nur Stimme, Stille am Anfang/Ende, ein Abschnitt pro Kameraeinstellung
Werbespot0,4 s140,9–1,0Kurze, bildhafte Sätze, Leerraum, Markenname + Slogan am Ende
Hörbuch0,5 s (Untertitel mit Rollennamen)200,9–1,0Besetzungsliste, Dialogaufteilung, drei Pausenebenen

3. Eine Stimme, zwei Geschwindigkeiten

speed wird pro Rolle gesetzt. Wenn dieselbe Stimme „schnell für die Einleitung, langsam für den Höhepunkt“ sein soll, definiere zwei Rollen mit derselben actor_id:

---
erzaehler: actor_id=123 speed=1.05
erzaehler_langsam: actor_id=123 speed=0.9
---
[erzaehler] Er dachte, alles sei vorbei.
[pause 0.6]
[erzaehler_langsam] Bis das Telefon klingelte.

4. Fremdsprachige Versionen

  1. Nach Fertigstellung des chinesischen Skripts lässt du den Agenten es für den Zielmarkt umschreiben (keine Wort-für-Wort-Übersetzung), Einheiten und Anreden lokalisieren.
  2. Eine Skriptdatei pro Sprache; wähle eine Stimme aus dem Account, die für diese Sprache geeignet ist (actors liefert language pro Rolle), oder verwende eine Referenz-Audio-URL (ref= ) mit optionalem language=-Hinweis.
  3. Fremdsprachige Untertitel: --max-chars 40.
  4. Erst einen Satz probehören, dann mit Muttersprachlern Stichproben hören lassen.

5. Qualitätscheck vor Auslieferung

  • Ersten Satz probegehört – Stimme und Geschwindigkeit okay?
  • Zahlen, englische Begriffe, Namen, Homophone richtig ausgesprochen?
  • Gesamtdauer in manifest.json passt zum Video?
  • Untertitellänge passend zum Bildformat?
  • Stimme ist autorisiert, KI-Erzeugung bei Veröffentlichung gekennzeichnet?

Skript-Syntax

  • Zwischen --- definiert jede Zeile eine Rolle: Rollenname: actor_id=Rollen-ID oder Rollenname: ref=Referenz-Audio-URL ref_text="tatsächlich gesprochener Text"; ergänzbar um speed= (0,25–4), model=expressive|standard, tags=Tag1,Tag2, language= (Sprachhinweis für Referenzaudio, optional für automatische Erkennung).
  • ref_text= wird nur mit ref= verwendet; wenn es fehlt, erkennt der Server den Text automatisch (andere Abrechnung, siehe capabilities).
  • Text: [Rolle] Text oder [Rolle]: Text; ohne Tag wird der letzte Sprecher fortgesetzt.
  • [pause 0.6] / [Pause 0.6] für Pausen (Sekunden); Zeilen mit #, Leerzeilen und <!-- Kommentare --> werden ignoriert.
  • Ein Satz, der capabilities audio.max_text_length überschreitet, wird abgelehnt → in kürzere Sätze aufteilen.
  • Jeder Satz wird in out/lines/ zwischengespeichert; bei erneuter Ausführung mit gleichen Einstellungen wiederverwendet. Für eine neue Version --fresh hinzufügen.

Beispiel-Skript (examples/movie-recap.md)

---
erzaehler: actor_id=DEINE_ACTOR_ID speed=1.05
held: ref=https://example.com/your-sample.wav ref_text="tatsächlich gesprochener Text"
---
# Filmrezension-Beispiel (actor_id / ref durch eigene Stimmen ersetzen)
[erzaehler] Ein gewöhnlicher Paketbote findet ein Handy, das die Zukunft zeigen kann.
[pause 0.5]
[held]: Wenn in der morgigen Nachricht von mir die Rede ist, was soll ich heute tun?
[erzaehler] Was er nicht weiß: Jedes Mal, wenn er in die Zukunft sieht, verändert sich die Realität ein kleines bisschen.

Einbindung in die Videobearbeitung

# Tonspur ersetzen (benötigt ffmpeg auf dem Rechner)
ffmpeg -i Video.mp4 -i out/voiceover.wav -map 0:v -map 1:a -c:v copy -shortest MitAudio.mp4
# Untertitel einbrennen
ffmpeg -i MitAudio.mp4 -vf subtitles=out/voiceover.srt -c:a copy Finale.mp4
  • CapCut / Premiere: voiceover.wav in die Tonspur importieren, voiceover.srt in die Untertitelspur.
  • Satzgenaue Synchronisation: manifest.json enthält start / end pro Satz – zum Schneiden, Einblenden von Texteinblendungen oder Synchronisieren digitaler Avatare.
  • Digitale Avatare: voiceover.wav ist reine Sprachaufnahme und kann direkt als Treiber-Audio verwendet werden; für MP3 oder bestimmte Abtastraten mit ffmpeg konvertieren.

Vergleich: KI-Sprachaufnahme vs. menschliche Aufnahme vs. lokales Modell

KriteriumMenschliche AufnahmeLokales Open-Source-TTSDiese Fähigkeit
Benötigt GPU?Nein, aber Tonstudio und Verfügbarkeit des SprechersMeist ja (kleine Modelle laufen auf CPU, aber langsamer) + Download von Modellgewichten, EinrichtungNein, nur Python-Standardbibliothek lokal, Generierung in der Cloud
ÄnderungskostenSatzänderung oft Neuaufnahme und erneute SynchronisationNach Änderung erneute Ausführung, aber Segmentierung, Zusammenfügen und Synchronisation selbst gemachtNur geänderte Zeile erneut ausführen, restliche Sätze aus out/lines/ Cache – automatisches Zusammenfügen und Untertitel
Mehrere RollenMehrere Sprecher nötigHängt vom Modell ab; meist manuelle Segmentierung und Zusammenfügen[Rolle]-Tags im Skript, ein Befehl erzeugt gesamte Mehrspur-Audio
Untertitel-ZeitachsenSeparate Transkription und ZeitstempelMeist separater SpracherkennungslaufGleichzeitig mit der Aufnahme: SRT und manifest.json mit Start-/Endzeiten
Komplexe emotionale DarbietungEchter Mensch mit guter Tagesform bleibt unübertroffenAbhängig vom Modell und der ParametrierungStabil und konsistent, ideal für Informationsvermittlung und Massenproduktion; für Spitzenemotion weiterhin menschliche Aufnahme empfohlen

Fazit: Für tägliche Veröffentlichungen, viele Versionen und häufige Textänderungen bietet diese Fähigkeit die größten Vorteile bei Änderungskosten und Untertitel-Zeitachsen. Für einzelne, emotional extrem anspruchsvolle Spitzenprodukte lohnt sich weiterhin die menschliche Aufnahme.

Häufig gestellte Fragen (FAQ)

Benötigt die KI-Sprachaufnahme eine Grafikkarte oder ein lokales Modell? Nein. Die Generierung erfolgt in der Miragea-Cloud, lokal reicht Python 3.9+ Standardbibliothek – keine pip-Installation nötig.

Wie verwende ich meine eigene Stimme? Zwei Wege: eine bereits geklonte Rolle aus dem Account (actors für actor_id) oder eine serverseitig zugängliche Referenz-Audio-URL mit dem tatsächlich gesprochenen Text (ref_text=). Anforderungen und Preise siehe capabilities und die offizielle Website.

Können in einem Video mehrere Personen sprechen? Ja. Definiere am Skriptanfang mehrere Rollen mit eigener Stimme und Geschwindigkeit; im Text wechselst du mit [Rolle] – die Fähigkeit generiert Satz für Satz und fügt zu einer Spur zusammen, inklusive Untertitel.

Kann ich Stimmung und Emotion anpassen? Ja, mit Stimmungs-Tags: capabilities zeigt die verfügbaren tags[].label des ausgewählten Modus, die du auf die Rolle schreibst (tags=Tag-Name). Zusätzlich nutzt du speed= für die Geschwindigkeit und [pause] für Pausen.

Sind die Untertitel zeitlich genau? Die Start-/Endzeiten pro Satz basieren auf der tatsächlichen Audiolänge; die Verteilung innerhalb eines Satzes erfolgt proportional zur Zeichenanzahl. Für wortgenaue Zeitachsen kannst du die finale Aufnahme erneut mit recognize verarbeiten.

Muss ich bei einer einzigen Textänderung die ganze Aufnahme neu generieren? Nein. Ändere nur die betroffene Zeile und führe denselben Befehl erneut aus – nur geänderte Sätze werden neu generiert, der Rest aus out/lines/ wiederverwendet, inklusive neuem Zusammenfügen und Untertiteln.

Kostet die KI-Sprachaufnahme Geld? Wie viele Zeichen pro Vorgang? Der Verbrauch von Account-Guthaben, das Zeichenlimit pro Satz und die Abrechnungsregeln werden live in capabilities angezeigt; --dry-run ruft keine API auf.

Führt die Nutzung von KI-Sprachaufnahmen auf Douyin oder Video-Kanälen zur Sperrung? Kein Tool kann Traffic garantieren. Die Kennzeichnung als KI-generierter Inhalt ist gemäß den Plattformregeln erforderlich; der Traffic hängt hauptsächlich vom Inhalt ab.

Kann ich zu einem bereits aufgenommenen Video automatisch Untertitel erstellen? Ja: miragea_audio.py recognize --file Video.mp4 --wait --output Video.srt; mit --subtitle-format txt erhältst du den reinen Text.

Welche KI-Agenten werden unterstützt? Claude Code, Codex, OpenClaw, Cursor, WorkBuddy und andere Agenten, die Python-Skripte ausführen können.

Probleme?

SymptomLösung
missing_api_key / MIRAGEA_API_KEY is not setKey generieren mit export MIRAGEA_API_KEY=...; oder erstmal --dry-run
speakers without a voiceDer Rolle actor_id= oder ref= hinzufügen
401Key prüfen; Key nicht in Logs schreiben
403API-Zugriffsberechtigung des Accounts prüfen
400 / 413Parameter korrigieren: Modus, Tags, Geschwindigkeit, Zeichenlimit; oder Dateigröße reduzieren, Medien kürzen
409Idempotenz-Key für unterschiedliche Eingaben verwendet oder Untertitel-Tarif geändert: erneut bestätigen und absenden
429Guthaben aufgebraucht oder Ratenlimit erreicht – warten oder Guthaben aufladen
Zeitüberschreitung / NetzwerkfehlerAufgabe läuft möglicherweise noch: einfach denselben Befehl erneut ausführen (gleicher Idempotenz-Key holt die ursprüngliche Aufgabe) oder mit miragea_audio.py task / wait AUFGABEN-ID den Status abfragen – nicht mit neuem Key erneut senden
WAV-Formatinkonsistenz beim ZusammenfügenJede Satz-Audio liegt in out/lines/; mit ffmpeg oder einem Schnittprogramm manuell zusammenfügen

Offizieller Client-Exit-Code: 0 = Erfolg (kann bei fehlendem --wait noch in der Warteschlange sein), 1 = Aufgabe fehlgeschlagen, 2 = Client- oder API-Fehler.

Compliance

  • Klone nur deine eigene Stimme oder Stimmen, für die du eine ausdrückliche Erlaubnis hast – keine Nachahmung von Prominenten, Moderatoren, öffentlichen Personen oder Unbefugten.
  • Kennzeichne veröffentlichte Inhalte gemäß den Regeln zur Kennzeichnung KI-generierter Inhalte und den Richtlinien der jeweiligen Plattformen (Douyin, Kuaishou, Video-Kanäle, Xiaohongshu, Bilibili etc.).
  • scripts/miragea_audio.py ist der offizielle Client, unverändert ausgeliefert; scripts/voiceover.py (Skript-Zusammenfügung) ist ein Originalwerk unter MIT-Lizenz (siehe LICENSE.txt). Die Fähigkeiten für Sprachaufnahme und Untertitel werden von der offenen Miragea-API bereitgestellt.

English Summary

  • AI voiceover & subtitles (AI配音) for agents: write a script with [speaker] tags, run one command, get voiceover.wav, timed voiceover.srt and manifest.json.
  • Voices: saved voices in your account (actor_id) or voice cloning from a reference audio URL plus its transcript; generation modes, tone tags, speed 0.25–4.
  • Multi-speaker scripts are rendered line by line through the official client's generate and joined locally; recognize turns existing audio/video into SRT/TXT/JSON.
  • Limits and pricing come live from capabilities. Python 3.9+ standard library, no GPU, --dry-run offline. Service: Miragea API (https://miragea.ai/v1).

Schlüsselwörter: KI-Sprachaufnahme, Video-Vertonung, Stimmklonierung, Untertitelgenerierung, Text-to-Speech, Sprachsynthese, Stimmnachbildung, Mehrsprach-Aufnahme, Kurzvideo-Vertonung, Moderations-Vertonung, Filmrezensions-Vertonung, Roman-Promotion-Vertonung, Werbespot-Vertonung, englische Sprachaufnahme, KI-Erzähler, SRT, TTS, voiceover, voice cloning, text to speech, subtitles

Individual skills in this repo

This repo contains 2 individual skills — each has its own dedicated page.

yanghhu/ai-podcast-voiceover

AI播客、播客配音、双人对谈播客技能:把文章、读书笔记、公众号文章或写好的对谈稿,整理成适合“听”的播客稿,单人主播或两位主持人各用一个音色,逐句配音并拼成整期节目 WAV,同时输出 SRT 字幕和逐句时间轴;再用 shownotes.py 根据稿件里的 `## 章节` 自动生成带时间戳的节目章节(chapters.txt / chapters.json)和完整文字稿 shownotes.md,可直接贴到小宇宙、喜马拉雅、Apple Podcasts 等平台的节目简介。改一句只重配一句。可用账号里的角色或本人授权的参考音频声音。由 Miragea 开放 API 生成语音,本地只需 Python 3.9+ 标准库、无需显卡,可 --dry-run 离线试跑;计费与限额以 capabilities 实时返回为准。适用于 Claude Code、Codex、OpenClaw、Cursor、WorkBuddy。AI podcast, podcast voiceover, two-host dialogue, show notes, chapters.

yanghhu/novel-video-voiceover

小说推文配音、有声书配音、多角色配音技能:把小说推文文案、网文章节、故事、广播剧剧本按旁白和角色分配不同音色,一键生成整段配音 WAV、带角色名的 SRT 字幕和逐句时间轴 manifest.json,直接配画面做小说推文视频;段落、场景、章节停顿可控。适合小说推文号、故事号、网文作者有声化、睡前故事和广播剧小样。音色可用账号已有角色或参考音频声音克隆,固定旁白声线;语气标签和语速可调;改一句只重配一句。由 Miragea 开放 API 生成,本地只需 Python 3.9+ 标准库、无需显卡,可 --dry-run 离线试跑。适用于 Claude Code、Codex、OpenClaw、Cursor、WorkBuddy。Novel video voiceover, audiobook narration, multi-voice, SRT subtitles.

Verwandte Skills