中文字幕理论片,69视频免费在线观看,亚洲成人app,国产1级毛片,刘涛最大尺度戏视频,欧美亚洲美女视频,2021韩国美女仙女屋vip视频

打開APP
userphoto
未登錄

開通VIP,暢享免費(fèi)電子書等14項(xiàng)超值服

開通VIP
樹莓派Raspberry Pi用AirPlay播放實(shí)現(xiàn)WiFi連無線音響外放 | 王曄的流水賬
!本文可能 超過1年沒有更新,今后內(nèi)容也許不會被維護(hù)或者支持,部分內(nèi)容可能具有時(shí)效性,涉及技術(shù)細(xì)節(jié)或者軟件使用方面,本人不保證相應(yīng)的兼容和可操作性。

之前有一篇文章介紹了如何使用藍(lán)牙實(shí)現(xiàn)手機(jī)連接無線音箱外放,在網(wǎng)上搜索相關(guān)資料的過程中,我發(fā)現(xiàn)了樹莓派另外一個(gè)強(qiáng)大的功能,那就是可以實(shí)現(xiàn)蘋果(Apple)的AirPlay播放技術(shù),簡單的介紹一下,AirPlay類似于藍(lán)牙音響播放,但是其是建立在WiFi局域網(wǎng)基礎(chǔ)上的,在接入有AirPlay播放技術(shù)的局域網(wǎng)上,蘋果的設(shè)備就會顯示支持AirPlay。綜合AirPlay的優(yōu)勢,我開始在Raspberry Pi(樹莓派)上實(shí)現(xiàn)相關(guān)功能。

同樣的,關(guān)于樹莓派一些好玩的功能國外資料較為豐富,經(jīng)過查閱后《Raspberry Pi Airplay Tutorial》(原文超級詳細(xì))這一篇文章對我?guī)椭^大,具體步驟如下。

1. 升級Raspberry Pi系統(tǒng)的軟件

sudo apt-get updatesudo apt-get upgrade

2. 將音頻輸出變更為默認(rèn)的音頻輸出口

通常情況下樹莓派的音頻輸出使用的是HDMI接口,我們需要下面的命令將其變更為普通音頻輸出口:

sudo amixer cset numid=3 1

這一步我遇到一個(gè)錯(cuò)誤:

ALSA lib pulse.c:243:(pulse_connect) PulseAudio: Unable to connect: Access deniedamixer: Control default open error: Connection refused

提示沒有權(quán)限,如果不使用sudo則沒有這類問題,比較郁悶。如果你也遇到同樣的問題,先跳過,我們繼續(xù)下面的步驟。

3. 安裝系統(tǒng)所必需的軟件包

sudo apt-get install git libao-dev libssl-devsudo apt-get install libcrypt-openssl-rsa-perl libio-socket-inet6-perlsudo apt-get install libwww-perl avahi-utils libmodule-build-perl

4. 安裝Perl Net-SDP協(xié)議軟件

cd ~git clone https://github.com/njh/perl-net-sdp.git perl-net-sdpcd perl-net-sdpperl Build.PLsudo ./Buildsudo ./Build testsudo ./Build installcd ..

5. 使用Shairport將樹莓派設(shè)置為AirPlay接收器

cd ~git clone https://github.com/hendrikw82/shairport.gitcd shairportmake

6. 啟動Shairport以支持AirPlay

./shairport.pl -a WangyePi

這里我們指定了一個(gè)名字叫做WangyePi,大家可以根據(jù)實(shí)際進(jìn)行修改,自此,你可以使用蘋果設(shè)備來訪問AirPlay了,當(dāng)然每次使用這個(gè)命令略顯不便,下面介紹如何將其變成系統(tǒng)服務(wù)。

7. 將Shairport設(shè)置為系統(tǒng)服務(wù)

cd shairportsudo make installsudo cp shairport.init.sample /etc/init.d/shairport cd /etc/init.dsudo chmod a+x shairportsudo update-rc.d shairport defaults

好了,上面的步驟將移植Shairport到系統(tǒng)路徑下,同時(shí)創(chuàng)建名稱為shairport的服務(wù),你可以使用sudo service控制這個(gè)服務(wù)。

接下來編輯這個(gè)啟動文件:

sudo nano /etc/init.d/shairport

找到DAEMON_ARGS="-w $PIDFILE"這行,并且修改成DAEMON_ARGS="-w $PIDFILE -a WangyePi",同樣的這里WangyePi為你的AirPlay名字。

啟動AirPlay看看效果吧:

sudo service shairport start

8. 一些問題

如果上面步驟完成后一切正常的話,那么恭喜你,這一步可以略過了。我親自試驗(yàn)下來沒有那么順利,假如AirPlay不能播放的話,建議使用tail /var/log/syslog命令查看系統(tǒng)日志以便于確定問題原因,比如我就遇到下面的錯(cuò)誤:

May 11 04:57:05 raspberrypi pulseaudio[2563]: [pulseaudio] protocol-native.c: Denied access to client with invalid authorization data.

具體的處理方式如下,之前我注意到sudo amixer cset numid=3 1命令會導(dǎo)致pulseaudio拒絕訪問報(bào)錯(cuò),特詭異,居然管理員權(quán)限還有不能訪問的資源。

然后我檢查了pulseaudio和shairport啟動的用戶,發(fā)現(xiàn)pulseaudio是以pulse賬戶啟動的,而shairport是以root身份啟動的,很有可能問題出在這兒,我們只需要讓兩個(gè)都以pulse賬戶啟動就萬事大吉了。

命令sudo nano /etc/init.d/shairport修改shairport啟動文件,將PIDFILE=/var/run/$NAME.pid改為PIDFILE=/var/run/shairport/$NAME.pid,然后找到兩處start-stop-daemon,分別加上-c pulse參數(shù),我的最終修改如下:

#!/bin/bash## This starts and stops shairport#### BEGIN INIT INFO# Provides:          shairport# Required-Start:    $network# Required-Stop:# Short-Description: shairport - Airtunes emulator!# Description:       Airtunes emulator!# Default-Start:     2 3 4 5# Default-Stop:      0 1 6### END INIT INFO  # Source function library.. /lib/lsb/init-functions NAME=shairportDAEMON="/usr/local/bin/shairport.pl"PIDFILE=/var/run/shairport/$NAME.pidDAEMON_ARGS="-w $PIDFILE -a AirPi" [ -x $binary ] || exit 0 RETVAL=0 start() {    echo -n "Starting shairport: "    start-stop-daemon -c pulse --start --quiet --pidfile "$PIDFILE"                       --exec "$DAEMON" -b --oknodo -- $DAEMON_ARGS    log_end_msg $?} stop() {    echo -n "Shutting down shairport: "    start-stop-daemon -c pulse --stop --quiet --pidfile "$PIDFILE"                 --retry 1 --oknodo    log_end_msg $?} restart() {    stop    sleep 1    start} case "$1" in    start)        start    ;;    stop)        stop    ;;    status)        status shairport    ;;    restart)        restart    ;;    *)        echo "Usage: $0 {start|stop|status|restart}"    ;;esac exit 0

然后創(chuàng)建PID所在文件夾并設(shè)置權(quán)限:

sudo mkdir /var/run/shairportsudo chown pulse /var/run/shairport

最后重啟shairport服務(wù),看看是不是正常了。

sudo service shairport restart

參考文檔

2014年5月12日更新

在上面第8點(diǎn)有些問題的敘述上需要更正一下,今天發(fā)現(xiàn)建立在/var/run路徑下的shairport目錄消失,導(dǎo)致shairport啟動失敗,于是我將啟動文件/etc/init.d/shairport修改如下:

#!/bin/bash## This starts and stops shairport#### BEGIN INIT INFO# Provides:          shairport# Required-Start:    $network# Required-Stop:# Short-Description: shairport - Airtunes emulator!# Description:       Airtunes emulator!# Default-Start:     2 3 4 5# Default-Stop:      0 1 6### END INIT INFO  # Source function library.. /lib/lsb/init-functions NAME=shairportDAEMON="/usr/local/bin/shairport.pl"PIDDIR=/var/run/shairportPIDFILE=$PIDDIR/$NAME.pidDAEMON_ARGS="-w $PIDFILE -a AirPi" [ -x $binary ] || exit 0 RETVAL=0 start() {    echo -n "Starting shairport: "	if [ ! -d $PIDDIR ]; then		mkdir -p $PIDDIR		chown pulse:pulse $PIDDIR	fi    start-stop-daemon -c pulse --start --quiet --pidfile "$PIDFILE"                       --exec "$DAEMON" -b --oknodo -- $DAEMON_ARGS    log_end_msg $?} stop() {    echo -n "Shutting down shairport: "    start-stop-daemon -c pulse --stop --quiet --pidfile "$PIDFILE"                 --retry 1 --oknodo    log_end_msg $?} restart() {    stop    sleep 1    start} case "$1" in    start)        start    ;;    stop)        stop    ;;    status)        status shairport    ;;    restart)        restart    ;;    *)        echo "Usage: $0 {start|stop|status|restart}"    ;;esac exit 0
若無特別說明,本網(wǎng)站文章均為原創(chuàng),原則上這些文章不允許轉(zhuǎn)載,但是如果閣下是出于研究學(xué)習(xí)目的可以轉(zhuǎn)載到閣下的個(gè)人博客或者主頁,轉(zhuǎn)載遵循創(chuàng)作共同性“署名-非商業(yè)性使用-相同方式共享”原則,請轉(zhuǎn)載時(shí)注明作者出處,謝絕商業(yè)性、非署名、采集站、垃圾站或者純粹為了流量的轉(zhuǎn)載。謝謝合作!
本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊舉報(bào)。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
樹莓派使用Ngrok進(jìn)行內(nèi)網(wǎng)穿透,在公網(wǎng)上搭建個(gè)人博客 | 科技愛好者博客
在Ubuntu 14.04上安裝Odoo 9 ERP教程
在Ubuntu 12 服務(wù)器上源碼安裝 OpenERP 8.0
沒有樹莓派?沒關(guān)系,手機(jī)也行!閑置安卓設(shè)備打造智能家庭中樞
自制Airplay無線音響制作篇
【原創(chuàng)】把TL
更多類似文章 >>
生活服務(wù)
熱點(diǎn)新聞
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服