Principle:Openai Openai python Audio Playback
| Knowledge Sources | |
|---|---|
| Domains | Audio, Client_Helpers |
| Last Updated | 2026-02-15 00:00 GMT |
Overview
A local audio output pattern that plays synthesized or streamed audio through the system sound device for real-time listening.
Description
Audio playback handles the last-mile delivery of audio content to the user. It accepts various audio input formats (binary TTS responses, numpy arrays, streaming audio generators) and plays them through the local sound device. Playback can be synchronous (blocking) or streaming (processing audio chunks as they arrive). A stop predicate enables graceful interruption.
Usage
Use this principle when you need to play audio output from TTS or Realtime API responses locally. Requires the sounddevice and numpy packages to be installed.
Theoretical Basis
Audio playback follows a Producer-Consumer pattern:
# Direct playback
player = AudioPlayer()
player.play(audio_data) # Blocks until complete
# Streaming playback
async for chunk in audio_stream:
player.play_chunk(chunk) # Low-latency incremental playback
# Interruptible playback
player = AudioPlayer(should_stop=lambda: user_pressed_stop)
player.play(audio_data) # Stops when predicate returns True