tts-voiceover
TTS Voice Over Skill
Generates per-slide WAV voice-over files from YAML speaker_notes using Azure AI Speech neural voices with SSML pronunciation control.
Overview
This skill reads content.yaml files from a PowerPoint skill content directory, extracts speaker_notes fields, applies acronym aliases for correct pronunciation of technical terms, and produces one WAV file per slide. Supports dry-run mode for SSML template verification without Azure credentials.
Synthesis uses Azure AI Speech neural voices, including the HD voices such as en-US-Andrew:DragonHDLatestNeural. HD voices are offered in a subset of Azure regions; check the Speech service regions before choosing SPEECH_REGION.
Narration produced by this skill is synthetic. Tell listeners that the voice is AI-generated, following Microsoft's disclosure design guidelines for synthetic voices. HVE demo-material CI does not synthesize speech; it generates silent videos.
Prerequisites
- Azure Speech resource: see Azure AI Speech pricing for the free-tier allowance and HD voice rates.
- Authentication: Microsoft Entra ID (
SPEECH_RESOURCE_ID, recommended) or a resource key (SPEECH_KEY). - Region:
SPEECH_REGIONis required for synthesis and has no default. Dry-run mode does not need it. - Python 3.11+ with
uvfor virtual environment management. - Data handling note: Speaker-notes content is transmitted to the configured
SPEECH_REGIONfor synthesis. For prebuilt neural voices, Microsoft states that neither the input text nor the output audio is stored in Microsoft logs; see Data, privacy, and security for text to speech. Operators must still set an approved region and avoid sending regulated or confidential narration.