国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

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

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

掃碼添加小助手

加入工程師交流群

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

一、概述

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

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

TTS(文字轉語音)將文本內容實時轉換為語音播放,支持中文普通話和多種發音風格調節,可通過特殊標記控制語速、語調、音量等參數,適用于語音提示、內容播報等應用。

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

二、演示功能概述

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

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

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

點 powerkey 按鍵進行音頻切換

點擊 boot 按鍵停止音頻播放

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

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

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

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

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

使用 powerkey 按鍵進行音量減小,點擊 boot 按鍵進行音量增加

4、play_tts: 支持文字轉普通話輸出,需要固件支持:

播放一個 TTS

點 powerkey 按鍵進行 tts 的音色切換

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

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

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

使用 powerkey 按鍵進行錄音音量減小

點擊 boot 按鍵進行錄音音量增加

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

主程序錄音進行流式錄音

錄音過程中不斷的進行 recode_data_callback 回調,回調內容為音頻流的地址和長度

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

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

三、準備硬件環境

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

wKgZO2kgOu2AA872AAi8B2I9-r0987.pngwKgZO2kgOsWAPKC7AAwN2zcPKHo254.png

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

TYPE-C USB 數據線一根

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

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

四、準備軟件環境

1、Luatools 下載調試工具

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

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

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

五、API 接口

exaudio 擴展庫

exaudio 擴展庫是 audio 核心庫的擴展庫,通過簡化配置參數和統一接口設計,讓音頻開發更簡單易用。它完整支持錄音、播放音頻,播放 TTS(文字轉語音)功能,并內置了流式處理、電源管理等高級特性,建議新項目直接使用 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: 支持文字轉普通話輸出需要固件支持

wKgZO2kgPEyAIIPvAA4WLe59sKM398.png

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

wKgZO2kgPHyAZe9FAApvzRIpVx8590.png

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

wKgZO2kgPKeAQlxVAAh0iTIW7js538.png

七、運行結果展示

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

wKgZO2kgPPCAHHjLAAr0Fl8VfrU219.png

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

wKgZO2kgPR-AMai9AAaC-ULwQcg106.png

3、play_tts: 支持文字轉普通話輸出需要固件支持

wKgZPGkgPWyAbNtaAAqrJSYuBsU628.pngwKgZO2kgPYqAAeOqAAPcchOsmuE882.png

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

wKgZO2kgPbWAM2LkAAhH8gpxYpg724.png

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

wKgZO2kgPdyAXzhqAAbEhEhmtZQ640.png

八、總結

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

九、常見問題

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

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

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

確認所使用的固件是否支持 TTS 功能、檢查 TTS 播放流程是否正常觸發。

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

確認麥克風硬件連接正確且完好、檢查錄音參數格式設置是否支持、確保存儲空間充足。

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

檢查數據緩沖區管理邏輯確保數據持續供給、確認播放與錄音的采樣率及格式設置一致、優化系統任務調度避免阻塞。


今天的內容就分享到這里了!

審核編輯 黃宇

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 音頻處理
    +關注

    關注

    0

    文章

    162

    瀏覽量

    18298
  • TTS
    TTS
    +關注

    關注

    0

    文章

    62

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    DSP教學實驗箱:音頻采集與播放實驗

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

    HarmonyOS實戰開發-如何實現音頻低時延錄制和播放,AudioVivid音樂播放的相關功能

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

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

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

    基于HarmonyOS Player,實現音頻播放、管理控制和采集

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

    如何在FETMX8MQ-C核心板上實現低功耗音頻播放

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

    【1024平頭哥開發套件開發體驗】CB5654 開發實現TTS播放文件內容!

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

    在Linux下如何實現音頻播放功能

    在Linux下如何實現音頻播放功能
    發表于 01-26 06:35

    如何通過OpenHarmony的音頻模塊實現錄音變速功能

    ; return data;},總結本文介紹了通過使用OpenHarmony音頻模塊的AudioCapturer接口實現錄音功能。AudioCapturer接口對于原始數據的
    發表于 08-25 11:45

    HarmonyOS音頻開發指導:使用OpenSL ES開發音頻播放功能

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

    MD播放錄音功能

    MD播放錄音功能              錄音
    發表于 12-22 09:59 ?2089次閱讀

    采用SPCE061A設計的SIO實現數碼錄音播放

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

    使用低級音頻函數實現音頻采集與播放

    使用低級音頻函數實現音頻采集與播放,下來看看。
    發表于 01-21 11:17 ?8次下載

    微雪電子Arduino 音頻播放擴展板簡介

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

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

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

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

    剛接觸音頻開發時,TTS播放文件播放錄音功能看似
    的頭像 發表于 11-21 19:26 ?284次閱讀
    新手速成:<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><b class='flag-5'>音頻</b><b class='flag-5'>處理</b><b class='flag-5'>功能</b>