Skip to main content

乐白机器人语音播报SDK

Project description

乐白机器人语音播报Python SDK。除了语音播放相关的方法可以使用(播放,停止播放,设置音量)。还封装了转盘煮面业务语音,方便调用

安装

lpy -m pip install -i https://mirrors.tuna.tsinghua.edu.cn/pypi/web/simple lebai_robot_voice_sdk 
pip install -i https://mirrors.tuna.tsinghua.edu.cn/pypi/web/simple lebai_robot_voice_sdk

更新 pip 包

lpy -m pip install --upgrade -i https://mirrors.tuna.tsinghua.edu.cn/pypi/web/simple lebai_robot_voice_sdk

快速上手

lebai_robot_voice_sdk 使用起来非常简单,安装完软件包后,python 程序里我们直接引入, 初始化实例,就可以使用了,下面是示例:

from lebai_robot_voice_sdk import LebaiRobotVoice, LebaiAudioError

# 初始化实例
voice = LebaiRobotVoice()

try:
    # 播放任意语音文件,audio_path是你任意语音文件的文件路径
    voice.play(audio_path)  
    
    # 转盘语音循环播报
    voice.play_turntable_loop_audio()  

    # 播放机器人急停播报
    voice.play_robot_estop()  

    # 播放碗被拿走播报(index: 0-4)
    voice.play_bowl_was_token_available(0)  

    # 播放缺料语音播报(index: 0-3)
    voice.play_cabinet_lack_index(0)  

    # 播放所有面柜缺料播报
    voice.play_all_cabinet_lack()  

    # 清理料筐播报
    voice.play_clean_basket()  

    # 汤面请等待加汤播报
    voice.play_wait_add_soup()  

    # 放碗下单时的提醒(index: 0-4)
    voice.play_put_bowl_remind(0)  

    # 制作完成提醒(id: 0-4)
    voice.play_turntable_make_complete_remind(0)  

except LebaiAudioError as e:  
    print(f"语音播报错误: {e}")

特性说明

串行执行原则

语音播报遵循串行执行原则,举个例子:

voice.play(path)
print("播放完了")

举例:假设有两行代码,只有等语音完全播放完毕, 比如这个语音文件时长为 5 秒,那么只有等语音完全播放完毕, 5 秒后才会执行下面的打印。依据此特性我们可以做任意逻辑,比如播报完后我们 time.sleep(3)延迟 3 秒继续播其他语音,或者循环的进行播放。

方法

实例化后voice = LebaiRobotVoice(),我们就可以调用不同的方法了,下面的都以 voice 为例。

play

播放任意语音文件(最好 mp3 格式)。

参数:

  • path: 需要传入任意并存在的音频文件路径。
from lebai_robot_voice_sdk import LebaiRobotVoice, LebaiAudioError  # pyright: ignore[reportMissingImports]
import pathlib

voice_path = pathlib.Path(__file__).parent / "assets" / "test.mp3"


if __name__ == "__main__":
  try:
    voice = LebaiRobotVoice()
    voice.play(voice_path)
  except LebaiAudioError as e:
    print(f"Error: {e}")
    exit(1)

set_volume

设置语音音量。

参数:

  • volume: 需要传入0-100之间的整数。
from lebai_robot_voice_sdk import LebaiRobotVoice, LebaiAudioError

try:
    voice = LebaiRobotVoice()
    voice.set_volume(50)
except LebaiAudioError as e:
    print(f"Error: {e}")
    exit(1)

get_audio_duration

获取语音文件时长

类型
参数 path: 需要传入任意并存在的音频文件路径。
返回值 duration 秒 float 浮点型
from lebai_robot_voice_sdk import LebaiRobotVoice, LebaiAudioError

try:
    voice = LebaiRobotVoice()
    voice.get_audio_duration(path)
except LebaiAudioError as e:
    print(f"Error: {e}")
    exit(1)

stop

停止语音播放。

from lebai_robot_voice_sdk import LebaiRobotVoice, LebaiAudioError

try:
    voice = LebaiRobotVoice()
    voice.stop()
except LebaiAudioError as e:
    print(f"Error: {e}")

close_audio_device

关闭音频设备,这个不常用,一般调度关闭的时候需要关掉

from lebai_robot_voice_sdk import LebaiRobotVoice, LebaiAudioError

try:
    voice = LebaiRobotVoice()
    voice.close_audio_device()
except LebaiAudioError as e:
    print(f"Error: {e}")

play_robot_estop

机器人急停语音播报

from lebai_robot_voice_sdk import LebaiRobotVoice, LebaiAudioError

try:
    voice = LebaiRobotVoice()
    voice.play_robot_estop()  
except LebaiAudioError as e:
    print(f"Error: {e}")

play_bowl_was_token_available

碗被拿走播报

类型
参数 index 0~4 代表第几个碗位 int
返回值
from lebai_robot_voice_sdk import LebaiRobotVoice, LebaiAudioError

try:
    voice = LebaiRobotVoice()

    voice.play_bowl_was_token_available(0)     
except LebaiAudioError as e:
    print(f"Error: {e}")

play_cabinet_lack_index

缺料语音播报,只播报某一层

类型
参数 index 0~3 代表第几层面柜 int
返回值
from lebai_robot_voice_sdk import LebaiRobotVoice, LebaiAudioError

try:
    voice = LebaiRobotVoice()
    voice.play_cabinet_lack_index(0)       
except LebaiAudioError as e:
    print(f"Error: {e}")

play_all_cabinet_lack

所有面柜缺料播报

from lebai_robot_voice_sdk import LebaiRobotVoice, LebaiAudioError

try:
    voice = LebaiRobotVoice()
    voice.play_all_cabinet_lack()         
except LebaiAudioError as e:
    print(f"Error: {e}")

play_clean_basket

清理料盒框播报

from lebai_robot_voice_sdk import LebaiRobotVoice, LebaiAudioError

try:
    voice = LebaiRobotVoice()
    voice.play_clean_basket() 
except LebaiAudioError as e:
    print(f"Error: {e}")

play_wait_add_soup

汤面请等待加汤播报

from lebai_robot_voice_sdk import LebaiRobotVoice, LebaiAudioError

try:
    voice = LebaiRobotVoice()
    voice.play_wait_add_soup()             
except LebaiAudioError as e:
    print(f"Error: {e}")

play_put_bowl_remind

放碗下单时的提醒语音

类型
参数 index 0~4 代表第几个碗位下单 int
返回值
from lebai_robot_voice_sdk import LebaiRobotVoice, LebaiAudioError

try:
    voice = LebaiRobotVoice()
    voice.play_put_bowl_remind(0)               
except LebaiAudioError as e:
    print(f"Error: {e}")

play_turntable_make_complete_remind

制作完成提醒

类型
参数 index 0~4 代表第几个碗位制作完成 int
返回值
from lebai_robot_voice_sdk import LebaiRobotVoice, LebaiAudioError

try:
    voice = LebaiRobotVoice()
    voice.play_turntable_make_complete_remind(0)                 
except LebaiAudioError as e:
    print(f"Error: {e}")

play_turntable_loop_audio

转盘煮面欢迎语音播报

from lebai_robot_voice_sdk import LebaiRobotVoice, LebaiAudioError

try:
    voice = LebaiRobotVoice()
    voice.play_turntable_loop_audio()                   
except LebaiAudioError as e:
    print(f"Error: {e}")

属性

playing

获取当前是否正在语音播报

from lebai_robot_voice_sdk import LebaiRobotVoice, LebaiAudioError

try:
    voice = LebaiRobotVoice()
    print(voice.playing)
except LebaiAudioError as e:  
    print(f"Error: {e}")

异常处理

我们通过 try except 捕获LebaiAudioError,就能捕获到有关该软件包的异常错误,方便打日志。

from lebai_robot_voice_sdk import LebaiRobotVoice, LebaiAudioError  

try:
    voice = LebaiRobotVoice()
    ...
except LebaiAudioError as e: 
    logger.error(e)
    print(f"lebai_robot_voice_sdk相关错误: {e}")

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

lebai_robot_voice_sdk-0.0.9.tar.gz (213.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

lebai_robot_voice_sdk-0.0.9-py3-none-any.whl (218.0 kB view details)

Uploaded Python 3

File details

Details for the file lebai_robot_voice_sdk-0.0.9.tar.gz.

File metadata

  • Download URL: lebai_robot_voice_sdk-0.0.9.tar.gz
  • Upload date:
  • Size: 213.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.8.20

File hashes

Hashes for lebai_robot_voice_sdk-0.0.9.tar.gz
Algorithm Hash digest
SHA256 e26b35b5af1fd8491a1534a93c205ece30cc35a968487a33ac23f554fe1fa5a0
MD5 052dece3b92e12358da1de8bfb9d2749
BLAKE2b-256 631dd26fd86aa69a98ca1b2e993490db5e996a3113f81155ebe2b85e027867ac

See more details on using hashes here.

File details

Details for the file lebai_robot_voice_sdk-0.0.9-py3-none-any.whl.

File metadata

File hashes

Hashes for lebai_robot_voice_sdk-0.0.9-py3-none-any.whl
Algorithm Hash digest
SHA256 f0d6d6360495ff59f60946c9b1a2a18403c39d20d1420e8bfb5f6345a0e5e98c
MD5 6c53c924ca5d5d5a67b00903980b00ca
BLAKE2b-256 c8194168c58c8160763b7d7729f728e4f8b89b5803681e2ab18eeaaa782f4eb6

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page