把你的声音转换成文字对白!
voice-robotifier的Python项目详细描述
语音机器人
这个模块包含一个非常简单的类,用于录制音频,然后使用文本到语音程序dectalk回放。
设置
使用pip可以方便地进行安装:
pip install voice-robotifier
示例
importvoice_robotifiervr=voice_robotifier.VoiceRobotifier()vr.set_voice_name('Harry')vr.set_voice_rate(250)# words per minute# optional: use different input/output devices than your current default# vr.set_input_device('Microphone (C-Media USB Audio Device)')# vr.set_output_device('CABLE Input (VB-Audio Virtual Cable)')push_to_talk_key='v'vr.start(push_to_talk_key)
参考
VoiceRobotifier() -> VoiceRobotifier
创建新的VoiceRobotifier
实例。
VoiceRobotifier.start(key: Union[int, str], key_quit: Union[int, str] = 'esc', block: bool = True) -> Callable[None, None]
在push-to-talk模式下启动VoiceRobotifier
,其中key
是表示所需push-to-talk键的int或str,而key_quit
表示应导致线程停止的键。
方法的操作发生在守护进程线程中,如果block
是True
,则当前线程将加入该线程。如果要在程序运行时执行其他程序操作,请将block
设置为False
。
返回在调用时停止守护进程线程的函数。(这只在block
是False
时才真正有用,因为否则函数在发生异常之前不会返回任何内容。)
VoiceRobotifier.start_autodetect(energy_threshold: Union[float, None] = None, key_quit: Union[int, str] = 'esc', block: bool = True) -> Callable[None, None]
在自动检测模式下启动VoiceRobotifier
——它将等待音频输入具有比energy_threshold
更高的能量级别,然后再进行处理。在大多数情况下,该值通常应在150到3500之间。如果energy_threshold
是None
,则将对输入设备的当前能级进行采样以自动确定能级。
key_quit
和block
参数以及返回的函数的作用与VoiceRobotifier.start
中的相同。
VoiceRobotifier.set_voice_name(voice_name: str) -> None
设置应用于生成文本到语音音频的语音。voice_name
应该是由VoiceRobotifier.list_voices
返回的列表中的名称。
VoiceRobotifier.set_voice_rate(voice_rate: int) -> None
设置用于文本到语音转换的语音速度(以字/分钟为单位)。默认值为200。
VoiceRobotifier.list_voice_names() -> List[str]
返回通过dectalk可用的所有文本到语音的名称列表。它们可以作为参数传递给VoiceRobotifier.set_voice
。
VoiceRobotifier.set_input_device(device_name: str) -> None
设置用于获取语音识别音频的设备。device_name
应该是由VoiceRobotifier.list_device_names
返回的列表中的名称。
如果从未对VoiceRobotifier
对象调用此方法,则它将使用系统的默认输入设备。
VoiceRobotifier.set_output_device(device_name: str) -> None
设置用于将生成的文本输出到语音音频的设备。device_name
应该是由VoiceRobotifier.list_device_names
返回的列表中的名称。
如果从未对VoiceRobotifier
对象调用此方法,则它将使用系统的默认输出设备。
VoiceRobotifier.list_device_names() -> List[str]
返回系统上可以作为参数传递给VoiceRobotifier.set_input_device
和VoiceRobotifier.set_output_device