robits.audio package

Submodules

robits.audio.audio module

class robits.audio.audio.CmdAudioRecorder(backend: str | None = None)

Bases: RecorderBase

commands = {'alsa': 'arecord --format=cd %OUTPUT_FILE%', 'pulse': 'parecord --file-format=wav %OUTPUT_FILE%'}
start_recording() Path
stop_recording() Path
class robits.audio.audio.OpenAIWhisper(recorder_type: str = 'sd', **kwargs)

Bases: AudioBase

class robits.audio.audio.SdAudioRecorder(rate: int = 16000, channels: int = 1, chunk: int = 1024)

Bases: RecorderBase

frames: List[bytes]
start_recording() Path
stop_recording() Path

robits.audio.cache_utils module

robits.audio.cache_utils.disk_cache(text_to_cache_filename_fn)
robits.audio.cache_utils.get_cache_filename(cache_dir: str, suffix: str, text: str) str
robits.audio.cache_utils.text_to_cache_filename_fn(*, cache_dir: str = PosixPath('/home/docs/.cache/robits'), suffix: str = 'wav', text: str) str

robits.audio.speech module

class robits.audio.speech.CmdAudioPlayer(backend=None, **kwargs)

Bases: object

commands = {'afplay': 'afplay %INPUT_FILE%', 'mplayer': 'mplayer %INPUT_FILE%'}
play(filename: str)
class robits.audio.speech.CmdSpeech(backend: str, **kwargs)

Bases: SpeechBase

commands = {'espeak': 'espeak'}
say(text: str)

Verbalizes a given text.

Parameters:

text – the text to verbalize

class robits.audio.speech.CoquiTTS(output_backend: str | None = None, **kwargs)

Bases: SpeechBase

say(text: str)

Verbalizes a given text.

Parameters:

text – the text to verbalize

synthesize_speech(text: str) str
class robits.audio.speech.OpenAIAPI(output_backend: str | None = None, **kwargs)

Bases: SpeechBase

say(text: str)

Verbalizes a given text.

Parameters:

text – the text to verbalize

synthesize_speech(text: str) str
robits.audio.speech.get_default_player_backend()

robits.audio.utils module

class robits.audio.utils.AudioHandler(level=0)

Bases: Handler

emit(record)

Do whatever it takes to actually log the specified logging record.

This version is intended to be implemented by subclasses and so raises a NotImplementedError.

robits.audio.utils.play_attention_sound()
robits.audio.utils.play_audio(audio_file: str) None

Currently synchronous

robits.audio.utils.play_camera_shutter()
robits.audio.utils.play_error_sound()
robits.audio.utils.play_info_sound()
robits.audio.utils.play_sound_sound()