概述
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)