[應用] 在 ESP32 Audio 開發板的 VoIP 範例
開發板介紹 安信可 公司(Ai-Thinker)基於 ESP32 晶片推出一塊具有語音功能的 ESP32 Audio Kit 開發板,簡稱 ESP32-A1S,它與原廠的 ESP32 Lyrat 開發板都使用同一套 ESP-ADF SDK 軟體,但是開發板的電路有些差異,底層的驅動程式需要替換才能順利開發。 首先,最大的差異在 ESP32-A1S 語音編碼晶片採用 AC101 ,不過晶片被封裝在 ESP32 模組上,所以我們在開發板上面看不到這顆晶片,然而 ESP32 Lyrat 板採用 ES8388 晶片,因此在 ESP-ADF 中語音編碼的驅動程式需要更替。另外,其他不一樣的地方都在 GPIO 接腳的連接上,整理後,如下表所示,我們需要調整 ADF 底層的 HAL 和 Board 的配置,SDK 才能正常使用。 表一:ESP32-Lyrat 與 Audio Kit 開發板的差異 第一步,下載 ESP-ADF。在 VS Code 開發環境下[1],按 F1 後,選取 "Install ESP-ADF",VS Code 會自動從 GitHub 下載,並安裝 ADF 開發套件。如果是使用 ESP32-Lyrat 板子,可以直接跳到第四步,創建範例開始開發了。使用 ESP32-A1S 板子前,需要調整一下底層代碼,接續前面動作,我們從 GitHub 下載 A1S 的驅動程式, ESP32-A1S-AudioKit 程式碼,其目錄結構與 ADF 一樣,方便我們相互比對兩者差異。 第二步,到 \esp-adf\components\ audio_hal \driver 目錄下,將下載 A1S 裡的 AC101 驅動程式放進來。接著,要將 ac101 目錄和 ac101.c 加到 CMakeLists.txt 文件,同樣也要加到 component.mk 文件裡 ,這樣編譯過程就會把 AC101 驅動程式加進來編譯了。 第三步,我們再到...