Sadržaj:

Reproducirajte Bluetooth na Sonosu pomoću Raspberry Pi: 25 koraka
Reproducirajte Bluetooth na Sonosu pomoću Raspberry Pi: 25 koraka

Video: Reproducirajte Bluetooth na Sonosu pomoću Raspberry Pi: 25 koraka

Video: Reproducirajte Bluetooth na Sonosu pomoću Raspberry Pi: 25 koraka
Video: Веб-разработка – информатика для руководителей бизнеса 2016 2024, Studeni
Anonim
Image
Image
Reproducirajte Bluetooth na Sonosu pomoću Raspberry Pi
Reproducirajte Bluetooth na Sonosu pomoću Raspberry Pi

Prethodno sam napisao instrukciju koja opisuje kako dodati pomoćni ili analogni linijski ulaz u Sonos pomoću Raspberry Pi. Čitatelj je pitao bi li bilo moguće strujati bluetooth zvuk sa njegovog telefona na Sonos. Lako je to učiniti pomoću bluetooth ključa uključenog u liniju skupljih Sonos Play: 5 ili Sonos CONNECT; međutim, gubite vjernost pretvarajući bluetooth (digitalni) u analogni, a zatim natrag u digitalni. Ako posjedujete samo jedan od jeftinijih Sonos zvučnika, to nije opcija. Ova uputa opisuje kako postaviti Raspberry Pi za strujanje bluetooth zvuka na bilo koji Sonos zvučnik.

NAPOMENA: Imajte na umu da ćemo prenositi bluetooth zvuk na Raspberry Pi i pretvoriti ga u mp3 stream prije nego što ga pošaljemo u Sonos pa će doći do kašnjenja od nekoliko sekundi. Ako ovo koristite za gledanje videozapisa, zvuk neće biti sinkroniziran.

Korak 1:

Što će vam trebati:

Raspberry PI 3 model B (dostupan je noviji, brži model B+, ali zadržao sam se na uobičajenom modelu B jer sam čitao o nekim problemima s zaključavanjem B+, a također i WiFi+ i Bluetooth radiji B+ imaju metalnu zaštitu oko sebe usklađeni su s FCC -om ako su instalirani na drugom uređaju, ali želio sam maksimalni domet bluetootha i bojao sam se da bi ga zaštita mogla omesti)

Stono ili prijenosno računalo s čitačem microSD kartica

Monitor ili TV s HDMI ulazom (samo za početno postavljanje)

USB ili Bluetooth tipkovnica i miš (samo za početno postavljanje)

Plastično kućište Raspberry Pi (za ovaj projekt koristim plastično kućište za povećanje dometa bluetootha)

Kingston 8 GB microSDHC klasa 4 Flash memorijska kartica

Napajanje 5V

Korak 2:

Slika
Slika
Slika
Slika

Idite na https://www.raspberrypi.org/downloads/raspbian/ na svom redovitom računaru i preuzmite "RASPBIAN STRETCH WITH DESKTOP".

Također idite na https://etcher.io/ i preuzmite Etcher i instalirajte ga.

NAPOMENA: U prethodnim uputama opisao sam kako preuzeti NOOBS radi instaliranja Raspbiana; međutim, ova je metoda malo brža. Bilo koji način je u redu.

3. korak:

Slika
Slika
Slika
Slika

Pokrenite Etcher i kliknite Odaberi sliku i potražite zip datoteku. Pritisnite Odaberi pogon i idite na microSD karticu, a zatim kliknite Flash!

Korak 4:

Slika
Slika
Slika
Slika
Slika
Slika
Slika
Slika

NAPOMENA: Neki od ovih sljedećih koraka slični su mojim prethodnim uputama pa preskočite naprijed ako već imate root lozinku, statički IP i VNC.

Umetnite microSD karticu u utor za SD karticu na donjoj strani Raspberry Pi. Spojite HDMI kabel s Raspberry Pi na monitor ili televizor. Spojite USB tipkovnicu, miša i na kraju Micro USB kabel za napajanje. Nakon pokretanja pojavit će se Raspbian radna površina. Provest će vas kroz nekoliko postavki, ali preporučio bih da NE provjeravate ažuriranja. Pritisnite Preskoči. Stalno sam dobivao pogrešku "blueman.bluez.errors. DBusFailedError: Protocol not available" kada sam pokušavao upariti bluetooth nakon što su instalirana sva ažuriranja pa sam morao početi iznova.

SAVJET: Ako ne želite vojno vrijeme, desnom tipkom miša kliknite sat, odaberite Postavke digitalnog sata i promijenite format sata s %R u %r

5. korak:

Slika
Slika
Slika
Slika
Slika
Slika

Zatim ćemo omogućiti ugrađeni VNC poslužitelj. To pojednostavljuje stvari jer možete jednostavno kopirati i zalijepiti naredbe putem VNC -a, a ne upisivati ih. Odaberite GUI Menu> Preferences> Raspberry Pi Configuration> Interfaces. Kliknite Omogućeno pored VNC, a zatim U redu. Nakon nekoliko sekundi na programskoj traci pojavit će se ikona VNC. Kliknite na nju, a zatim na ikonu izbornika u gornjem desnom kutu (okvir s 3 vodoravne crte), a zatim na Opcije. U sigurnosnim opcijama Encryption postavite na "Prefer off", a Authentication kao "VNC password", a zatim kliknite Primijeni. Pojavit će se okvir za lozinku. Unesite "malina" (bez navodnika) za lozinku u svaki okvir i kliknite U redu.

Korak 6:

Slika
Slika
Slika
Slika
Slika
Slika

Prije nego nastavimo, moramo dodijeliti statičku IP adresu. Ako IP adresu vašeg Pi -a nasumično dodijeli DHCP poslužitelj vašeg usmjerivača, tada bi se IP adresa kasnije mogla promijeniti i nećete se moći povezati putem VNC -a (ili Sonosa u tom slučaju). Desnom tipkom miša kliknite ikonu mrežne veze na programskoj traci (mala ikona strelice gore i dolje) i odaberite "Postavke bežične i ožičene mreže". LIJEVOM tipkom miša kliknite gornji desni okvir i odaberite "eth0" za konfiguriranje ethernet veze ili "wlan0" za bežičnu vezu. Savjetovao bih dodijeliti statički IP samo jednom ili drugom. Imao sam problem kada sam prvi put postavio svoj Pi gdje sam dodijelio istu statičku IP adresu za obje veze i bežičnu vezu mog Pi zaključao i nisam ga mogao vratiti ispravno raditi pa sam morao početi ispočetka s instaliranjem OS -a. U svakom slučaju, unesite željenu IP adresu u polje IP adresa i unesite IP adresu usmjerivača u polje Ruter i DNS poslužitelji. Pritisnite Primijeni i zatvori.

NAPOMENA: Možda će biti lakše dodijeliti statičku IP adresu pomoću značajke rezervacije DHCP IP -a vašeg usmjerivača ako je ima. Možda će vam trebati MAC adresa Pi ili se samo može pojaviti na popisu povezanih uređaja na administratorskoj stranici vašeg usmjerivača. Ako vam je potrebna MAC adresa, upišite naredbu "ifconfig eth0" u prozor terminala za ethernet ili "ifconfig wlan0" za WiFi. Zanimljivo je da će se WiFi MAC adresa pojaviti na retku koji počinje s "eter"

Korak 7:

Slika
Slika
Slika
Slika
Slika
Slika

Zatim moramo postaviti zadanu razlučivost zaslona. Ovo se može činiti glupim jer smo već povezani s monitorom, ali kasnije, kad se povežete putem VNC -a bez monitora (bez glave, kako kažu), vratit će se na zadanu Pi -ovu rezoluciju 640x480, što je vrlo mali zaslon Raditi sa! Odaberite GUI Menu> Preferences> Raspberry Pi Configuration> Set Resolution. Postavite ga na 1280x720 ili više i kliknite U redu i Da za ponovno pokretanje.

Korak 8:

Slika
Slika
Slika
Slika
Slika
Slika

Možda ćete htjeti promijeniti naziv svog Pi -a, posebno ako na mreži imate više od jednog. Ja sam svoj preimenovao u "BluetoothPi" kako bih ga lako prepoznao. Od vas će se tražiti da ponovno pokrenete sustav nakon što ste ga preimenovali.

Korak 9:

Slika
Slika
Slika
Slika
Slika
Slika
Slika
Slika

U ovom trenutku možda ćete htjeti početi koristiti VNC za upravljanje Pi. Ponovno otvorite VNC upravljačku ploču na radnoj površini Raspbian i potražite IP adresu pod "Povezivost". Instalirajte i pokrenite VNC preglednik na svom običnom računalu i upotrijebite tu IP adresu za povezivanje i unesite "malinu" (bez navodnika) kao lozinku. Koristio sam TightVNC za Windows. Nakon što se povežete, možete spremiti Pi -jevu VNC vezu kao prečac na radnoj površini za brzo povezivanje u budućnosti zaobilazeći zaslon za prijavu. Dobit ćete upozorenje o spremanju lozinke unutar prečaca. Da biste kopirali i zalijepili u prozor terminala Pi, odaberite ili označite tekst ili naredbe na svom običnom računalu, pritisnite Ctrl-C (doslovno pritisnite tipke Ctrl i C na tipkovnici istovremeno) ili kliknite desnom tipkom miša i odaberite "Kopiraj ", zatim aktivirajte Pi-jev prozor VNC preglednika i desnom tipkom miša kliknite unutar prozora terminala na pokazivaču i odaberite Zalijepi.

10. korak:

Slika
Slika
Slika
Slika

Zatim ćemo instalirati dva programa, Darkice i Icecast2. Darkice će kodirati naš Bluetooth audio izvor u mp3 stream, a Icecast2 će poslužiti Sonosu kao Shoutcast stream. Kopirajte i zalijepite svaki od ovih redaka u prozor terminala jedan po jedan, a zatim svaki put pritisnite tipku Enter:

wget

mv darkice_1.0.1-999 ~ mp3+1_armhf.deb? raw = true darkice_1.0.1-999 ~ mp3+1_armhf.deb

sudo apt-get install libmp3lame0 libtwolame0

sudo dpkg -i darkice_1.0.1-999 ~ mp3+1_armhf.deb

11. korak:

Slika
Slika
Slika
Slika
Slika
Slika
Slika
Slika

Sada instalirajte Icecast2. Upišite "sudo apt-get install icecast2" nakon čega slijedi enter. Nakon instalacije pojavit će se prozor s pitanjem želite li konfigurirati Icecast2. Pritisnite lijevu tipku sa strelicom i unesite kako biste odabrali Da. Na drugom zaslonu pritisnite tipku sa strelicom prema dolje i unesite kako biste odabrali U redu da biste koristili zadani naziv hosta "localhost". Na sljedeća tri zaslona pritisnite strelicu prema dolje i unesite tipku kako biste pristali koristiti "hackme" kao zadani izvor, relej i administratorsku lozinku. Iako se slažemo sa svim zadanim postavkama, ovi koraci moraju biti dovršeni za aktiviranje poslužitelja Icecast2.

sudo apt-get install icecast2

Korak 12:

Slika
Slika
Slika
Slika
Slika
Slika

Zatim moramo pokrenuti GUI file manager kao root korisnik. Da biste to učinili, odaberite GUI Menu> Run. Upišite "sudo pcmanfm" i pritisnite enter. To će otvoriti upravitelj datoteka (ekvivalent istraživača datoteka za nas korisnike sustava Windows) u početni direktorij (/home/pi) i vidjet ćete preostalu instalacijsku datoteku darkice koju smo prethodno preuzeli. Desnom tipkom miša kliknite na prazan prostor i odaberite Create New, a zatim Empty File. Dajte mu ime "darkice.cfg" i kliknite U redu. Zatim desnom tipkom miša kliknite tu novostvorenu datoteku i odaberite je otvoriti pomoću Leafpada (ekvivalent Windows bilježnice). Kopirajte donje retke i zalijepite ih u Leafpad, a zatim kliknite Datoteka i Spremi. Primijetit ćete da je redak "kvalitete" komentiran s # ispred njega. Koristi se samo ako postavite "bitrateMode = vbr" (promjenjiva brzina prijenosa). Ne možete postaviti vrijednost kvalitete kada koristite cbr (konstantna brzina prijenosa) ili će tok zamuckivati i preskakati. Nasuprot tome, ako odlučite koristiti vbr, morate komentirati redak "bitrate = 160" i raskomentirati redak "kvalitete".

NAPOMENA: Najkvalitetniji mp3 bitrate koji možete imati je 320 kbps; međutim, i WiFi i Bluetooth radiji na Raspberry Pi -u nalaze se na istom čipu pa ako povećate propusnost oba, bluetooth zvuk može zamuckivati ili zamrznuti. Kasnije ćemo promijeniti postavku koja će to ispraviti, ali donekle ograničava propusnost WiFi -a pa sam smanjio audio bitrate za ovaj projekt na 160 kbps jer ga planiram zadržati isključivo na WiFi -u. Ako koristite ethernet, to nije problem i možete sigurno postaviti brzinu prijenosa na 320 kbps.

[općenito] trajanje = 0 # trajanje u s, 0 zauvijek bufferSecs = 1 # međuspremnik, u sekundama ponovno povezivanje = da # ponovno povezivanje ako je prekinuto

[ulazni]

uređaj = telefon # naziv bluetooth uređaja sampleRate = 44100 # brzina uzorkovanja 11025, 22050 ili 44100 bitaPerSample = 16 # bita kanal = 2 # 2 = stereo

[icecast2-0]

bitrateMode = cbr # konstantna brzina prijenosa ('cbr' konstanta, 'abr' prosjek) #quality = 1.0 # 1.0 je najbolje kvalitete (koristite samo s vbr) format = mp3 # format. Odaberite 'vorbis' za OGG Vorbis bitrate = 160 # bitrate server = localhost # ili IP port = 8000 # port za IceCast2 pristupna lozinka = hackme # izvorna lozinka za IceCast2 poslužitelj mountPoint = rapi.mp3 # točka montiranja na IceCast2 poslužitelju.mp3 ili.ogg naziv = BluetoothPi

Korak 13:

Slika
Slika
Slika
Slika
Slika
Slika
Slika
Slika

Zatim moramo slijediti iste korake kao i prije za stvaranje prazne datoteke pod nazivom "darkice.sh".. Sh datoteka ekvivalent je.bat ili batch datoteci za DOS ili Windows. Otvorite pomoću Leafpada, kopirajte i zalijepite donje retke i spremite. Ako ste slijedili moje prethodne upute, primijetit ćete da linija koja počinje Darkice izgleda malo drugačije. Kôd sam morao ugraditi u petlju, jer kad god Darkice izgubi bluetooth audio signal, prestat će se izvoditi i neće se automatski ponovno pokrenuti čak ni pri ponovnom pokretanju zvuka. Dosta sam istraživao ovaj problem i iako postoje složeni načini za automatsko pokretanje skripte kad god je povezan Bluetooth uređaj, Darkice će se ponekad zaustaviti kad god se audio signal izgubi, čak i ako je Bluetooth uređaj još povezan (npr. Ako zatvorite YouTube aplikaciju na vašem telefonu) pa je ovo najjednostavniji i najpouzdaniji način da provjerite radi li Darkice kad god je prisutan bluetooth zvuk. Ako je Darkice već pokrenut, naredba se zanemaruje.

#!/bin/bashgether:; do sudo/usr/bin/darkice -c /home/pi/darkice.cfg; spavati 5; učinjeno

Korak 14:

Slika
Slika

Zatim moramo pokrenuti naredbu kako bismo datoteku darkice.sh učinili izvršnom. Otvorite prozor terminala i upišite "sudo chmod 777 /home/pi/darkice.sh" i pritisnite enter. Sada je vrijeme za pokretanje usluge poslužitelja Icecast2. Upišite "sudo service icecast2 start" i pritisnite enter.

sudo chmod 777 /home/pi/darkice.sh

sudo servis icecast2 start

Korak 15:

Slika
Slika
Slika
Slika
Slika
Slika
Slika
Slika

Zatim moramo reći Darkice da se automatski pokreće svaki put kada se Pi podigne (poslužitelj Icecast2 radi kao usluga i već se automatski pokreće nakon pokretanja). Prvo moramo odabrati koji ćemo uređivač teksta koristiti. U prozor terminala upišite "select-editor" i pritisnite enter. Upišite "2" za odabir nano uređivača i pritisnite enter. Zatim upišite "crontab -e" i unesite. Zatim držite tipku sa strelicom prema dolje za pomicanje sve do dna tekstualne datoteke koja se pojavi i dodajte ovaj redak "@reboot sleep 10 && sudo /home/pi/darkice.sh". Zatim pritisnite Ctrl-X za izlaz i od vas će se zatražiti "Spremi izmijenjeni međuspremnik?". Pritisnite tipku Y za Yes, zatim Enter da biste potvrdili koji se naziv datoteke automatski generira.

select-editor

crontab -e

@reboot sleep 10 && sudo /home/pi/darkice.sh

Korak 16:

Slika
Slika
Slika
Slika
Slika
Slika

Uparite svoj telefon s Raspberry Pi pomoću ikone bluetooth na radnoj površini. Važno je da Pi -ov bluetooth postavite u način rada za otkrivanje, a zatim ga uparite s telefona. Ako postavite telefon u način otkrivanja i pokušate ga upariti s Pi -a, tada se može povezati, ali će vam se prikazati pogreška govoreći da na vašem telefonu nema usluga koje Pi može koristiti, što je istina. Pokušavamo poslati zvuk na Pi, a ne obrnuto. Nakon uparivanja pokrenite ovu naredbu u prozoru terminala da biste otkrili Bluetooth MAC adresu povezanog uređaja:

sudo bluetoothctl

Korak 17:

Slika
Slika
Slika
Slika
Slika
Slika

Da bi Darkice mogao koristiti bluetooth uređaj kao PCM audio ulaz, moramo stvoriti datoteku u mapi "etc" pod nazivom "asound.conf" (etc/asound.conf). Pritisnite strelicu gore na upravitelju datoteka nekoliko puta da biste otišli do korijenskog direktorija, a zatim dvaput kliknite mapu "etc" da biste je otvorili. Pomaknite se prema dolje i desnom tipkom miša kliknite na prazan prostor i stvorite praznu datoteku pod nazivom "asound.conf" te kopirajte i zalijepite donje retke s MAC adresom vašeg uređaja zamijenjenom mojom, naravno i spremite.

pcm.phone {type plug slave.pcm {type bluealsa device "50: F0: D3: 7A: 94: C4" profile "a2dp"}}

Korak 18:

Slika
Slika
Slika
Slika
Slika
Slika

WiFi i Bluetooth radio na Raspberry Pi -u nalaze se na istom čipu pa ako povećate propusnost oba, bluetooth zvuk može zamuckivati ili zamrzavati. Neki to nazivaju greškom, a neki kažu da je to samo hardversko ograničenje. Promijenit ćemo postavku koja će to ispraviti. Zasluga za objavljivanje ovog popravka pripada "pelwell" na https://github.com/raspberrypi/linux/issues/1402 Ponovo pokrenite sudo pcmanfm da biste otvorili upravitelj datoteka i pregledali/lib/firmware/brcm. Dvaput kliknite tekstualnu datoteku "brcmfmac43430-sdio.txt" da biste je otvorili te dodali ove retke na dno i spremili.

# Eksperimentalni parametri suživota Bluetootha iz Cypressbtc_mode = 1 btc_params8 = 0x4e20 btc_params1 = 0x7530

Korak 19:

Slika
Slika
Slika
Slika
Slika
Slika

Pritisnite ikonu izbornika GUI i odaberite Shutdown and Reboot. Ako ste točno slijedili sve ove korake, vaš Bluetooth audio poslužitelj automatski će se pokrenuti bilo gdje od 30 sekundi do minute nakon klika na ponovno pokretanje. Prije nego što ga dodate u Sonos, morate povezati bluetooth telefona s Pi -om (jednostavno ga dodirnite u postavkama bluetooth -a telefona jer je već uparen) i početi reproducirati neku vrstu zvuka i pojačati glasnoću. Upamtite da iz zvučnika telefona nećete čuti zvuk jer misli da je spojen na vanjski bluetooth zvučnik. Jedan od vizualnih načina da saznate prima li Icecast bluetooth zvuk od Darkice je otvaranje https://192.168.86.107:8000 u web pregledniku sa zamjenom IP -a vašeg Pi za moj. Icecast je uvijek pokrenut pa ćete uvijek vidjeti stranicu statusa, ali ako Darkice prima i Bluetooth zvuk, tada ćete vidjeti i točku montiranja i deskriptor toka. Isključite bluetooth i osvježite stranicu i opet će ostati prazna.

Korak 20:

Slika
Slika
Slika
Slika

Morate upotrijebiti aplikaciju Sonos desktop kontrolera za dodavanje prilagođenog toka u Sonos. Pritisnite Upravljanje> Dodaj radio postaju i unesite url za stream koji je u mom slučaju bio "https://192.168.86.107:8000/rapi.mp3". Također unesite naziv postaje i kliknite U redu.

Korak 21:

Slika
Slika

Za reprodukciju prilagođene radio postaje koju smo upravo dodali, odaberite "Radio by Tunein", a zatim "Moje radio stanice". LIJEVI Dvostruki klik za reprodukciju ili desni klik za uređivanje ili dodavanje postaje vašim omiljenim Sonosima.

Korak 22:

Slika
Slika
Slika
Slika

Nakon dodavanja prilagođene radio postaje odmah će biti dostupna u vašoj aplikaciji Sonos. Otvorite aplikaciju, dodirnite "My Sonos" pri dnu, pomaknite se dolje do "Stations" i dodirnite "See All". Pomaknite se prema dolje dok ne vidite svoju novostvorenu postaju. Dodirnite je i počet će se igrati u odabranim sobama. Imajte na umu da ako ̶ isključivanju svoj Bluetooth PI zatim se Icecast stream ̶d̶i̶s̶c̶o̶n̶n̶e̶c̶t̶.̶ Ako se prekidač audioaplikacija to može ̶d̶i̶s̶c̶o̶n̶n̶e̶c̶t̶.̶ kako bi se nastavilo slušanje na Sonosove primali morati ponovo reprodukciju zvuka na telefonu i opet gurnuti igrati na ̶T̶h̶e̶ ̶S̶o̶n̶o̶s̶ ̶a̶p̶p̶ ̶a̶g̶a̶i̶n̶.̶ <--- Ovo je ispravljeno; pogledajte ažuriranje u nastavku. Sretno i hvala na čitanju!

Korak 23: AŽURIRANJE: FIKSNO ODRŽAVANJE STREAMA POVEZANOG KADA BLUETOOTH PREKIDA

Dakle, bluetooth streaming je savršeno funkcionirao s ovim postavljanjem OSIM što bi se Sonos isključio s Icecast poslužitelja kad god bi Darkice izgubio bluetooth zvuk, primjerice kada ste promijenili audio aplikacije ili jednostavno isključili bluetooth, što je bilo bolno jer biste morali ponovo dobiti Bluetooth audio streaming čak možete pritisnuti gumb za reprodukciju u aplikaciji Sonos. To je postao veliki problem kada sam pokušavao strujati zvuk u Sonos iz aplikacije WatchESPN na svom telefonu, koja je samo na cijelom zaslonu, tako da nisam mogao pritisnuti gumb za reprodukciju u aplikaciji Sonos nakon pokretanja Bluetooth zvuka, ali kad sam zatvorio aplikaciju WatchESPN, Sonos stream se ne bi pokrenuo ako prvo niste pokrenuli bluetooth zvuk! Uf! Čupala sam kosu pokušavajući smisliti elegantno rješenje za ovo. Pokušao sam s drugim mp3 enkoderom zvanim liquidsoap koji ima mogućnost slanja tihog zvuka kada izgubi vezu, ali nisam ga mogao natjerati da radi s bluealsom. Pokušao sam pomiješati tok bluealsa sa sekundarnom lažnom zvučnom karticom alsa stream koristeći dsnoop i asym kako bih pokušao prevariti Icecast da pomisli da je još uvijek prisutan audio signal, ali alsa vam stvarno ne dopušta mnogo manipuliranja bluetooth zvukom. Zatim sam počeo istraživati koristeći rezervnu točku montiranja pomoću tihe mp3 datoteke u Icecast -u, ali Sonos bi vidio kako se naziv točke montaže mijenja i prekida. Koristio sam datoteku test.mp3 i slučajno sam je jednom umjesto zamjenske označio kao naziv glavne točke montiranja i primijetio da je Sonos jednostavno prešao na reprodukciju te datoteke kad je isključena iz bluetoothovog "rapi.mp3" toka. Eureka! Ne bi se automatski prebacio na bluetooth stream kad je ponovno postao dostupan, pa sam pomislio zašto jednostavno ne koristiti isti naziv točke montiranja? Ono što morate učiniti je stvoriti tihu mp3 datoteku i dati joj isto ime kao Darkice mp3 stream, "rapi.mp3", te je tvrdo kodirati kao glavnu točku montiranja u konfiguracijskoj datoteci Icecast2. Ono što se događa je da svaki put kad Sonos izgubi vezu s Darkice/bluetooth rapi.mp3 streamom, jednostavno počne ponavljati drugu tihu datoteku rapi.mp3 sve dok se bluetooth stream ne vrati na mrežu. Na ovaj način ne morate imati uključen Bluetooth zvuk prije nego što pritisnete play u Sonosu. Evo kako to učiniti…

Korak 24:

Slika
Slika
Slika
Slika
Slika
Slika

Prvo moramo instalirati ffmpeg za stvaranje tihe mp3 datoteke. Mogli ste snimiti tihu.wav datoteku s vanjske zvučne kartice i pretvoriti je u mp3 koristeći lame, ali budući da nemam ulaz za vanjsku zvučnu karticu za ovaj projekt, korištenje ffmpeg bilo je najjednostavnije rješenje. Otvorite prozor terminala i upišite "sudo apt-get install ffmpeg" i pritisnite Enter:

sudo apt-get install ffmpeg

Nakon što je instaliran, kopirajte i zalijepite ovaj dugi redak za kodiranje tihe mp3 datoteke koja traje samo jednu sekundu:

sudo ffmpeg -f lavfi -i anullsrc = channel_layout = stereo: sample_rate = 44100 -b: a 160k -t 1 /usr/share/icecast2/web/rapi.mp3

Otvorite Upravitelj datoteka kao root pomoću "sudo pcmanfm" i idite na "/etc/icecast2". Desnom tipkom miša kliknite "icecast.xml" i otvorite pomoću Leafpada i zalijepite ove retke odmah ispod gornje linije "":

/rapi.mp3

Spremite i ponovno pokrenite sustav i sada biste trebali moći pokrenuti prilagođenu Sonos bluetooth stanicu prije nego što ste uopće povezali telefon s bluetoothom!

Korak 25: Dodatak

Dodatak
Dodatak
Dodatak
Dodatak
Dodatak
Dodatak
Dodatak
Dodatak

Htio sam da napajanje Raspberry Pi i 110V AC do 5V DC bude samostalno u jednom kućištu kako bih ga mogao lako premjestiti po kući, ali sam se iznenadio kad je otkrio da takav slučaj ne postoji. Možda ću kasnije ispisati 3D, ali u međuvremenu sam prešao na upotrebu drugog Raspberry Pi kućišta i pronašao tanki USB zidni punjač i kratki kabel. Punjač je imao gumirani premaz za koji nisam mogao dobiti čistu VHB traku, ali pokazalo se da je to naljepnica koja se lako može ukloniti; međutim, to je stvorilo malo udubljenje koje je učinilo VHB vrpcu previše tankom pa sam upotrijebio čičak.

Preporučeni: