Skip to main content

preprocess_speech_markdown

Function preprocess_speech_markdown 

Source
pub fn preprocess_speech_markdown(text: &str, platform: &str) -> (String, bool)
Expand description

Convert SpeechMarkdown to SSML when detected, otherwise return the text unchanged. Returns (processed_text, is_ssml).

platform picks the SSML flavour:

  • "azure" → MicrosoftAzure
  • "google" → GoogleAssistant
  • "elevenlabs" → ElevenLabs pre-v3 prompt markup (<break> tags, no SSML document). Not SSML: is_ssml is returned false so engines pass the markup through instead of stripping it.
  • "elevenlabs-v3" → Eleven v3 audio-tag dialect ([whispers], [pause], native slash IPA). Eleven v3 parses no SSML at all.
  • "sapi" / "avsynth" / anything else → AmazonAlexa (the closest generic SSML baseline; SAPI’s own parser accepts the subset that speechmarkdown-rust emits for Alexa)

Available whenever the speechmarkdown feature is on (auto-enabled by cloud, sapi, and avsynth). Without it, this is a no-op stub.