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

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

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

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

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

合宙LuatOS ? 來(lái)源:合宙LuatOS ? 作者:合宙LuatOS ? 2025-11-21 19:26 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

剛接觸音頻開(kāi)發(fā)時(shí),TTS播放、文件播放與錄音功能看似復(fù)雜,實(shí)則是實(shí)現(xiàn)完整音頻處理的基礎(chǔ)。本文從新手視角出發(fā),拆解這三大功能的核心邏輯——資源管理、播放控制與狀態(tài)反饋,幫你快速掌握核心并整合為完整的音頻處理功能,高效完成開(kāi)發(fā)任務(wù)。

一、概述

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

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

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

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

二、演示功能概述

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

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

自動(dòng)播放一個(gè) sample-6s.mp3 音樂(lè)

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

點(diǎn)擊 boot 按鍵停止音頻播放

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

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

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

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

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

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

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

播放一個(gè) TTS

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

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

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

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

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

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

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

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

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

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

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

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

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

wKgZO2kgOu2AA872AAi8B2I9-r0987.pngwKgZO2kgOsWAPKC7AAwN2zcPKHo254.png

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

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

Air8000 開(kāi)發(fā)板/核心板通過(guò) 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 號(hào)固件。

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

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

五、API 接口

exaudio 擴(kuò)展庫(kù)

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

六、代碼解析

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

七、運(yùn)行結(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 開(kāi)發(fā)板或者 Air8000 核心板 +AirAUDIO_1010 音頻配件板,實(shí)現(xiàn)完整的音頻處理功能,涵蓋了音頻文件播放、流式播放、TTS 語(yǔ)音合成以及文件錄音和流式錄音兩種錄音模式,為開(kāi)發(fā)各類語(yǔ)音應(yīng)用提供了靈活的硬件基礎(chǔ)和軟件解決方案。

九、常見(jiàn)問(wèn)題

1. 音頻播放沒(méi)有聲音怎么辦?

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

2. TTS 播放沒(méi)有聲音怎么辦?

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

3. 錄音功能無(wú)法工作怎么辦?

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

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

檢查數(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)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 音頻處理
    +關(guān)注

    關(guān)注

    0

    文章

    162

    瀏覽量

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

    關(guān)注

    0

    文章

    62

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    10. 100ASK_V853-PRO開(kāi)發(fā)板支持錄音播放音頻

    ? 本章主要講述如何使用板載的MIC拾音咪頭錄音并使用喇叭播放音頻。
    的頭像 發(fā)表于 05-12 10:40 ?2859次閱讀
    10. 100ASK_V853-PRO開(kāi)發(fā)板支持<b class='flag-5'>錄音</b>和<b class='flag-5'>播放音頻</b>

    鴻蒙開(kāi)發(fā)實(shí)戰(zhàn)項(xiàng)目:錄音變聲應(yīng)用

    沒(méi)有設(shè)置,默認(rèn)是正常錄音的速度,設(shè)置完成以后點(diǎn)擊開(kāi)始錄音,啟動(dòng)錄音功能,點(diǎn)擊錄音結(jié)束后,停止錄音
    發(fā)表于 03-01 17:24

    【正點(diǎn)原子STM32N647開(kāi)發(fā)板試用】--音頻錄音播放

    */ } 三.調(diào)試測(cè)驗(yàn) 1.準(zhǔn)備SD卡,在根目錄Voice文件夾下放如下wav格式音頻文件,供播放使用,同時(shí)這個(gè)文件也是錄音存放
    發(fā)表于 02-01 12:47

    【振南ZN-X開(kāi)發(fā)板(51版)】VS1003錄音到FlashROM 文件播放[簡(jiǎn)易Flash錄音筆]

    VS1003錄音到FlashROM WAV文件播放[簡(jiǎn)易Flash錄音筆]錄音是VS1003的另一個(gè)大的
    發(fā)表于 06-17 14:32

    16k錄音+播放的代碼

    前言:最近在做畢設(shè)的過(guò)程中,需要用到錄音播放方面的知識(shí)。所以,在借鑒了正點(diǎn)原子例程之后,成功修改出了16k錄音+播放的代碼。在錄音之后馬上接
    發(fā)表于 08-12 06:46

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

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

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

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

    CB5654開(kāi)發(fā)應(yīng)用TTS

    前段時(shí)間實(shí)現(xiàn)一個(gè)播放SD的里的音樂(lè)的功能!今天試著實(shí)現(xiàn)讀取SD卡里的文件,并用TTS播放文件內(nèi)
    發(fā)表于 03-08 06:37

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

    景、全連接、全智能時(shí)代的智能物聯(lián)網(wǎng)操作系統(tǒng)。多媒體子系統(tǒng)是OpenHarmony系統(tǒng)中的核心子系統(tǒng),為系統(tǒng)提供了相機(jī)、音頻和視頻等多媒體功能。多媒體子系統(tǒng)的音頻模塊、
    發(fā)表于 08-25 11:45

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

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

    MD播放錄音功能

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

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

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

    基于ESP32構(gòu)建音頻播放

    在這里,我們將使用LM386 和一個(gè)帶有 ESP32 的揚(yáng)聲器來(lái)播放音樂(lè)文件。音頻輸出可能不大,但此應(yīng)用程序顯示了 ESP32 板播放音頻文件的能力。
    發(fā)表于 08-08 15:37 ?2.6w次閱讀
    基于ESP32<b class='flag-5'>構(gòu)建</b>的<b class='flag-5'>音頻</b><b class='flag-5'>播放</b>器

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

    音頻解碼芯片(Audio Codec)及MIC麥克,可支持本地的錄音功能;使用配套喇叭即可將錄音保存的數(shù)據(jù)進(jìn)行播放,操作極為方便。 本期,我
    的頭像 發(fā)表于 09-27 07:06 ?1093次閱讀
    你要的<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播放、文件播放錄音核心,實(shí)現(xiàn)完整功能

    播放TTS、播放音頻文件錄音構(gòu)建完整音頻
    的頭像 發(fā)表于 11-21 19:27 ?274次閱讀
    速通<b class='flag-5'>音頻</b><b class='flag-5'>處理</b>:<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><b class='flag-5'>核心</b>,實(shí)現(xiàn)<b class='flag-5'>完整</b><b class='flag-5'>功能</b>