QuecPython 作为专为物联网设计的开发框架,通过高度封装的 Python 接口为嵌入式设备提供了完整的音频处理能力。本文主要介绍如何利用 QuecPython 快速实现音频功能的开发。
class audio.TTS(device)
参数详情请参考 audio.TTS。
该方法用于开始语音播放。
TTS.play(priority, breakin, mode, str)
API 详情请参考 TTS.play。
该方法用于设置播放音量大小,音量值应在区间[0 ~ 9],0表示静音。
TTS.setVolume(vol)
API 详情请参考 TTS.setVolume。
该方法用于设置TTS播放速度,速度值应在区间[0 ~ 9]。
TTS.setSpeed(speed)
API 详情请参考 TTS.setSpeed。
import audio
tts = audio.TTS(1)
# case:正在播放任务A,且A允许被打断,此时任务B到来,且优先级高于任务A,那么A会被打断,直接播放B
tts.play(1, 1, 2, '111') #任务A
tts.play(2, 0, 2, '222') #任务B
class audio.Audio(device)
参数详情请参考 audio.Audio。
该方法用于设置输出 pa 的 gpio。参照对应开发板的原理图,设置 pa 引脚,这样开发板的 SPK 接口才会有声音输出。
Audio.set_pa(gpio,num)
API 详情请参考 Audio.set_pa。
该方法用于音频文件播放。支持 mp3、amr 和 wav 格式文件播放。
Audio.play(priority, breakin, filename)
API 详情请参考 Audio.play。
该方法用于设置播放音量大小,音量值在区间[0 ~ 11],0表示静音。
Audio.setVolume(vol)
API 详情请参考 Audio.setVolume。
该方法用于音频流播放,支持 mp3、amr 和 wav 格式的音频流播放。
Audio.playStream(format, buf)
API 详情请参考 Audio.playStream。
import audio
from machine import Pin
aud = audio.Audio(0)
# 设置pa
aud.set_pa(Pin.GPIO15,2)
# 播放MP3
aud.play(2, 1, 'U:/music.mp3')
class audio.Record(device)
参数详情请参考 audio.Record。
该方法用于开始录音。
Record.start(file_name,seconds)
API 详情请参考 Record.start。
该方法用于开始录音音频流。
注意:录制音频流的同时,应及时读取音频流。目前是采用循环 buf,不及时读取,会导致数据丢失。
Record.stream_start(format, samplerate, time)
API 详情请参考 Record.stream_start。
import audio
record = audio.Record()
record.start('recordfile.wav', 10)