1. 程式人生 > >自制基於 Snips 和 Snowboy 的智慧音箱來保護你的隱私

自制基於 Snips 和 Snowboy 的智慧音箱來保護你的隱私

一步步教你用現有硬體,構建隱私、開源、聲控的音箱。

Snips 的團隊已經開發了一款開源智慧揚聲器,它與 Spotify 一起執行

音箱(或揚聲器)專注於音樂播放,並且可以輕鬆地通過說出您想要聽的東西,來控制您正在聽的音樂。它純粹只是一個演示專案,但是我們已經習慣了便利性,所以我們希望讓任何有興趣,在家就可能以簡單的複製。

我們在整個專案中,將學到關於 Raspberry Pi 上的音樂播放、Arduino 和各種 IoT 技術,並希望能分享最有趣的部分。我們將介紹揚聲器的每個部分。但是為了儘可能簡單,我們將其分解為5個部分:

  • 步驟1:Raspberry Pi 映象

  • 步驟2:物料清單

  • 步驟3:在 Pi 上設定軟體和驅動程式

  • 步驟4:為您的揚聲器新增語音控制

  • 步驟5:燈光與聲音

  • 步驟6:組裝一切

所以,這是一個簡短的說明,說明了這個揚聲器的主要組成部分和主要學習的描述。某些部分比其他部分更具技術性,但我們希望對任何嘗試自己去構建類似專案的人都可能有用。在我們幾個月前,當我們在這個專案上進行第一步時,這對我們來說肯定是非常有用的!

所以讓我們開始吧。

步驟1: Raspberry Pi 映象

在這一步,我們將介紹,安裝一個專用於聲音控制的一體式 Raspberry Pi 映象。 如果您想要為您的揚聲器新增其他功能(例如,天氣預報),則可以在此處(Snips Voice Platform)檢視更高階的配置。 讓我們開始吧:

1.下載 snips spkr 映象:

https://s3.amazonaws.com/snips/raspbian/spkr.zip

2.將映象燒錄到 Raspberry Pi 映象中

3.將您的 SD 卡插入樹莓,然後開啟並等待 Raspberry Pi 啟動

4.SSH 到你的 Raspberry Pi(使用者名稱: pi,密碼:password),如:

  1. ssh [email protected]local

5.現在到了有趣的部分!以下是向您的揚聲器新增語音控制的簡單方式。從 Docker 檢索 NLU 引擎:

  1. docker pull snipsdocker/platform

6.複製你的 Spotify 授權資訊你的 home 資料夾的 config 檔案

7.安裝依賴

  1. cd home-python

  2. sudo -H pip install -r requirements.txt

  3. /home/pi/mopidy_setup.sh

8.在啟動時,執行 Snips NLU 服務

  1. sudo systemctl enable spkr.snips.service

9.重啟 Raspberry Pi

OK,所以現在你的 Raspberry Pi 有一個 AI,它已經準備好連線到它的組織了 :耳朵(麥克風),聲樂和聲(揚聲器)和燈(leds)...!

步驟2:材料清單

以下是我們用於製作聲控音箱所需要的材料:0?wx_fmt=jpeg

材料清單

重要的部分

  • Raspberry Pi Model 3

  • Hifiberry AMP+ & 12V Adapter

  • 揚聲器

  • USB 麥克風

有趣的部分

這些部分不是強制性的,但它們使你的聲音啟用的揚聲器脫穎而出!

  • Arduino Micro

  • Neopixel Ring 24 

  • 被動散熱器

盒子

為了使您更容易組裝這些部件,我們製作了一個 3D 列印的示例:https://s3.amazonaws.com/labs.snips.ai/downloads/spkr3dparts.zip。

如果你沒有 3D 印表機,那沒關係,我們也沒有!我們使用 3D Hubs 服務來列印我們的版本。

雜項

  • 直流母插頭

  • 熱膠槍

  • 螺絲 2mm x 6mm

  • 線(音訊和電線)

步驟3:在 Raspberry Pi 上安裝軟體和驅動

a.設定 Spotify

製作聲音啟用的揚聲器的第一步是,設定音樂播放。 為此,我們決定使用 Mopidy,這是一款開源音樂播放平臺,提供輕鬆的方式連線多種音樂來源和多種播放方式。它內建 Spotify 支援,一些現有的基於 Web 的控制器應用程式,以及一個用於以程式設計方式控制播放的非常有效的API

要啟用 Spotify 的流音樂,您需要一個具有電子郵件身份驗證的高階帳戶。如果您使用Facebook建立了帳戶,則可以選擇新增電子郵件密碼驗證。 。

  1. /!\ This account must use a username and password to authenticate, andnot the Facebook authentication.

然後:

  • 建立 Spotify 應用程式

  • 從應用程式裡獲取 clientid 和 clientsecret

  • 儲存此資訊,並將其複製到 home/pi/config 檔案中

b.連線Hifiberry

為揚聲器供電並提高聲音質量(Raspberry Pi的預設音質不是最好),我們使用的是 Hifiberry AMP +。有很多音效卡可以使用,有些是專門為 Raspberry Pi 製作的,雖然大多數音效卡應該可以工作。我們決定使用 HiFiBerry,因為它似乎是當時最容易入門的選擇,我們對結果也感到滿意。

  1. The good thing is that you don’t need and extra alimentation for the hifiberry, because it powers the Raspberry pi

HiFiBerry 位於 Raspberry Pi 的頂部,作為一個擴充套件板。它需要一個 12V 的電源為自身供電,並具有用於連線揚聲器的聯結器。為了被系統識別,必須對 ALSA 配置檔案進行一些細微的修改,但是 HiFiBerry 教程使這個過程相當簡單。

從 /boot/config.txt 檔案中,刪除這一行:

  1. dtparam=audio=on

並新增以下行(這取決於您使用的卡的型號,這裡我們使用 HiFiBerry AMP +)

  1. dtoverlay=hifiberry-amp

設定完成!

步驟4: 為揚聲器新增聲音控制

通過使用 Snips SDK,我們可以通過 Web 介面,輕鬆地為音樂播放器新增語音控制。一旦你告訴 Snips SDK,你想要理解什麼樣的短語,你所需要做的就是在文字中傳遞一個語音命令,並返回其含義。

SDK 中有幾個單獨的元件,可以使您的命令大聲轉換到,您期望在 Pi 上發生的事情:為了具有完全整合的語音控制功能,您需要一個麥克風,以確定何時開始錄製語音命令(這稱為“熱詞檢測”、或稱喚醒詞檢測),以及將命令的音訊轉換為文字的方法。

在Snips,我們相信,為了方便使用 AI,您不必犧牲您的隱私。這意味著必須有一種方式,您的房屋不會有一個不斷的音訊直播到雲端。而在今天,這是類似的、最流行的產品的工作原理