tts-generation

Convertir un script d'émission radio en audio vocal avec un effet téléphonique sur les voix des correspondants en utilisant l'API Interactions.

npx skills add https://github.com/google-gemini/gemini-managed-agents-templates --skill tts-generation

TTS Generation

Convert the radio show script into speech audio using the Gemini TTS model via the Interactions API. Apply a telephone bandpass filter to correspondent voices so they sound like phone call-ins, while keeping the host's voice clean studio-quality.

Embedded Script

python3 skills/tts-generation/scripts/generate_tts.py --workspace ./workspace

Arguments

ArgumentDefaultDescription
--workspaceworkspaceRoot workspace directory
--workers8Max parallel TTS worker threads

What it does

  1. Reads the script from {workspace}/data/script.md.
  2. Parses it into individual (speaker, text) turns and assigns voices.
  3. Generates TTS for all turns in parallel using a thread pool (default 8 workers).
  4. Retries each failed turn up to 3 times with exponential backoff.
  5. Applies an ffmpeg telephone bandpass filter (300Hz–3.4kHz) to correspondent voices.
  6. Keeps the host (Paul) audio clean and unfiltered.
  7. Concatenates all segments in original script order into a single WAV.

Dependencies

  • google-genai (>= 2.0.0)
  • ffmpeg (system)

API Details

Uses the Interactions API with single-speaker TTS — no multi-speaker workaround needed.

Voice Assignment

Voices are assigned dynamically based on [Male] / [Female] gender tags in the script:

SpeakerVoiceAudio Treatment
Paul (host)PuckClean — no filter
Caller [Female] — 1stKoreTelephone filter
Caller [Female] — 2ndAoedeTelephone filter
Caller [Male] — 1stCharonTelephone filter
Caller [Male] — 2ndFenrirTelephone filter

Voices cycle round-robin if there are more callers than available voices. Accent tags ([Accent: Irish], etc.) are injected into the TTS prompt to influence pronunciation.

Telephone Filter

Applied via ffmpeg to correspondent audio segments:

highpass=f=300, lowpass=f=3400, acompressor, volume=1.5

This simulates the standard telephone bandwidth (300Hz–3.4kHz) and adds compression to mimic phone codec dynamics.

Output

  • Primary output: {workspace}/audio/speech/speech.wav
  • Format: WAV, 24kHz, 16-bit PCM, mono
  • Intermediate segments: {workspace}/audio/speech/segments/turn_*.wav

Plus de skills de google-gemini

greeter
google-gemini
Une compétence d'accueil amicale
official
code-reviewer
google-gemini
Révision automatisée du code pour les modifications locales et les pull requests distantes avec une analyse structurée couvrant la correction, la maintenabilité et la sécurité. Prend en charge les modifications du système de fichiers local (staged et unstaged) et les PR distantes (par numéro ou URL) avec extraction automatique via GitHub CLI. Analyse le code selon sept dimensions : correction, maintenabilité, lisibilité, efficacité, sécurité, gestion des cas limites et couverture de test. Exécute des suites de vérification préalable optionnelles (ex. : npm run preflight) pour détecter...
official
review-duplication
google-gemini
Utilisez cette compétence lors des revues de code pour examiner de manière proactive la base de code à la recherche de fonctionnalités dupliquées, de réinventions de la roue ou d’absence de réutilisation de l’existant…
official
reconciliation
google-gemini
Concilier les dépenses chargées avec la base de données de factures pré-analysées, en signalant les écarts tels que les différences de montant, les factures manquantes et les discordances de commerçant…
official
agent-tui
google-gemini
Main Agents: Do NOT use this skill directly. If you need to test the TUI, invoke the `tui_tester` subagent. Drive terminal UI (TUI) applications…
official
async-pr-review
google-gemini
Déclenchez cette compétence lorsque l'utilisateur souhaite lancer une revue de PR asynchrone, exécuter des vérifications en arrière-plan sur une PR, ou vérifier le statut d'une revue de PR asynchrone déjà lancée…
official
ci
google-gemini
Une compétence spécialisée pour Gemini CLI qui offre des performances élevées et un échec rapide
official
critique
google-gemini
Expertise en audit et correction des scripts de dépôt et des workflows GitHub Actions pour garantir la robustesse technique et la sécurité.
official