examples.mic_realtime¶
Real-Time Microphone Transcription with Whisper - vllm-mlx Transcribes speech in real-time as you speak using your Mac's microphone.
View the complete module source at #L1-L236.
API details¶
Each callable below includes its exact signature, type annotations, inputs, defaults, return contract, documented exceptions, implementation source, and parsed docstring sections when the source provides them.
examples.mic_realtime
¶
Real-Time Microphone Transcription with Whisper - vllm-mlx
Transcribes speech in real-time as you speak using your Mac's microphone.
Usage
python examples/mic_realtime.py # Default (3s chunks) python examples/mic_realtime.py --chunk 5 # 5 second chunks python examples/mic_realtime.py --model parakeet # Faster model
Requirements
pip install sounddevice soundfile numpy
examples.mic_realtime.MODEL_ALIASES
module-attribute
¶
MODEL_ALIASES = {'whisper-large-v3': 'mlx-community/whisper-large-v3-mlx', 'whisper-turbo': 'mlx-community/whisper-large-v3-turbo', 'whisper-medium': 'mlx-community/whisper-medium-mlx', 'whisper-small': 'mlx-community/whisper-small-mlx', 'parakeet': 'mlx-community/parakeet-tdt-0.6b-v2', 'parakeet-v3': 'mlx-community/parakeet-tdt-0.6b-v3'}
examples.mic_realtime.RealtimeTranscriber
¶
Real-time audio transcription using Whisper.
Source code in examples/mic_realtime.py
examples.mic_realtime.RealtimeTranscriber.chunk_duration
instance-attribute
¶
examples.mic_realtime.RealtimeTranscriber.sample_rate
instance-attribute
¶
sample_rate = SAMPLE_RATE
examples.mic_realtime.RealtimeTranscriber.audio_queue
instance-attribute
¶
examples.mic_realtime.RealtimeTranscriber.load_model
¶
examples.mic_realtime.RealtimeTranscriber.audio_callback
¶
examples.mic_realtime.RealtimeTranscriber.transcribe_chunk
¶
Transcribe a chunk of audio.
Source code in examples/mic_realtime.py
examples.mic_realtime.RealtimeTranscriber.process_audio
¶
Process audio chunks in real-time.
Source code in examples/mic_realtime.py
examples.mic_realtime.RealtimeTranscriber.run
¶
Start real-time transcription.
Source code in examples/mic_realtime.py
examples.mic_realtime.main
¶
Source code in examples/mic_realtime.py
Complete contract reference¶
Expand any definition for its exact inputs, annotations, defaults, return contract, directly raised exceptions, source-grounded behavior, and immutable line link. This section includes private and nested definitions that ordinary API generators omit.
examples.mic_realtime.RealtimeTranscriber · class
examples.mic_realtime.RealtimeTranscriber(model_name: str, chunk_duration: float = 3.0, language: str = None)
Real-time audio transcription using Whisper.
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
model_name |
str |
yes |
none |
Required positional or keyword input. |
chunk_duration |
float |
no |
3.0 |
Optional positional or keyword input; defaults to 3.0. |
language |
str |
no |
None |
Optional positional or keyword input; defaults to None. |
Returns
- Constructs:
examples.mic_realtime.RealtimeTranscriber
Exceptions and behavior
Class RealtimeTranscriber declares 6 direct member(s).
No direct raise statement appears in this definition.
examples.mic_realtime.RealtimeTranscriber.__init__ · method
examples.mic_realtime.RealtimeTranscriber.__init__(model_name: str, chunk_duration: float = 3.0, language: str = None) -> not annotated
Method RealtimeTranscriber.__init__ updates self.model_name, self.chunk_duration, self.language, self.sample_rate; calls queue.Queue.
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
model_name |
str |
yes |
none |
Required positional or keyword input. |
chunk_duration |
float |
no |
3.0 |
Optional positional or keyword input; defaults to 3.0. |
language |
str |
no |
None |
Optional positional or keyword input; defaults to None. |
Returns
- Type:
not annotated
Exceptions and behavior
Method RealtimeTranscriber.__init__ updates self.model_name, self.chunk_duration, self.language, self.sample_rate; calls queue.Queue.
No direct raise statement appears in this definition.
examples.mic_realtime.RealtimeTranscriber.load_model · method
Load the STT model.
Parameters
This callable has no explicit inputs.
Returns
- Type:
not annotated
Exceptions and behavior
Method RealtimeTranscriber.load_model updates self.engine; calls print, STTEngine, self.engine.load.
No direct raise statement appears in this definition.
examples.mic_realtime.RealtimeTranscriber.audio_callback · method
examples.mic_realtime.RealtimeTranscriber.audio_callback(indata, frames, time_info, status) -> not annotated
Callback for audio input stream.
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
indata |
not annotated |
yes |
none |
Required positional or keyword input. |
frames |
not annotated |
yes |
none |
Required positional or keyword input. |
time_info |
not annotated |
yes |
none |
Required positional or keyword input. |
status |
not annotated |
yes |
none |
Required positional or keyword input. |
Returns
- Type:
not annotated
Exceptions and behavior
Method RealtimeTranscriber.audio_callback calls print, self.audio_queue.put, indata.copy.
No direct raise statement appears in this definition.
examples.mic_realtime.RealtimeTranscriber.transcribe_chunk · method
Transcribe a chunk of audio.
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
audio_data |
not annotated |
yes |
none |
Required positional or keyword input. |
Returns
- Type:
not annotated - Direct return expressions:
result.text.strip()
Exceptions and behavior
Method RealtimeTranscriber.transcribe_chunk calls tempfile.NamedTemporaryFile, sf.write, self.engine.transcribe, result.text.strip; returns result.text.strip().
No direct raise statement appears in this definition.
examples.mic_realtime.RealtimeTranscriber.process_audio · method
Process audio chunks in real-time.
Parameters
This callable has no explicit inputs.
Returns
- Type:
not annotated
Exceptions and behavior
Method RealtimeTranscriber.process_audio calls int, np.array, self.audio_queue.empty, self.audio_queue.get.
No direct raise statement appears in this definition.
examples.mic_realtime.RealtimeTranscriber.run · method
Start real-time transcription.
Parameters
This callable has no explicit inputs.
Returns
- Type:
not annotated - Direct return expressions:
self.transcriptions
Exceptions and behavior
Method RealtimeTranscriber.run updates self.is_recording; calls print, sd.InputStream, int, threading.Thread; returns self.transcriptions.
No direct raise statement appears in this definition.
examples.mic_realtime.main · function
Function main calls argparse.ArgumentParser, parser.add_argument, parser.parse_args, print; returns None.
Parameters
This callable has no explicit inputs.
Returns
- Type:
not annotated - Direct return expressions:
None
Exceptions and behavior
Function main calls argparse.ArgumentParser, parser.add_argument, parser.parse_args, print; returns None.
No direct raise statement appears in this definition.
Complete symbol map¶
This map also includes private definitions and nested helpers. The signature column exposes every explicit input even when an internal helper has no dedicated parameter prose.
| Symbol | Kind | Signature and inputs | What it does | Source |
|---|---|---|---|---|
RealtimeTranscriber |
class | RealtimeTranscriber(model_name: str, chunk_duration: float = 3.0, language: str = None) |
Real-time audio transcription using Whisper. | #L45-L171 |
RealtimeTranscriber.__init__ |
method | RealtimeTranscriber.__init__(model_name: str, chunk_duration: float = 3.0, language: str = None) -> not annotated |
Method RealtimeTranscriber.__init__ updates self.model_name, self.chunk_duration, self.language, self.sample_rate; calls queue.Queue. |
#L48-L60 |
RealtimeTranscriber.load_model |
method | RealtimeTranscriber.load_model() -> not annotated |
Load the STT model. | #L62-L68 |
RealtimeTranscriber.audio_callback |
method | RealtimeTranscriber.audio_callback(indata, frames, time_info, status) -> not annotated |
Callback for audio input stream. | #L70-L75 |
RealtimeTranscriber.transcribe_chunk |
method | RealtimeTranscriber.transcribe_chunk(audio_data) -> not annotated |
Transcribe a chunk of audio. | #L77-L90 |
RealtimeTranscriber.process_audio |
method | RealtimeTranscriber.process_audio() -> not annotated |
Process audio chunks in real-time. | #L92-L129 |
RealtimeTranscriber.run |
method | RealtimeTranscriber.run() -> not annotated |
Start real-time transcription. | #L131-L171 |
main |
function | main() -> not annotated |
Function main calls argparse.ArgumentParser, parser.add_argument, parser.parse_args, print; returns None. |
#L174-L232 |