資料介紹
描述
我在上一個項目中向您展示了如何將語音數據流式傳輸到您的計算機。這次我將向您展示如何在 ESP32 中傳輸數據并進行播放。讓我們開始吧。
1.搭建電路
如下圖所示連接放大器。現在您只需將紅線連接到 5V,將黑線連接到 GND,將黃線連接到 ESP32 開發板的 DAC_1 (GPIO25)。使用電位器,您可以控制聲音的音量。您不需要它,但它非常實用,否則它會非常響亮。
2.設置代碼
在您的計算機上打開 Arduino 軟件。將下面代碼部分的 Arduino 代碼粘貼到編輯器中。(不要忘記刪除之前的標準代碼?。┈F在在代碼的以下路徑中更改您的 WiFi 憑據:
const char* ssid = "YOUR SSID";
const char* password = "YOUR PASSWORD";
此外,您必須設置 Raspberry Pi 的 IP 地址。
const char* host = "YOUR SERVER IP ADDRESS";
現在您可以將代碼上傳到您的 ESP32 開發板。To Tools → Board 并選擇您的 ESP32 開發板。現在在工具→端口中選擇端口。現在您單擊“上傳”以上傳您的 Sectch。
3.它是如何工作的?
我使用了所謂的“循環緩沖區”,這是一個末端連接到開頭的數組。故名“循環緩沖區”。您可以在下面查看演示圖片或訪問https://en.wikipedia.org/wiki/Circular_buffer了解更多信息。主循環檢查緩沖區中是否有 800 個字節可用。當這適用時,ESP32 向服務器發送一個請求,由 0xFF(11111111binary) 組成。服務器響應接下來的 800 個字節,ESP32 將它們存儲在緩沖區中。
4.轉換你要播放的音頻文件
打開大膽。通過將文件拖到窗口中來打開文件。
- 將左下角的“Project Rate(Hz)”設置為 8000。
- 選擇您的音軌并轉到“曲目”→“混合”→“將立體聲混合為單聲道”。處理后你應該有一個通道的音頻。
- 現在單擊“曲目”→“重新采樣”。應該會彈出一個框。將“新采樣率:”設置為 8000,然后單擊“確定”。
- 現在您可以通過單擊“文件”->“導出”→“導出音頻”來導出音頻。選擇保存文件的目錄。除了將“文件類型”設置為“其他未壓縮文件”,將“標頭”設置為“原始(無標頭)”和將“編碼”設置為“無符號 8 位 PCM”。當您確定您選擇了正確的選項時,您單擊導出。以下信息可以忽略并接受。
5. 讓我們來測試一下吧!
從下面的代碼部分下載“Voice_Server.jar”文件和“demo.raw”文件。您需要安裝 Java!將 Voice_Server.jar、demo.raw 和原始文件復制到名為“Voice-Server”的新目錄中。
蘋果電腦:
打開終端應用程序。
輸入“cd”。將目錄圖標拖放到終端窗口中。它應該看起來像這樣:
cd /Users/julian/Desktop/Voice-Server
現在點擊進入。現在你在你的目錄中。現在你輸入
java -jar "Voice_Server.jar" "YourFileName.raw"
或者只是嘗試演示文件:
java -jar "Voice_Server.jar" "demo.raw"
點擊回車后程序讀取文件。這可能需要幾秒鐘,具體取決于您的文件大小。
插入 ESP32,現在您應該可以聽到音頻數據。
- 將您的Magicbit(ESP32)連接到thingsboard
- 樂鑫ESP32-MINI-1參考設計
- 樂鑫ESP32-MINI-1U參考設計
- 樂鑫ESP32-SenseKit參考設計
- 樂鑫ESP32-WROOM-32UE參考設計
- 樂鑫ESP32-LyraTD-DSPG_用戶手冊
- 樂鑫ESP32-DevKitS-V1.1參考設計
- 樂鑫ESP32-PICO-MINI-02參考設計
- 樂鑫ESP32-LyraTD-SYNA_用戶手冊
- 樂鑫ESP32-PICO-MINI-02U參考設計
- 樂鑫ESP32-MeshKit-Light_使用指南
- ESP32音頻產品設計指南
- esp32-s3_datasheet
- ESP32對講機音頻板
- esp32s下載電路原理圖下載 27次下載
- ESP32能取代STM32嗎?哪個更好? 2377次閱讀
- ESP32-C3 WIFI的工作模式 4478次閱讀
- 什么是ESP32-CAM攝像頭? 2.1w次閱讀
- 基于ESP32的簡易web服務器設計 3300次閱讀
- 基于ESP32-CAM的RSTP協議的網絡攝像頭 3150次閱讀
- 使用ESP32實現UDP通信的方法 5723次閱讀
- ESP32使用MiroPython編程環境搭建 2690次閱讀
- 基于ESP32制造有趣的超級馬里奧主題時鐘 4021次閱讀
- ESP8266/ESP32自動下載原理 4249次閱讀
- 基于ESP-WROOM-32E專為IoT設計的FireBeetle ESP32-E主控板介紹 4608次閱讀
- ESP32的數字遙測實現 1521次閱讀
- 如何使用兩個舵機為ESP32-CAM創建云臺控制 1.3w次閱讀
- 如何使用ESP32創建一個氣象站 3771次閱讀
- 一款基于ESP32的對講機傳輸音頻介紹 2.4w次閱讀
- dfrobotBeetle-ESP32控制器簡介 2695次閱讀
下載排行
本周
- 1ADI高性能電源管理解決方案
- 2.43 MB | 450次下載 | 免費
- 2免費開源CC3D飛控資料(電路圖&PCB源文件、BOM、
- 5.67 MB | 136次下載 | 1 積分
- 3基于STM32單片機智能手環心率計步器體溫顯示設計
- 0.10 MB | 125次下載 | 免費
- 4USB Type_C PD快充協議智能觸發芯片FS8025B應用手冊
- 1.48 MB | 3次下載 | 免費
- 5USB的PD快充協議電壓誘騙控制器FS312A中文手冊
- 1.51 MB | 2次下載 | 免費
- 6USB的PD和OC快充協議電壓誘騙控制器FS312B中文手冊
- 1.35 MB | 2次下載 | 免費
- 7基于三相二電平PFC和隔離DC-DC轉換器的11kW雙向電池充電器
- 618.10 KB | 2次下載 | 免費
- 8ADI公司串行端口開發和故障排除指南
- 343.09KB | 1次下載 | 免費
本月
- 1ADI高性能電源管理解決方案
- 2.43 MB | 450次下載 | 免費
- 2免費開源CC3D飛控資料(電路圖&PCB源文件、BOM、
- 5.67 MB | 136次下載 | 1 積分
- 3基于STM32單片機智能手環心率計步器體溫顯示設計
- 0.10 MB | 125次下載 | 免費
- 4使用單片機實現七人表決器的程序和仿真資料免費下載
- 2.96 MB | 44次下載 | 免費
- 53314A函數發生器維修手冊
- 16.30 MB | 31次下載 | 免費
- 6美的電磁爐維修手冊大全
- 1.56 MB | 22次下載 | 5 積分
- 7使用TL431設計電源
- 0.67 MB | 10次下載 | 免費
- 8如何正確測試電源的紋波
- 0.36 MB | 10次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935119次下載 | 10 積分
- 2開源硬件-PMP21529.1-4 開關降壓/升壓雙向直流/直流轉換器 PCB layout 設計
- 1.48MB | 420062次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233084次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費下載
- 340992 | 191367次下載 | 10 積分
- 5十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183335次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81581次下載 | 10 積分
- 7Keil工具MDK-Arm免費下載
- 0.02 MB | 73807次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65987次下載 | 10 積分
評論
查看更多