91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

速通音頻處理:掌握TTS播放、文件播放與錄音核心,實現(xiàn)完整功能

青山老竹農(nóng) ? 來源:合宙LuatOS ? 作者:合宙LuatOS ? 2025-11-21 19:27 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

播放TTS、播放音頻文件及錄音是構(gòu)建完整音頻處理功能的三大核心模塊。若想快速掌握并實現(xiàn)完整音頻處理能力,無需深挖底層細(xì)節(jié),只需聚焦“資源加載、播放控制、狀態(tài)同步與異常處理”四大關(guān)鍵環(huán)節(jié)——本文將拆解這三大模塊的核心邏輯,助你高效打通從核心功能到完整功能的實現(xiàn)路徑。

一、概述

本文檔詳細(xì)介紹了基于 Air8000 開發(fā)板或者 Air8000 核心板的音頻功能開發(fā),涵蓋音頻播放、文字轉(zhuǎn)語音、流式音頻處理和錄音等核心功能。通過本指南,開發(fā)者可以快速掌握 Air8000 的音頻處理能力,并實現(xiàn)各種音頻應(yīng)用場景。

錄音功能將麥克風(fēng)采集的模擬聲音信號轉(zhuǎn)換為數(shù)字音頻文件,支持 AMR 和 PCM 格式,可設(shè)置采樣率、時長和存儲路徑,適用于語音記錄、語音識別等場景。

TTS(文字轉(zhuǎn)語音)將文本內(nèi)容實時轉(zhuǎn)換為語音播放,支持中文普通話和多種發(fā)音風(fēng)格調(diào)節(jié),可通過特殊標(biāo)記控制語速、語調(diào)、音量等參數(shù),適用于語音提示、內(nèi)容播報等應(yīng)用。

播放音頻文件功能用于播放設(shè)備中的音頻文件,支持 MP3、WAV、AMR 等多種格式,可進(jìn)行單文件或多文件連續(xù)播放,適用于音樂、語音提示等場景。其中流式播放僅支持 PCM 格式。適用于音樂播放、語音提示、告警音效等各種音頻應(yīng)用場景。

二、演示功能概述

1、main.lua:主程序入口文件,加載以下 2-6 文件運行。

2、play_file.lua: 播放音頻文件,可支持 wav,amr,mp3 格式音頻:

自動播放一個 sample-6s.mp3 音樂

點 powerkey 按鍵進(jìn)行音頻切換

點擊 boot 按鍵停止音頻播放

3、play_stream: 流式播放音頻,僅支持 PCM 格式:

創(chuàng)建一個播放流式音頻 task(task_audio)

創(chuàng)建一個模擬獲取流式音頻的 task(audio_get_data)

此 task 通過流式傳輸不斷向 exaudio.play_stream_write 填入播放的音頻

播放 task 不斷播放傳入流式音頻

使用 powerkey 按鍵進(jìn)行音量減小,點擊 boot 按鍵進(jìn)行音量增加

4、play_tts: 支持文字轉(zhuǎn)普通話輸出,需要固件支持:

播放一個 TTS

點 powerkey 按鍵進(jìn)行 tts 的音色切換

支持五種音色:51 – 許久、52 – 許多、53 – 曉萍、54 – 唐老鴨、55 – 許寶寶 - 點擊 boot 按鍵停止音頻播放

5、record_file: 錄音到文件,僅支持 PCM 格式

主程序錄音到/record.amr 文件

使用 powerkey 按鍵進(jìn)行錄音音量減小

點擊 boot 按鍵進(jìn)行錄音音量增加

6、record_stream: 流式錄音,僅支持 PCM。

主程序錄音進(jìn)行流式錄音

錄音過程中不斷的進(jìn)行 recode_data_callback 回調(diào),回調(diào)內(nèi)容為音頻流的地址和長度

7、sample-6s.mp3/10.amr: 用于測試本地 mp3 和 amr 文件播放

8、test.pcm: 用于測試 pcm 流式播放(實際可以云端下載)

三、準(zhǔn)備硬件環(huán)境

1、Air8000 開發(fā)板 + 喇叭或者Air8000 核心板 +AirAudio_1010 音頻配件板 + 喇叭

wKgZO2kgOu2AA872AAi8B2I9-r0987.pngwKgZO2kgOsWAPKC7AAwN2zcPKHo254.png

Air8000 核心板和 AirAudio_1010 配件板的硬件接線方式為:

TYPE-C USB 數(shù)據(jù)線一根

Air8000 開發(fā)板/核心板通過 TYPE-C USB 口供電;

TYPE-C USB 數(shù)據(jù)線直接插到核心板的 TYPE-C USB 座子,另外一端連接電腦 USB 口;

四、準(zhǔn)備軟件環(huán)境

1、Luatools 下載調(diào)試工具

2、Air8000 V2016 版本固件,選擇支持 TTS 功能的 1、3、5、7、13 或 101、103、105、107、113 號固件。

3、 luatos 需要的腳本和資源文件

4、 lib 腳本文件:使用 Luatools 燒錄時,勾選 添加默認(rèn) lib 選項,使用默認(rèn) lib 腳本文件;

五、API 接口

exaudio 擴(kuò)展庫

exaudio 擴(kuò)展庫是 audio 核心庫的擴(kuò)展庫,通過簡化配置參數(shù)和統(tǒng)一接口設(shè)計,讓音頻開發(fā)更簡單易用。它完整支持錄音、播放音頻,播放 TTS(文字轉(zhuǎn)語音)功能,并內(nèi)置了流式處理、電源管理等高級特性,建議新項目直接使用 exaudio 替代 audio 核心庫。

六、代碼解析

1、main.lua:主程序入口;

wKgZO2kgO72AP4gHAAwXHd5dreM580.png

2、play_file.lua: 播放音頻文件,可支持 wav,amr,mp3 格式音頻

wKgZO2kgO-2APBMLAA0T4J4QF00522.png

3、play_stream: 流式播放音頻,僅支持 PCM 格式

wKgZPGkgPBmAQIq1AA5BLOKJ1W0004.png

4、play_tts: 支持文字轉(zhuǎn)普通話輸出需要固件支持

wKgZO2kgPEyAIIPvAA4WLe59sKM398.png

5、record_file: 錄音到文件,僅支持 PCM 格式

wKgZO2kgPHyAZe9FAApvzRIpVx8590.png

6、record_stream: 流式錄音,僅支持 PCM

wKgZO2kgPKeAQlxVAAh0iTIW7js538.png

七、運行結(jié)果展示

1、play_file.lua: 播放音頻文件,可支持 wav,amr,mp3 格式音頻

wKgZO2kgPPCAHHjLAAr0Fl8VfrU219.png

2、play_stream: 流式播放音頻,僅支持 PCM 格式

wKgZO2kgPR-AMai9AAaC-ULwQcg106.png

3、play_tts: 支持文字轉(zhuǎn)普通話輸出需要固件支持

wKgZPGkgPWyAbNtaAAqrJSYuBsU628.pngwKgZO2kgPYqAAeOqAAPcchOsmuE882.png

4、record_file: 錄音到文件,僅支持 PCM 格式

wKgZO2kgPbWAM2LkAAhH8gpxYpg724.png

5、record_stream: 流式錄音,僅支持 PCM

wKgZO2kgPdyAXzhqAAbEhEhmtZQ640.png

八、總結(jié)

本文演示了如何使用 Air8000 開發(fā)板或者 Air8000 核心板 +AirAUDIO_1010 音頻配件板,實現(xiàn)完整的音頻處理功能,涵蓋了音頻文件播放、流式播放、TTS 語音合成以及文件錄音和流式錄音兩種錄音模式,為開發(fā)各類語音應(yīng)用提供了靈活的硬件基礎(chǔ)和軟件解決方案。

九、常見問題

1. 音頻播放沒有聲音怎么辦?

檢查硬件連接是否正確、確認(rèn)喇叭是否工作正常、檢查音頻配件板的供電和使能引腳配置是否正確、驗證 GPIO 管腳配置是否正確。

2. TTS 播放沒有聲音怎么辦?

確認(rèn)所使用的固件是否支持 TTS 功能、檢查 TTS 播放流程是否正常觸發(fā)。

3. 錄音功能無法工作怎么辦?

確認(rèn)麥克風(fēng)硬件連接正確且完好、檢查錄音參數(shù)格式設(shè)置是否支持、確保存儲空間充足。

4. 流式播放或錄音過程中中斷怎么辦?

檢查數(shù)據(jù)緩沖區(qū)管理邏輯確保數(shù)據(jù)持續(xù)供給、確認(rèn)播放與錄音的采樣率及格式設(shè)置一致、優(yōu)化系統(tǒng)任務(wù)調(diào)度避免阻塞。


今天的內(nèi)容就分享到這里了!

審核編輯 黃宇

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 音頻處理
    +關(guān)注

    關(guān)注

    0

    文章

    162

    瀏覽量

    18294
  • TTS
    TTS
    +關(guān)注

    關(guān)注

    0

    文章

    62

    瀏覽量

    11543
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    DSP教學(xué)實驗箱:音頻采集與播放實驗

    學(xué)習(xí)McASP管腳的使用方法,掌握音頻采集播放的原理和過程,并實現(xiàn)音頻的采集與播放。
    的頭像 發(fā)表于 10-25 17:41 ?2975次閱讀
    DSP教學(xué)實驗箱:<b class='flag-5'>音頻</b>采集與<b class='flag-5'>播放</b>實驗

    HarmonyOS實戰(zhàn)開發(fā)-如何實現(xiàn)音頻低時延錄制和播放,AudioVivid音樂播放的相關(guān)功能

    介紹 本示例主要展示了音頻低時延錄制和播放,AudioVivid音樂播放的相關(guān)功能: 低時延錄制。 低時延播放。 AudioVivid
    發(fā)表于 05-11 20:26

    音頻文件(WAV)特技播放的原理及實現(xiàn)

    本帖最后由 eehome 于 2013-1-5 10:08 編輯 音頻文件播放是開發(fā)多媒體軟件中的一個重要內(nèi)容,但有時需要對它進(jìn)行特技播放,如快速播放,慢速
    發(fā)表于 03-12 00:42

    基于HarmonyOS Player,實現(xiàn)音頻播放、管理控制和采集

    只對核心代碼進(jìn)行講解,對于完整代碼,我們在9 參考章節(jié)提供下載方式。接下來我們會講解整個工程的代碼結(jié)構(gòu),如下圖:api:音頻播放器及媒體接口文件
    發(fā)表于 09-16 15:07

    如何在FETMX8MQ-C核心板上實現(xiàn)低功耗音頻播放

    Cortex-M4處理器。本文將系統(tǒng)講解——如何在FETMX8MQ-C核心板上實現(xiàn)低功耗音頻播放。01、低功率
    發(fā)表于 12-20 07:24

    【1024平頭哥開發(fā)套件開發(fā)體驗】CB5654 開發(fā)實現(xiàn)TTS播放文件內(nèi)容!

    前段時間實現(xiàn)一個播放SD的里的音樂的功能!今天試著實現(xiàn)讀取SD卡里的文件,并用TTS
    發(fā)表于 01-13 18:38

    在Linux下如何實現(xiàn)音頻播放功能?

    在Linux下如何實現(xiàn)音頻播放功能?
    發(fā)表于 01-26 06:35

    如何通過OpenHarmony的音頻模塊實現(xiàn)錄音變速功能?

    ; return data;},總結(jié)本文介紹了通過使用OpenHarmony音頻模塊的AudioCapturer接口實現(xiàn)錄音功能。AudioCapturer接口對于原始數(shù)據(jù)的
    發(fā)表于 08-25 11:45

    HarmonyOS音頻開發(fā)指導(dǎo):使用OpenSL ES開發(fā)音頻播放功能

    攜帶錄音數(shù)據(jù)的buffer。size:表示buffer的大小。 完整示例 參考以下示例代碼,播放一個音頻文件。 添加頭文件。 #includ
    發(fā)表于 10-24 17:17

    MD播放錄音功能

    MD播放錄音功能              錄音
    發(fā)表于 12-22 09:59 ?2088次閱讀

    采用SPCE061A設(shè)計的SIO實現(xiàn)數(shù)碼錄音播放

    采用SPCE061A設(shè)計的SIO實現(xiàn)數(shù)碼錄音播放 本文就是介紹利用SPCE061A的這兩個資源和串行接口的FLASH(SPR1024)來開發(fā)數(shù)碼錄音
    發(fā)表于 04-20 11:45 ?1302次閱讀
    采用SPCE061A設(shè)計的SIO<b class='flag-5'>實現(xiàn)</b>數(shù)碼<b class='flag-5'>錄音</b>及<b class='flag-5'>播放</b>

    使用低級音頻函數(shù)實現(xiàn)音頻采集與播放

    使用低級音頻函數(shù)實現(xiàn)音頻采集與播放,下來看看。
    發(fā)表于 01-21 11:17 ?8次下載

    微雪電子Arduino 音頻播放擴(kuò)展板簡介

    Arduino音頻播放模塊 VS1053音頻解碼 帶錄音功能 支持常用音頻文件格式 多
    的頭像 發(fā)表于 12-19 15:56 ?3137次閱讀
    微雪電子Arduino <b class='flag-5'>音頻</b><b class='flag-5'>播放</b>擴(kuò)展板簡介

    你要的錄音&amp;播放錄音功能,直接用!Air201資產(chǎn)定位模組LuatOS快速入門

    音頻解碼芯片(Audio Codec)及MIC麥克,可支持本地的錄音功能;使用配套喇叭即可將錄音保存的數(shù)據(jù)進(jìn)行播放,操作極為方便。 本期,我
    的頭像 發(fā)表于 09-27 07:06 ?1085次閱讀
    你要的<b class='flag-5'>錄音</b>&amp;<b class='flag-5'>播放</b><b class='flag-5'>錄音</b><b class='flag-5'>功能</b>,直接用!Air201資產(chǎn)定位模組LuatOS快速入門

    新手速成:掌握TTS/文件播放/錄音核心,構(gòu)建完整音頻處理功能

    剛接觸音頻開發(fā)時,TTS播放、文件播放錄音功能看似
    的頭像 發(fā)表于 11-21 19:26 ?277次閱讀
    新手速成:<b class='flag-5'>掌握</b><b class='flag-5'>TTS</b>/<b class='flag-5'>文件</b><b class='flag-5'>播放</b>/<b class='flag-5'>錄音</b><b class='flag-5'>核心</b>,構(gòu)建<b class='flag-5'>完整</b><b class='flag-5'>音頻</b><b class='flag-5'>處理</b><b class='flag-5'>功能</b>