STT AssemblyAI
STT AssemblyAI
Section titled “STT AssemblyAI”Overview
Section titled “Overview”The STT AssemblyAI operator transcribes audio data into text in real-time using AssemblyAI’s streaming Speech-to-Text API. It’s designed for live audio input, providing continuous transcription with options for turn detection and formatting.
Requirements
Section titled “Requirements”- An active AssemblyAI account and API key.
- The
assemblyai
andwebsockets
Python libraries installed in your TouchDesigner environment.
Input/Output
Section titled “Input/Output”- Input: The operator accepts a CHOP with audio data.
- Output:
- A DAT containing the full transcript.
- A DAT containing segmented transcriptions with timestamps and confidence scores.
- A DAT with session information.
Parameters
Section titled “Parameters”Page: STTAssemblyAI
Section titled “Page: STTAssemblyAI” Status (Status)
op('stt_assemblyai').par.Status
Str - Default:
None
Connected (Connected)
op('stt_assemblyai').par.Connected
Toggle - Default:
false
Streaming Active (Active)
op('stt_assemblyai').par.Active
Toggle - Default:
false
Connection Sttstatus (Sttstatus)
op('stt_assemblyai').par.Sttstatus
Str - Default:
Disconnected
Copy to Clipboard (Copytranscript)
op('stt_assemblyai').par.Copytranscript
Pulse - Default:
None
Clear Transcript (Cleartranscript)
op('stt_assemblyai').par.Cleartranscript
Pulse - Default:
None
Format Turns (Formatturns)
op('stt_assemblyai').par.Formatturns
Toggle - Default:
true
End of Turn Threshold (Endofturnthreshold)
op('stt_assemblyai').par.Endofturnthreshold
Float - Default:
0.7
Min End Turn Silence (ms) (Minendofturnsilence)
op('stt_assemblyai').par.Minendofturnsilence
Int - Default:
160
Max Turn Silence (ms) (Maxturnsilence)
op('stt_assemblyai').par.Maxturnsilence
Int - Default:
2400
Idle Timeout (minutes) (Idletimeout)
op('stt_assemblyai').par.Idletimeout
Int - Default:
5
Estimated Total Cost ($) (Estopcost)
op('stt_assemblyai').par.Estopcost
Float - Default:
0.0
Page: Install/Config
Section titled “Page: Install/Config” AssemblyAI API Key (Apikey)
op('stt_assemblyai').par.Apikey
Str - Default:
API KEY LOADED (KeyManager)
Install Dependencies (Installdependencies)
op('stt_assemblyai').par.Installdependencies
Pulse - Default:
None
Page: About
Section titled “Page: About” Bypass (Bypass)
op('stt_assemblyai').par.Bypass
Toggle - Default:
false
Show Built-in Parameters (Showbuiltin)
op('stt_assemblyai').par.Showbuiltin
Toggle - Default:
false
Show Icon (Showicon)
op('stt_assemblyai').par.Showicon
Toggle - Default:
true
Version (Version)
op('stt_assemblyai').par.Version
Str - Default:
1.0.0
Last Updated (Lastupdated)
op('stt_assemblyai').par.Lastupdated
Str - Default:
2025-07-28
Creator (Creator)
op('stt_assemblyai').par.Creator
Str - Default:
dotsimulate
Website (Website)
op('stt_assemblyai').par.Website
Str - Default:
https://dotsimulate.com
ChatTD Operator (Chattd)
op('stt_assemblyai').par.Chattd
OP - Default:
None
Usage Examples
Section titled “Usage Examples”Real-time Transcription from a Microphone
Section titled “Real-time Transcription from a Microphone”1. Connect an Audio Device In CHOP to the input of the STT AssemblyAI operator.2. On the 'Install/Config' page, click 'Install Dependencies' if you haven't already.3. Paste your AssemblyAI API key into the 'AssemblyAI API Key' parameter.4. On the 'STTAssemblyAI' page, toggle 'Connected' to On.5. Toggle 'Streaming Active' to On.6. The transcribed text will appear in the output DATs.7. **IMPORTANT:** Toggle 'Connected' to Off when you are finished to avoid unnecessary charges.
Best Practices
Section titled “Best Practices”- For best results, use a sample rate of 16kHz.
- Adjust the ‘End of Turn Threshold’ and silence parameters to fine-tune how the operator detects pauses in speech.
Troubleshooting
Section titled “Troubleshooting”- If you’re having connection issues, check your API key and ensure the
assemblyai
andwebsockets
libraries are installed. - On macOS, you may need to install the
certifi
package to ensure proper SSL certificate handling. The operator attempts to handle this automatically.
Technical Notes
Section titled “Technical Notes”- This operator uses AssemblyAI’s Universal-Streaming model, which is optimized for real-time transcription with low latency.
- The
Format Turns
parameter is enabled by default in this operator to provide more readable transcripts with punctuation and casing. This differs from the AssemblyAI API default. - The
Idle Timeout
parameter is a feature of this operator and not a direct feature of the AssemblyAI API. It is intended to help manage connection persistence, but as noted in the warning above, it is not a reliable method for preventing charges. - AssemblyAI supports data residency only in the US and EU.