借助包括 Jetson Nano、Xavier NX 和 AGX Xavier 在內(nèi)的模型,NVIDIA 生產(chǎn)了一系列緊湊型計(jì)算機(jī),能夠在各種環(huán)境中高效地部署 AI 解決方案,以滿足不同的需求和期望。
Jetson Nano 開發(fā)者套件是一款小巧而強(qiáng)大的計(jì)算機(jī),它允許用戶同時(shí)運(yùn)行多個(gè)神經(jīng)網(wǎng)絡(luò),用于圖像分類、對(duì)象檢測(cè)、分割和語音處理等應(yīng)用——所有這些都在一個(gè)功耗低至 5 瓦的緊湊型設(shè)備中。Jetson Nano 開發(fā)套件配備了各種外圍設(shè)備,包括 USB、以太網(wǎng)和 HDMI 連接。一種缺少但常見的外圍設(shè)備是某種形式的音頻輸入或輸出。如今,許多設(shè)備都配備了音頻插孔,有些甚至帶有板載麥克風(fēng)。
有很多方法可以為 Jetson 設(shè)備添加音頻功能。USB 揚(yáng)聲器和USB 麥克風(fēng)是一種簡(jiǎn)單的解決方案,但它們確實(shí)占用了寶貴的 USB 插槽,這些插槽可能更適合用于鍵盤、藍(lán)牙功能、Internet Keys 和其他配件。
在 Jetson 設(shè)備上,NVIDIA 通過 40 針 GPIO 擴(kuò)展接頭提供對(duì) I2C、SPI 和 I2S 等一系列外圍設(shè)備的訪問。為了處理音頻,我們最感興趣的是 I2S 外設(shè),它是一種用于連接數(shù)字音頻設(shè)備的電氣串行總線接口。我們不需要從頭開始創(chuàng)建 I2S 功能,但了解常見通信協(xié)議的來龍去脈總是有用的,因此有關(guān) I2S 的更多信息,請(qǐng)查看這篇精彩的文章。
Jetson 的 40 針擴(kuò)展接頭使我們能夠輕松訪問 I2S 外圍設(shè)備,并且通過適當(dāng)?shù)母郊?a target="_blank">電子設(shè)備,我們可以快速利用 I2S 功能。
來自協(xié)議開發(fā)商飛利浦半導(dǎo)體的 I2S 時(shí)序圖。(照片:SmartCow)
我們選擇的硬件
Adafruit I2S MEMS 麥克風(fēng)分線板 (SPH0645LM4H)是一款緊湊型音頻錄制解決方案,輸入頻率范圍為 50 Hz 至 15 kHz。該板沒有模擬輸出,而是純數(shù)字輸出。
許多微控制器通常配備模擬輸入,因此添加模擬音頻信號(hào)是一項(xiàng)簡(jiǎn)單的任務(wù)。對(duì)于更大更復(fù)雜的微控制器和微計(jì)算機(jī),不能保證模擬輸入。更復(fù)雜的是,眾所周知,模擬麥克風(fēng)系統(tǒng)會(huì)滲入噪音。通常可以找到 I2S 外設(shè)來代替模擬輸入。
麥克風(fēng)是一個(gè)單聲道元素——您可以選擇使用左聲道或右聲道。對(duì)于那些更喜歡/需要立體聲的人來說,使用兩個(gè)麥克風(fēng)的簡(jiǎn)單配置可以很容易地實(shí)現(xiàn),一個(gè)麥克風(fēng)設(shè)置在左聲道,第二個(gè)麥克風(fēng)設(shè)置在右聲道。值得一提的是,該設(shè)備是從設(shè)備,必須使用外部邏輯完全驅(qū)動(dòng)。
Adafruit MAX98357 I2S D 類單聲道放大器適用于具有數(shù)字音頻功能的微控制器和微型計(jì)算機(jī)。它可以接收標(biāo)準(zhǔn)的 I2S 數(shù)字音頻輸入,并將其解碼為模擬信號(hào),然后直接放大到揚(yáng)聲器中。這款緊湊型分線板解決了數(shù)字音頻輸出的兩個(gè)常見任務(wù):I2S 數(shù)字音頻轉(zhuǎn)換 (DAC) 和放大。放大增益也可以通過添加精心挑選的電阻器或可變電阻器來修改。
輸出是一個(gè)大約 300kHz 的方波 PWM,由揚(yáng)聲器線圈平均 - 聽不到高頻。事實(shí)上,它無需任何中間步驟即可直接驅(qū)動(dòng)通用揚(yáng)聲器。
這款小型單聲道放大器的重量超過了它的重量 - 能夠?yàn)?4 歐姆阻抗揚(yáng)聲器提供高達(dá) 3.2 瓦的功率(5V 功率 @ 10% THD)。鑒于其 D 類架構(gòu),該放大器非常高效,可輕松在 2.7V 至 5.5V 直流電源下運(yùn)行 - 非常適合便攜式和電池供電項(xiàng)目。
設(shè)置 Jetson Nano
Jetson Nano 是這個(gè)項(xiàng)目的核心。設(shè)置 Jetson Nano 是一個(gè)有據(jù)可查的過程。您可以找到有關(guān)如何完成此任務(wù)的各種資源。
對(duì)于我們的任務(wù),Jetson Nano 需要一根用于供電和編程的 USB 到 UART 電纜、一個(gè)鍵盤、鼠標(biāo)和 HDMI 顯示器。此外,我們需要將分線板連接到 Jetson Nano:
確保還將您的 MAX98357A 輸出連接到揚(yáng)聲器。我們使用了 8 歐姆、15 瓦的揚(yáng)聲器和 Jetson Nano 提供的 3.3V 電源。
配置 I2S
Jetson Nano 與 SPH0645 和 MAX98375A + 揚(yáng)聲器(照片:SmartCow)
啟動(dòng) Jetson Nano 后,在 Jetson 40 引腳 GPIO 擴(kuò)展接頭中配置 I2S 引腳是一個(gè)非常簡(jiǎn)單的過程:
1. 在開發(fā)者工具包上,打開命令行終端并運(yùn)行以下命令:
2. Jetson 將啟動(dòng)并顯示其主顯示屏。在我們的例子中,我們想要手動(dòng)配置 Jetson 40pin 接頭和配置接頭引腳。
3. 在“選擇所需功能(針對(duì)引腳):”頁面上,選擇 i2s4 選項(xiàng)。
4. 之后,您將被帶回主頁并要求重新啟動(dòng)并保存您所做的重新配置,因此請(qǐng)繼續(xù)并重新啟動(dòng)。
配置 Jetson 40pin 接頭(照片:SmartCow)
手動(dòng)配置頭針(照片:SmartCow)
選擇 i2s4 外設(shè)(照片:SmartCow)
保存引腳更改(照片:SmartCow)
保存并重啟!(照片:SmartCow)
如果您需要有關(guān)配置 Jetson 引腳的進(jìn)一步指導(dǎo),請(qǐng)查看此鏈接。
重新啟動(dòng)并重新登錄 Jetson Nano 后,您需要安裝以安裝任何更新,并下載幾個(gè)庫。
讓我們初始化我們的麥克風(fēng)設(shè)置:我們所要做的就是重置我們的聲卡,設(shè)置我們的音量,并指定我們希望我們的音頻信號(hào)使用的路徑。
在設(shè)置采樣率(48kHz)并指定所需的錄音長(zhǎng)度(本例中為 30 秒)后,我們終于可以開始錄音了!
錄制后你會(huì)注意到我們現(xiàn)在有一個(gè)名為“test.wav”的文件,這是錄制的音頻。我們還沒有完成,我們還可以播放錄制的音頻。讓我們重置聲卡并設(shè)置音量。
現(xiàn)在剩下要做的就是輸入命令來播放生成的音頻文件。
一定要花點(diǎn)時(shí)間坐下來享受聆聽演講的樂趣。請(qǐng)隨時(shí)查看我們的迷你演示。我們通過 SPH0645 麥克風(fēng)錄制了一首歌曲,并使用 MAX98357 播放。
結(jié)論
任務(wù)完成!我們已經(jīng)成功地為 Jetson Nano 開發(fā)套件構(gòu)建了一個(gè)端到端音頻系統(tǒng),該系統(tǒng)僅由一根 USB 電纜供電。接下來,您可能會(huì)包含一個(gè)機(jī)器學(xué)習(xí)模型并播放經(jīng)過更改的錄音版本。考慮從一種語言翻譯成另一種語言,添加過濾和壓縮等音頻效果,或創(chuàng)建語音映射(誰不想聽起來像達(dá)斯維德或摩根弗里曼?)
審核編輯:郭婷
-
麥克風(fēng)
+關(guān)注
關(guān)注
15文章
645瀏覽量
54891 -
usb
+關(guān)注
關(guān)注
60文章
7978瀏覽量
265558 -
機(jī)器學(xué)習(xí)
+關(guān)注
關(guān)注
66文章
8438瀏覽量
132913
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論