Text to Speech
Generate speech audio from a prompt when a trigger or event occurs and save locally or play via SIP.
Overview
Generate speech audio from a prompt when a trigger or event occurs and save locally or play via SIP.
Text to Speech
This node generates an audio file from a text prompt when a trigger or event occurs. The audio is saved locally on the filesystem, and the node outputs metadata indicating whether a new audio file was generated.
Inputs & Outputs
- Input media: Raw Video.
- Output media: Raw Video.
- Output metadata:
nodes.node_id.audio_generated_delta.
Properties
| Property | Description | Type | Default | Required |
|---|---|---|---|---|
trigger_source | Generate audio from events generated by other nodes or a custom defined trigger. Options: Events from previous nodes (built_in); Custom Trigger (custom). | enum | custom | Yes |
trigger | Generate audio when this condition evaluates to true. Conditional on trigger_source being custom. | trigger-condition | null | Yes |
interval | Min. time between consecutive generations. Unit: seconds. | float | 10 | No |
enabled | Enabled | bool | true | No |
prompt_source | Prompt Source. Options: Static prompt (static); Metadata path (metadata_path). | enum | static | Yes |
prompt_text | Static Prompt. Conditional on prompt_source being static. | string | "" | No |
prompt_metadata_path | Comma-separated metadata paths to extract prompt text. Conditional on prompt_source being metadata_path. Format: comma-separated metadata paths or patterns. | string | "" | No |
tts_provider | TTS Provider. Options: Lumeo Cloud (lumeo); ElevenLabs Cloud (elevenlabs). | enum | lumeo | Yes |
lumeo_voice_id | Voice. Options: Male (male); Female (female). Conditional on tts_provider being lumeo. | enum | male | Yes |
elevenlabs_api_key | ElevenLabs API Key. Conditional on tts_provider being elevenlabs. | string | null | Yes |
elevenlabs_voice_id | ElevenLabs Voice ID. Conditional on tts_provider being elevenlabs. | string | DXFkLCBUTmvXpp2QwZjA | Yes |
elevenlabs_model_id | ElevenLabs Model ID. Conditional on tts_provider being elevenlabs. | string | eleven_flash_v2_5 | No |
audio_format | Audio Format. Options: MP3 (mp3); WAV (wav). | enum | mp3 | No |
sip_enabled | When enabled, plays the generated audio to a SIP endpoint (e.g. a Hanwha speaker) via RTP. Audio format is forced to WAV when SIP is enabled. | bool | false | Yes |
sip_ip | SIP Endpoint IP. Conditional on sip_enabled being true. | string | "" | Yes |
sip_port | SIP Port. Conditional on sip_enabled being true. | number | 5060 | Yes |
sip_username | SIP user/extension on the endpoint. Conditional on sip_enabled being true. | string | 51 | Yes |
sip_password | SIP password (optional, for future digest auth support). Conditional on sip_enabled being true. | string | "" | No |
When SIP output is enabled, audio format is automatically forced to WAV. The node establishes a SIP call to the endpoint, streams the audio as G.711 u-law over RTP, then terminates the call.
Output Metadata
The fields below are declared by this node's metadata schema; the JSON values are representative examples.
| Path | Type | Description |
|---|---|---|
nodes.<node_id>.audio_generated_delta | boolean | When audio is generated |
nodes.<node_id>.audio_filepath | string | The filepath of the audio file generated, present when audio is generated |
nodes.<node_id>.type | string | Identifies the node type that produced this metadata. |
JSON example
{
"nodes": {
"text_to_speech1": {
"audio_filepath": "/path/to/output",
"audio_generated_delta": false,
"type": "text_to_speech"
}
}
}Updated 19 days ago
Did this page help you?
