tts-generation

Converter roteiro de programa de rádio em áudio de fala com efeito de telefone nas vozes dos correspondentes usando a 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

Mais skills de google-gemini

greeter
google-gemini
Uma habilidade de saudação amigável
official
code-reviewer
google-gemini
Revisão automatizada de código para alterações locais e pull requests remotos, com análise estruturada em correção, manutenibilidade e segurança. Suporta alterações no sistema de arquivos local (staged e unstaged) e PRs remotos (por número ou URL) com checkout automático via GitHub CLI. Analisa o código em sete dimensões: correção, manutenibilidade, legibilidade, eficiência, segurança, tratamento de casos extremos e cobertura de testes. Executa suítes opcionais de verificação preflight (ex.: npm run preflight) para detectar...
official
review-duplication
google-gemini
Use esta habilidade durante revisões de código para investigar proativamente a base de código em busca de funcionalidades duplicadas, reinvenção da roda ou falha em reutilizar recursos existentes…
official
reconciliation
google-gemini
Conciliar despesas carregadas com o banco de dados de faturas pré-analisadas, sinalizando discrepâncias como divergências de valores, faturas ausentes e incompatibilidades de comerciante…
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
Acione esta habilidade quando o usuário quiser iniciar uma revisão de PR assíncrona, executar verificações em segundo plano em um PR ou verificar o status de uma revisão de PR assíncrona iniciada anteriormente…
official
ci
google-gemini
Uma habilidade especializada para o Gemini CLI que fornece alta performance e falha rápida.
official
critique
google-gemini
Expertise em auditar e corrigir scripts de repositório e workflows do GitHub Actions para garantir robustez técnica e segurança.
official