資料介紹
李·道斯韋特
您現有的 hifi 系統是否太舊而無法支持 Apple AirPlay?不想用質量較低的無線揚聲器替換它,但又想播放音樂?這是一個常見的問題。好消息是,您可以用 Raspberry Pi 的成本構建一個 AirPlay 服務器,這樣您就可以將音樂直接從 iPhone 或 iPad 流式傳輸到您的 hifi 系統。
本指南向您展示了如何設置,shairport-sync以便通過 7 個簡單的步驟讓 Raspberry Pi 播放音樂。
在你開始前
在將 Raspberry Pi 設置為 AirPlay 服務器之前,您需要做一些事情。
選擇樹莓派
你可能已經有一個了。大多數模型都應該可以工作,但 Pi Zero 將是一個問題,因為在 Zero 上建立網絡更加困難。我建議您在開始之前使用谷歌搜索以了解如何執行此操作。
如果你有一個零 W 模型,那么事情會更容易,只要你沒有任何其他重型東西在運行,那里的單核 CPU 就可以很好地進行流式傳輸。
如果您要購買新車,我建議您購買 Model 3。我使用 Model 3 A+ 沒有任何問題,因為我想要更小的外形、wifi 和足夠的噪音。Raspberry Pi 3 Model B的性能同樣出色。
選擇操作系統
您需要的第一件事是帶有適當操作系統的 SD 卡。現在有很多不同的選擇,從“傳統的”Raspbian 到專用的媒體操作系統,甚至是 Windows 10 IoT。
現在,AirPlay 服務器不像 Kodi 那樣需要豐富的圖形界面。完全可以在沒有 UI 的情況下運行它,因為所有用戶交互都將在 iOS 或 macOS 設備上完成。擁有某種顯示當前藝術家和曲目信息的顯示器可能會很好,但這是一個非常艱巨的目標。現在,集中精力讓服務器正常工作!
因此,隨著這一點的建立,您應該尋找一個更準系統的系統。不需要大量的應用程序,為了實現無故障操作,您希望運行的進程越少越好。這是為媒體流應用程序保留盡可能多的 CPU 和 RAM。
一個問題是一些準系統操作系統,例如 Arch Linux,是針對具有相當多 Linux 知識的人。它們非常先進,您在安裝第三方應用程序和庫時更有可能遇到問題。
在光譜的另一端,有一些專用于此任務的發行版,應該開箱即用,但您不會從中學到任何東西。
出于這些原因,如果這是您第一次安裝 AirPlay 設備,我建議您選擇 Raspbian Lite。它是成熟的,因為它源自原始的 Raspbian 操作系統,但它已經刪除了 GUI 以節省資源。它完全由命令行驅動,可以輕松配置為以“無頭”模式運行,即無需鍵盤或顯示器即可通過網絡完全遠程訪問。這使得它非常適合放入設備中,希望您能在此過程中學到一些東西。
安裝 Raspbian Lite 并啟用 SSH
如果您已經進行了安裝,或者有信心自己完成該部分,請繼續。
否則請按照下面的教程進行操作,該教程將帶您逐步從原始 Raspberry Pi 到支持 SSH 的 Raspbian Lite:-
如何在 30 分鐘內設置您可以從任何地方控制的 Raspberry Pi
設置完成后,您應該能夠從網絡上的另一臺計算機遠程登錄 Raspberry Pi,并且您的 Pi 應該可以訪問互聯網。
配置 AirPlay 服務器
首先,您需要安裝一些依賴項,以便構建 AirPlay 服務器應用程序。運行以下命令:-
sudo apt-get update sudo apt-get install autoconf automake avahi-daemon build-essential git libasound2-dev libavahi-client-dev libconfig-dev libdaemon-dev libpopt-dev libssl-dev libtool xmltoman
2. 構建并安裝 shairport-sync
shairport-sync是由Mike Brady維護的一款很棒的軟件。它將您的 Linux 機器變成 Apple AirPlay 服務器。它最好的事情之一是它完全在命令行上運行,雖然它有上百萬個配置選項,但開箱即用非常容易。
首先從 github 上抓取它:-
git clone https://github.com/mikebrady/shairport-sync.git
現在導航到shairport-sync目錄并配置構建:-
cd shairport-sync autoreconf -i -f ./configure --with-alsa --with-avahi --with-ssl=openssl --with-systemd --with-metadata
最后構建并安裝應用程序:-
make sudo make install
在此過程結束時,您應該可以正常安裝shairport-sync.
3.配置音頻輸出
您現在可以測試 Airplay 音頻了。首先你需要一些硬件。以下任何一項都有效:-
耳機,或任何帶有 3 毫米插孔的舊耳塞
來自臺式電腦的有源揚聲器
或者,如果您是認真的,可以使用帶有電纜的高保真放大器,該電纜可將 3.5 毫米插孔轉換為一對 RCA 唱機插頭
現在您需要在 Raspberry Pi 上配置音頻路徑。它通常設置為“自動”,但您需要強制它連接到 3.5 毫米插孔。運行raspi-config:-
sudo raspi-config
選擇7. Advanced Options ,然后選擇A4。Audio ,然后選擇選項1. Force 3.5mm ('headphone') jack 。這將強制音頻路徑到 3.5 毫米耳機插孔。
4.設置音量
音量可能會非常低,因此使用以下方法將其更改為最大:-
amixer sset PCM,0 100%
音量設置有點難用,因為它是以dB (分貝)為單位配置的,如果您不是工程師,這會非常不直觀。以分貝表示,滿音量一般為0dB,零音量在-100dB左右。所以好像這還不夠糟糕——這是主要的腦筋急轉彎——?分貝標度不是線性的。
因此,當您在上面的命令中使用 % 表示法時amixer,您可能會認為它像普通音量控制一樣工作,但事實并非如此。如果你想讓音量稍微低一點,你可以把它改成 80%:-
amixer sset PCM,0 80%
您會看到輸出報告大約為 -17dB,但至關重要的是您會注意到它幾乎聽不見。百分比直接轉換為分貝,結果是您只能真正聽到超過 70% 左右的任何聲音。
所以,TLDR:將音量設置為 100%。
5. 測試 AirPlay 到 Raspberry Pi
現在開始shairport-sync:-
sudo service shairport-sync start
在你開始使用 AirPlay 之前什么都不會發生,所以拿一部 iPhone 或支持 AirPlay 的東西,并確保它與 Raspberry Pi 在同一個網絡上。開始播放一些音樂,然后從 AirPlay 圖標中選擇“raspberrypi”,然后選擇“完成”。
如果您聽不到任何聲音,請將您的 iPhone(或您使用的任何來源)音量調高,因為 Raspberry Pi 上的 PCM(耳機)輸出不是很好。
此時您應該可以聽到通過 Raspberry Pi 播放的音樂!
6.配置shairport-sync自動啟動
顯然,在專用媒體播放器中,您不想手動啟動服務:您希望shairport-sync在 Pi 啟動后立即運行。幸運的是,我們配置了它的systemd運行,這意味著我們可以輕松地使服務自動啟動。只需輸入:-
sudo systemctl enable shairport-sync
這將輸出類似于此的消息:-
Created symlink /etc/systemd/system/multi-user.target.wants/shairport-sync.service → /lib/systemd/system/shairport-sync.service.
這就是創建持久 AirPlay 服務器所需要做的全部工作。重啟:-
sudo reboot
當您通過 SSH 重新登錄時,您可以shairport-sync像這樣查詢服務:-
sudo systemctl status shairport-sync.service
這將(希望)產生類似的東西: -
● shairport-sync.service - Shairport Sync - AirPlay Audio Receiver Loaded: loaded (/lib/systemd/system/shairport-sync.service; enabled; vendor preset: enabled) Active: active (running) since Wed 2018-12-05 22:30:26 GMT; 1min 16s ago Main PID: 515 (shairport-sync) CGroup: /system.slice/shairport-sync.service └─515 /usr/local/bin/shairport-sync Dec 05 22:30:26 raspberrypi systemd[1]: Started Shairport Sync - AirPlay Audio Receiver.
因此,您現在應該可以在每次啟動樹莓派時通過 AirPlay 播放樹莓派。
7. 防止 Wifi 掉線
Raspberry Pi wifi 會周期性進入省電模式,這會在使用 AirPlay 時導致嚴重的音頻故障。您可以通過在文件中添加一行來防止這種情況/etc/network/interfaces?。使用以下命令編輯文件:-
sudo nano /etc/network/interfaces
轉到文件末尾并添加行:-
# Disable wifi power management wireless-power off
在這一切之后,重新啟動:-
sudo reboot
現在你應該啟動并運行了!
故障排除
如果您看不到raspberrypiAirPlay 中列出的設備,請檢查shairport-sync服務是否正在運行:-
sudo systemctl status shairport-sync.service
檢查它是否與您的 AirPlay 源設備在同一個 LAN 上,最好在同一個 Wifi 網絡上,并且在范圍內。
如果您已連接到 AirPlay 但聽不到任何音頻,請檢查音量是否足夠高。
在源設備上,只需將音量滑動到大約 80–90%。
對于 Raspberry Pi PCM 音頻,使用以下方法檢查音量設置:-
amixer sget PCM
這將像這樣輸出當前設置:-
Mono: Playback 400 [100%] [4.00dB] [on]
如果您看到任何低于 70% (-27dB) 的聲音,那么您可能聽不到。最好將此設置保持在 100%。
顯然也要檢查您的音頻硬件!
音頻質量注意事項
這篇文章在 Hacker News 上發表后引起了很大的興趣,許多人提到了 Raspberry Pi 內置音頻插孔的音頻質量差。我正計劃寫一篇關于使用 DAC 板來改善音頻的后續文章,但在我開始討論之前,我可能應該在這里提及它。
我試過兩個 DAC 板。第一個是 IQAudIO PiDAC+,它具有適合新的 Pi 3 Model A+ 的完美外形。我還在 Pi Zero W 上使用了HiFiBerry DAC+ Zero 。它們的設置都非常簡單,而且聽起來很棒。
另一個我還沒有親自使用過的非常流行的是Pimoroni pHAT DAC 。
我還沒有對它們進行認真的比較測試,但是選擇其中一個,你會發現音頻質量有了巨大的提高。
謝謝!
?
- 基于51單片機的蜂鳴器播放音樂源代碼 55次下載
- 用Ameba播放音樂
- 蜂鳴器播放音樂設計與實現(附源碼) 87次下載
- 音樂播放器小程序特效HTML5源代碼 5次下載
- 單片機播放音樂的仿真電路圖和源代碼資料免費下載 10次下載
- 使用51單片機實現音樂噴泉頻譜彩燈音樂盒播放器的源代碼免費下載 108次下載
- 使用單片機仿真播放音樂的代碼和工程文件免費下載 6次下載
- 使用51單片機播放音樂的代碼實例免費下載
- 使用單片機實現音樂播放器的源代碼程序免費下載
- 蜂鳴器播放音樂C語言程序免費下載 46次下載
- 8051單片機播放音樂 32次下載
- 多個不同音樂播放源代碼 23次下載
- 蜂鳴器播放音樂程序 34次下載
- 蜂鳴器播放音樂 40次下載
- 網頁音樂播放器代碼
- 基于Raspberry Pi 5的蜂窩物聯網項目 1027次閱讀
- 使用Raspberry Pi Pico W和MicroPython開發物聯網應用 1673次閱讀
- Python版超市管理系統源代碼 1468次閱讀
- 用于測試項目的4個最佳樹莓派Raspberry Pi模擬器 5985次閱讀
- 如何利用Arduino UNO和SD卡制作音樂播放器 7322次閱讀
- 如何通過Raspberry Pi設置CE電流監視器 2124次閱讀
- 基于樹莓派產品 Raspberry Pi微控制器板的優缺點 2710次閱讀
- 基于Raspberry Pi Pico開發先進的家庭自動化系統 2850次閱讀
- 基于FONA通過UART與Raspberry Pi進行通訊的方案介紹 2122次閱讀
- 微雪電子ZeroW| Raspberry Pi ZeroW主板簡介 2429次閱讀
- 微雪電子Raspberry Pi 3 Model主板簡介 2873次閱讀
- 利用Raspberry Pi構建存儲和虛擬化時間序列數據 884次閱讀
- 一文了解Raspberry Pi 4各項性能跑分 2.9w次閱讀
- PiTalk 套件將Raspberry Pi當作智能手機或是行動物聯網裝置 6686次閱讀
- 視覺享受!用Raspberry Pi實現圣誕樹燈光秀 8127次閱讀
下載排行
本周
- 1Keysight B1500A 半導體器件分析儀用戶手冊、說明書 (中文)
- 19.00 MB | 4次下載 | 免費
- 2使用TL431設計電源
- 0.67 MB | 2次下載 | 免費
- 3BT134雙向可控硅手冊
- 1.74 MB | 2次下載 | 1 積分
- 4一種新型高效率的服務器電源系統
- 0.85 MB | 1次下載 | 1 積分
- 5LabVIEW環形控件
- 0.01 MB | 1次下載 | 1 積分
- 6PR735,使用UCC28060的600W交錯式PFC轉換器
- 540.03KB | 1次下載 | 免費
- 751單片機核心板原理圖
- 0.12 MB | 1次下載 | 5 積分
- 8BP2879DB支持調光調滅的非隔離低 PF LED 驅動器
- 1.44 MB | 1次下載 | 免費
本月
- 1開關電源設計原理手冊
- 1.83 MB | 54次下載 | 免費
- 2FS5080E 5V升壓充電兩串鋰電池充電管理IC中文手冊
- 8.45 MB | 23次下載 | 免費
- 3DMT0660數字萬用表產品說明書
- 0.70 MB | 13次下載 | 免費
- 4UC3842/3/4/5電源管理芯片中文手冊
- 1.75 MB | 12次下載 | 免費
- 5ST7789V2單芯片控制器/驅動器英文手冊
- 3.07 MB | 11次下載 | 1 積分
- 6TPS54202H降壓轉換器評估模塊用戶指南
- 1.02MB | 8次下載 | 免費
- 7STM32F101x8/STM32F101xB手冊
- 1.69 MB | 8次下載 | 1 積分
- 8基于MSP430FR6043的超聲波氣體流量計快速入門指南
- 2.26MB | 7次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935119次下載 | 10 積分
- 2開源硬件-PMP21529.1-4 開關降壓/升壓雙向直流/直流轉換器 PCB layout 設計
- 1.48MB | 420061次下載 | 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 積分
評論
查看更多