simulstream.server.speech_processors
Functions
|
Instantiate a SpeechProcessor subclass based on configuration. |
|
|
Import the speech processor class from its string definition. |
Classes
|
Abstract base class for speech processors. |
- class simulstream.server.speech_processors.SpeechProcessor(config: SimpleNamespace)
Abstract base class for speech processors.
Subclasses must implement methods to load models, process audio chunks, set source/target languages, and clear internal states.
- abstractmethod clear() None
Clear internal states, such as history of cached audio and/or tokens, in preparation for a new stream or conversation.
- abstractmethod end_of_stream() IncrementalOutput
This method is called at the end of audio chunk processing. It can be used to emit hypotheses at the end of the speech to conclude the output.
- Returns:
The incremental output (new and deleted tokens/strings).
- Return type:
- abstractmethod classmethod load_model(config: SimpleNamespace)
Load and initialize the underlying speech model.
- Parameters:
config (SimpleNamespace) – Configuration of the speech processor.
- abstractmethod process_chunk(waveform: float32) IncrementalOutput
Process a chunk of waveform and produce incremental output.
- Parameters:
waveform (np.float32) – A 1D NumPy array of the audio chunk. The array is PCM audio normalized to the range
[-1.0, 1.0]sampled atsimulstream.server.speech_processors.SAMPLE_RATE.- Returns:
The incremental output (new and deleted tokens/strings).
- Return type:
- abstractmethod set_source_language(language: str) None
Set the source language for the speech processor.
- Parameters:
language (str) – Language code (e.g.,
"en","it").
- abstractmethod set_target_language(language: str) None
Set the target language for the speech processor (for translation).
- Parameters:
language (str) – Language code (e.g.,
"en","it").
- simulstream.server.speech_processors.build_speech_processor(speech_processor_config: SimpleNamespace) SpeechProcessor
Instantiate a SpeechProcessor subclass based on configuration.
The configuration should specify the fully-qualified class name in the
typefield (e.g."simulstream.server.speech_processors.MyProcessor").- Parameters:
speech_processor_config (SimpleNamespace) – Configuration for the speech processor.
- Returns:
An instance of the configured speech processor.
- Return type:
- Raises:
AssertionError – If the specified class is not a subclass of SpeechProcessor.
- simulstream.server.speech_processors.speech_processor_class_load(speech_processor_class_string: str) type[SpeechProcessor]
Import the speech processor class from its string definition.
- Parameters:
speech_processor_class_string (str) – Full name of the speech processor class to load.
- Returns:
A class object for the speech processor class.
- Return type:
SpeechProcessorClass
- Raises:
AssertionError – If the specified class is not a subclass of SpeechProcessor.