概述
QuecPython 作为专为物联网设计的开发框架,通过高度封装的 Python 接口为嵌入式设备提供了完整的音频处理能力。本文主要介绍如何利用 QuecPython 快速实现音频功能的开发。
核心优势
- 极简开发:3行代码完成基础音频录制与播放。
- 快速上手:无需音频专业知识即可快速上手。
- 文档齐全:完整的技术文档和示例代码支持。
主要功能
TTS - 文本到语音播放
创建 TTS 对象
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') #任务Atts.play(2, 0, 2, '222') #任务B
Audio - 音频播放
创建 Audio 对象
class audio.Audio(device)
参数详情请参考 audio.Audio。
设置 pa 引脚
该方法用于设置输出 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 Pinaud = audio.Audio(0)# 设置pa
aud.set_pa(Pin.GPIO15,2)# 播放MP3
aud.play(2, 1, 'U:/music.mp3')
Record - 录音
创建 Record 对象
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 audiorecord = audio.Record()record.start('recordfile.wav', 10)