STT AssemblyAI
v1.1.0
What's new
See LOPs 0.1.1 Full changelog →
STT AssemblyAI v1.1.0 [ September 2, 2025 ]
- Added CHOP channels for parity with other STT operators
- Segments parameter for transcript segmentation
- Menu cleanup and dependency management
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
Streaming Active (Active)
op('stt_assemblyai').par.Active
Toggle - Default:
None
Copy to Clipboard (Copytranscript)
op('stt_assemblyai').par.Copytranscript
Pulse - Default:
None
Connection Sttstatus (Sttstatus)
op('stt_assemblyai').par.Sttstatus
Str - Default:
Disconnected
Connected (Connected)
op('stt_assemblyai').par.Connected
Toggle - Default:
None
Output Segments (out1) (Segments)
op('stt_assemblyai').par.Segments
Toggle - 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
Clear Transcript (Cleartranscript)
op('stt_assemblyai').par.Cleartranscript
Pulse - Default:
None
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:
None
Show Built-in Parameters (Showbuiltin)
op('stt_assemblyai').par.Showbuiltin
Toggle - Default:
None
Show Icon (Showicon)
op('stt_assemblyai').par.Showicon
Toggle - Default:
true
Version (Version)
op('stt_assemblyai').par.Version
Str - Default:
None
Last Updated (Lastupdated)
op('stt_assemblyai').par.Lastupdated
Str - Default:
None
Creator (Creator)
op('stt_assemblyai').par.Creator
Str - Default:
None
Website (Website)
op('stt_assemblyai').par.Website
Str - Default:
None
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”- Connect an Audio Device In CHOP to the input of the STT AssemblyAI operator.
- On the ‘Install/Config’ page, click ‘Install Dependencies’ if you haven’t already.
- Paste your AssemblyAI API key into the ‘AssemblyAI API Key’ parameter.
- On the ‘STTAssemblyAI’ page, toggle ‘Connected’ to On.
- Toggle ‘Streaming Active’ to On.
- The transcribed text will appear in the output DATs.
- 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.