Mundarija:

Raspberry Pi yordamida Sonosda Bluetooth o'ynang: 25 qadam
Raspberry Pi yordamida Sonosda Bluetooth o'ynang: 25 qadam

Video: Raspberry Pi yordamida Sonosda Bluetooth o'ynang: 25 qadam

Video: Raspberry Pi yordamida Sonosda Bluetooth o'ynang: 25 qadam
Video: Создаю ИДЕАЛЬНУЮ панель управления умным домом! 2024, Iyul
Anonim
Image
Image
Raspberry Pi yordamida Sonosda Bluetooth o'ynang
Raspberry Pi yordamida Sonosda Bluetooth o'ynang

Men ilgari Raspberry Pi yordamida Sonosga aux yoki analog qatorini qanday qo'shish kerakligini ko'rsatadigan ko'rsatma yozgan edim. O'quvchi telefondan Sonosga bluetooth audio uzatilishi mumkinmi, deb so'radi. Buni qimmatroq Sonos Play: 5 yoki Sonos CONNECT-ga ulangan bluetooth dongle yordamida qilish oson. ammo, siz bluetooth (raqamli) ni analogga, so'ngra raqamli formatga o'tkazishni sodiqligidan mahrum bo'lasiz va agar siz faqat arzonroq Sonos dinamiklaridan biriga ega bo'lsangiz, bu variant emas. Bu yo'riqnomada bluetooth ovozini har qanday Sonos karnayiga uzatish uchun Raspberry Pi ni qanday sozlash kerakligi tasvirlangan.

QAYD: Shuni yodda tutingki, biz bluetooth audio -ni Raspberry Pi -ga uzatamiz va Sonos -ga yuborishdan oldin uni mp3 -oqimga aylantiramiz, shuning uchun bir necha soniya kechikish bo'ladi. Agar siz buni videoni tomosha qilish uchun ishlatayotgan bo'lsangiz, audio sinxronlanmagan bo'ladi.

1 -qadam:

Sizga nima kerak bo'ladi:

Raspberry PI 3 Model B (yangi, tezroq B+ modeli mavjud, lekin men odatiy B modeliga yopishib qoldim, chunki men B+ ning qulflanishi, B+ ning Wi -Fi va bluetooth radiosi bilan bog'liq ba'zi muammolar haqida o'qiganman. boshqa qurilmaga o'rnatilganda ular FCCga mos keladi, lekin men maksimal bluetooth diapazonini xohlardim va ekranlash unga to'sqinlik qilishidan qo'rqardim)

MicroSD kartani o'quvchi bilan ish stoli yoki noutbuk

HDMI kirishli monitor yoki televizor (faqat dastlabki sozlash uchun)

USB yoki bluetooth klaviatura va sichqoncha (faqat dastlabki sozlash uchun)

Plastik Raspberry Pi qutisi (men bluetooth diapazonini kengaytirish uchun ushbu loyiha uchun plastik qutidan foydalanaman)

Kingston 8 Gb microSDHC 4 -sinf flesh xotira kartasi

5V quvvat manbai

2 -qadam:

Rasm
Rasm
Rasm
Rasm

Oddiy kompyuteringizda https://www.raspberrypi.org/downloads/raspbian/ saytiga o'ting va "RASPBIAN MAShLATLAR BILAN Stretch" dasturini yuklab oling.

Shuningdek, https://etcher.io/ saytiga o'ting va Etcher -ni yuklab oling va o'rnating.

QAYD: Oldingi yo'riqnomada men Raspbian -ni o'rnatish uchun NOOBS -ni qanday yuklab olishni tasvirlab berdim; ammo, bu usul biroz tezroq. Qanday bo'lmasin yaxshi.

3 -qadam:

Rasm
Rasm
Rasm
Rasm

Etcher -ni ishga tushiring va "Rasmni tanlash" -ni bosing va zip -faylni ko'rib chiqing. Drayv tanlash -ni bosing va microSD -kartani tanlang, so'ng Flash -ni bosing!

4 -qadam:

Rasm
Rasm
Rasm
Rasm
Rasm
Rasm
Rasm
Rasm

QAYD: Keyingi qadamlarning ba'zilari oldingi ko'rsatmaga o'xshaydi, shuning uchun agar sizda root parol, statik IP va VNC o'rnatilgan bo'lsa, o'tkazib yuboring.

MicroSD kartasini Raspberry Pi ning pastki qismidagi SD -karta uyasiga joylashtiring. Raspberry Pi -dan HDMI kabelini monitor yoki televizorga ulang. USB klaviaturasini, sichqonchani va nihoyat Micro USB quvvat kabelini ulang. U ishga tushgandan so'ng, Raspbian ish stoli paydo bo'ladi. Bu sizga bir nechta sozlamalarni beradi, lekin men yangilanishlarni tekshirmaslikni tavsiya qilaman. O'tkazish -ni bosing. Barcha yangilanishlar o'rnatilgandan so'ng bluetooth -ni ulashda "blueman.bluez.errors. DBusFailedError: Protokol mavjud emas" xatosi paydo bo'la boshladi, shuning uchun hammasini qaytadan boshlashim kerak edi.

Maslahat: Agar siz harbiy vaqtni xohlamasangiz, soatni o'ng tugmasini bosing va Raqamli soat sozlamalarini tanlang va soat formatini %R dan %r ga o'zgartiring.

5 -qadam:

Rasm
Rasm
Rasm
Rasm
Rasm
Rasm

Keyin biz o'rnatilgan VNC serverini ishga tushiramiz. Bu ishni ancha osonlashtiradi, chunki siz buyruqlarni yozishdan ko'ra VNC orqali nusxa ko'chirishingiz va joylashtirishingiz mumkin. GUI menyusi> Sozlamalar> Raspberry Pi konfiguratsiyasi> Interfeyslarni tanlang. VNC yonidagi Enabled ni bosing va keyin OK ni bosing. Bir necha soniyadan so'ng, vazifalar panelida VNC belgisi paydo bo'ladi. Unga bosing va keyin o'ng yuqori burchakdagi menyu belgisini bosing (3 gorizontal chiziqli quti) va keyin Tanlovlar. Xavfsizlik parametrlarida shifrlashni "afzal ko'rish" va autentifikatsiyani "VNC paroli" deb belgilang, so'ng "Ilova" tugmasini bosing. Parol oynasi ochiladi. Har bir qutiga parol uchun "malina" (tirnoqsiz) kiriting va OK tugmasini bosing.

6 -qadam:

Rasm
Rasm
Rasm
Rasm
Rasm
Rasm

Oldinga borishdan oldin biz statik IP -manzilni belgilashimiz kerak. Agar sizning IP -manzilingiz yo'riqchining DHCP -serveri tomonidan tasodifiy tayinlangan bo'lsa, IP -manzili keyinroq o'zgarishi mumkin va siz VNC (yoki Sonos) orqali ulana olmaysiz. Vazifalar panelidagi tarmoq ulanishlari belgisini o'ng tugmasini bosing (yuqoriga va pastga o'q belgisi) va "Simsiz va simli tarmoq sozlamalari" ni tanlang. Chap tugmachani yuqori o'ng tugmachani bosib, chekilgan ulanishni sozlash uchun "eth0" ni yoki simsiz ulanish uchun "wlan0" -ni tanlang. Men faqat bitta yoki boshqasiga statik IP tayinlashni maslahat beraman. Men birinchi marta Pi -ni o'rnatganimda muammoga duch keldim, u erda ikkala ulanishga bir xil statik IP -manzilni tayinladim va mening simsiz simlar qulflangan edi va men uni to'g'ri ishlay olmadim, shuning uchun OSni qayta o'rnatishni boshlashim kerak edi. Yaxshiyamki, IP -manzil maydoniga kerakli IP -manzilni kiriting va yo'riqnoma IP -manzilini yo'riqnoma va DNS -serverlar maydoniga kiriting. Qo'llash va yopish -ni bosing.

QAYD: Routeringiz DHCP IP -ni bron qilish xususiyatidan foydalanib, statik IP -manzilni tayinlash osonroq bo'lishi mumkin. Sizga Pi -ning MAC -manzili kerak bo'lishi mumkin yoki u yo'riqnoma administrator sahifasida ulangan qurilmalar ro'yxatida ko'rsatilishi mumkin. Agar sizga MAC manzili kerak bo'lsa, chekilgan terminal oynasida "ifconfig eth0" yoki WiFi uchun "ifconfig wlan0" buyrug'ini kiriting. Qizig'i shundaki, WiFi MAC manzili "efir" bilan boshlanadigan satrda ko'rsatiladi.

7 -qadam:

Rasm
Rasm
Rasm
Rasm
Rasm
Rasm

Keyin biz ekranning standart o'lchamlarini o'rnatishimiz kerak. Bu bizni monitorga qanday ulanganimizni tasavvur qilish bema'ni bo'lib tuyulishi mumkin, lekin keyinchalik siz VNC orqali monitor ulanmaganingizda (boshsiz, ular aytganidek) 640x480 pikselli piksellar sonini qaytaradi, bu juda kichik ekran. bilan ishla! GUI menyusi> Sozlamalar> Raspberry Pi konfiguratsiyasi> Ruxsatni o'rnatish -ni tanlang. Uni 1280x720 yoki undan yuqori qilib o'rnating va qayta yuklash uchun OK va Ha ni bosing.

8 -qadam:

Rasm
Rasm
Rasm
Rasm
Rasm
Rasm

Ayniqsa sizning tarmog'ingizda bittadan ko'p bo'lsa, siz Pi nomini o'zgartirishni xohlashingiz mumkin. Uni osongina aniqlash uchun men "BluetoothPi" deb nomladim. Nomini o'zgartirgandan so'ng, u qayta ishga tushirishni so'raydi.

9 -qadam:

Rasm
Rasm
Rasm
Rasm
Rasm
Rasm
Rasm
Rasm

Bu vaqtda siz Pi -ni boshqarish uchun VNC -dan foydalanishni boshlashingiz mumkin. Raspbian ish stolida VNC boshqaruv panelini qayta oching va "Ulanish" bo'limida IP manzilini qidiring. Oddiy kompyuteringizga VNC tomoshabinni o'rnating va ishga tushiring va ulanish uchun "malina" ni (tirnoqsiz) parol sifatida kiriting. Men Windows uchun TightVNC dan foydalanardim. Ulanganingizdan so'ng, Pi -ning VNC ulanishini ish stolidagi yorliq sifatida saqlashingiz mumkin, bu esa kelajakda kirish ekranini chetlab o'tib tez ulanish imkonini beradi. Siz yorliqda parolni saqlash haqida ogohlantirish olasiz. Pi terminalining oynasiga nusxa ko'chirish va joylashtirish uchun oddiy kompyuteringizdagi matn yoki buyruqlarni tanlang yoki ajratib oling, Ctrl-C ni bosing (bir vaqtning o'zida klaviaturadagi Ctrl va C tugmachalarini bosing) yoki sichqonchaning o'ng tugmachasini bosing va "Nusxalash" -ni tanlang. ", keyin Pi-ning VNC ko'rish oynasini faollashtiring va kursorning o'ng tomonidagi terminal oynasining o'ng tugmachasini bosing va Yapıştır-ni tanlang.

10 -qadam:

Rasm
Rasm
Rasm
Rasm

Keyin biz ikkita dasturni o'rnatamiz - Darkice va Icecast2. Darkice - bu bizning bluetooth audio manbamizni mp3 oqimiga kodlaydigan narsa va Icecast2 - bu Sonosga Shoutcast oqimi sifatida xizmat qiladigan narsa. Ushbu satrlarning har birini terminal oynasiga birma -bir nusxa ko'chiring va har safar Enter tugmachasini bosing:

wget

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

sudo apt-get libmp3lame0 libtwolame0 ni o'rnating

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

11 -qadam:

Rasm
Rasm
Rasm
Rasm
Rasm
Rasm
Rasm
Rasm

Endi Icecast2 -ni o'rnating. "Sudo apt-get install icecast2" ni kiriting, so'ngra kiriting. O'rnatishdan so'ng, Icecast2 -ni sozlashni xohlaysizmi degan oyna ochiladi. Chap o'q tugmachasini bosing va "Ha" ni tanlash uchun kiriting. Ikkinchi ekranda pastga o'q tugmasini bosing va "localhost" standart xost nomidan foydalanish uchun OK ni tanlang. Keyingi uchta ekranda "hackme" ni standart manba, o'rni va ma'muriy paroli sifatida ishlatishga rozilik berish uchun pastga o'qni bosing va kiriting. Garchi biz barcha standart sozlamalarga rozi bo'lsak ham, Icecast2 serverini faollashtirish uchun bu bosqichlarni bajarish kerak.

sudo apt-get icecast2 ni o'rnating

12 -qadam:

Rasm
Rasm
Rasm
Rasm
Rasm
Rasm

Keyin biz GUI fayl menejerini ildiz foydalanuvchi sifatida ishga tushirishimiz kerak. Buning uchun GUI menyusi> Ishga tushirish -ni tanlang. "Sudo pcmanfm" ni kiriting va Enter tugmasini bosing. Bu fayl menejerini ochadi (biz uchun Windows foydalanuvchilari uchun faylni o'rganuvchi ekvivalenti) uy katalogiga (/home/pi) va siz ilgari yuklagan qorong'i o'rnatish faylini ko'rasiz. Bo'sh joyga sichqonchaning o'ng tugmachasini bosing va "Yangi yaratish" va "Faylni bo'shatish" -ni tanlang. Unga "darkice.cfg" deb nom bering va OK ni bosing. Keyin yangi yaratilgan faylni o'ng tugmasini bosing va Leafpad bilan ochishni tanlang (Windows bloknotiga teng). Quyidagi satrlarni nusxa ko'chiring va Leafpad -ga joylashtiring, so'ng Fayl va Saqlash -ni bosing. "Sifat" qatoriga # raqami qo'yilganini ko'rasiz. U faqat "bitrateMode = vbr" (o'zgaruvchan bit tezligi) ni o'rnatganingizda ishlatiladi. Cbr (doimiy bit tezligi) dan foydalanilganda siz sifat qiymatini o'rnatolmaysiz, aks holda oqim to'xtab qoladi. Aksincha, agar siz vbr -dan foydalanishga qaror qilsangiz, "bitrate = 160" qatorini sharhlashingiz va "sifat" qatoriga izoh qoldirmasligingiz kerak.

DIQQAT: mp3 bit tezligi 320 kbit / s; ammo, Raspberry Pi -dagi Wi -Fi va Bluetooth radiosi bir xil chipda joylashgan, shuning uchun agar siz ikkalasining ham o'tkazish qobiliyatini maksimal darajada oshirsangiz, bluetooth ovozi qotib qolishi yoki muzlab qolishi mumkin. Keyinchalik sozlamani o'zgartiramiz, bu esa Wi -Fi tarmoqli o'tkazuvchanligini biroz cheklaydi, shuning uchun men ushbu loyihaning audio tezligini 160 kbit / s gacha kamaytirdim, chunki men uni faqat WiFi -da saqlamoqchiman. Agar siz chekilgan tarmoqdan foydalansangiz, bu muammo emas va siz tezlikni 320 kbit / s ga o'rnatishingiz mumkin.

[umumiy] davomiylik = 0 # s davomiyligi, 0 abadiy bufferSecs = 1 # bufer, soniyalarda qayta ulanish = ha # uzilib qolsa qayta ulanish

[kiritish]

qurilma = telefon # bluetooth qurilmasi nomi namunasi Rate = 44100 # namuna tezligi 11025, 22050 yoki 44100 bit PerSample = 16 # bit kanal = 2 # 2 = stereo

[icecast2-0]

bitrateMode = cbr # doimiy bit tezligi ('cbr' doimiy, 'abr' o'rtacha) #sifat = 1.0 # 1.0 - eng yaxshi sifat (faqat vbr bilan ishlatish) format = mp3 # format. OGG uchun "vorbis" ni tanlang Vorbis bitrate = 160 # bitrate server = localhost # yoki IP port = 8000 # IceCast2 kirish paroli uchun = hackme # IceCast2 server uchun manba paroli mountPoint = rapi.mp3 # IceCast2 serveridagi o'rnatish nuqtasi.mp3 yoki.ogg nomi = BluetoothPi

13 -qadam:

Rasm
Rasm
Rasm
Rasm
Rasm
Rasm
Rasm
Rasm

Keyin biz "darkice.sh" deb nomlangan bo'sh faylni yaratish uchun avvalgidek amallarni bajarishimiz kerak.. Sh fayli DOS yoki Windows uchun.bat yoki ommaviy faylga tengdir. Leafpad yordamida oching, quyidagi satrlarni nusxa ko'chiring va saqlang. Agar siz mening oldingi ko'rsatmalarimga amal qilgan bo'lsangiz, siz Darkice boshlanadigan chiziq biroz boshqacha ko'rinishini ko'rasiz. Men kodni pastadirga kiritishim kerak edi, chunki Darkice bluetooth audio signalini yo'qotganda, u ishlamay qoladi va hatto ovoz qayta ishga tushirilganda ham avtomatik ravishda qayta ishga tushmaydi. Men bu muammoni juda ko'p tadqiq qildim va bluetooth qurilmasi ulanganda avtomatik tarzda skriptni ishga tushirishning murakkab usullari mavjud bo'lsa -da, bluetooth qurilmasi hali ham ulangan bo'lsa ham (masalan, YouTube yopilsa telefoningizda ilova), shuning uchun bluetooth audio mavjud bo'lganda Darkice ishlayotganiga ishonch hosil qilishning eng oson va ishonchli usuli. Agar Darkice allaqachon ishlayotgan bo'lsa, buyruq e'tiborga olinmaydi.

#!/bin/bash paytida:; sudo/usr/bin/darkice -c /home/pi/darkice.cfg qiling; uxlash 5; bajarildi

14 -qadam:

Rasm
Rasm

Keyin biz darkice.sh faylini bajariladigan qilish uchun buyruqni ishga tushirishimiz kerak. Terminal oynasini oching va "sudo chmod 777 /home/pi/darkice.sh" yozing va Enter tugmasini bosing. Endi Icecast2 server xizmatini ishga tushirish vaqti keldi. "Sudo service icecast2 start" ni kiriting va Enter tugmasini bosing.

sudo chmod 777 /home/pi/darkice.sh

sudo xizmati icecast2 boshlanishi

15 -qadam:

Rasm
Rasm
Rasm
Rasm
Rasm
Rasm
Rasm
Rasm

Keyin biz Darkice -ga Pi yuklash paytida avtomatik ravishda ishga tushishini aytishimiz kerak (Icecast2 serveri xizmat sifatida ishlaydi va yuklashdan keyin avtomatik ravishda ishga tushadi). Avval biz qaysi matn muharriridan foydalanishni tanlashimiz kerak. Terminal oynasida "tanlash-tahrirlovchisi" ni kiriting va "Enter" tugmasini bosing. Nano muharririni tanlash uchun "2" kiriting va Enter tugmasini bosing. Keyin "crontab -e" yozing va kiriting. Keyin paydo bo'ladigan matnli faylni oxirigacha aylantirish uchun pastga o'q tugmachasini bosib ushlab turing va "@reboot sleep 10 && sudo /home/pi/darkice.sh" qatorini qo'shing. Chiqish uchun Ctrl-X tugmachasini bosing va "O'zgartirilgan bufer saqlansinmi?" "Y" tugmachasini bosing, keyin "Ha", so'ngra "Enter" tugmachasini bosib, avtomatik ravishda fayl nomi yaratilishini tasdiqlang.

muharrir tanlash

crontab -e

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

16 -qadam:

Rasm
Rasm
Rasm
Rasm
Rasm
Rasm

Ish stolidagi bluetooth belgisidan foydalanib, telefoningizni Raspberry Pi bilan bog'lang. Pi -ning bluetooth -ni kashfiyot rejimiga qo'yib, keyin telefoningizdan ulashingiz muhim. Agar siz telefoningizni kashfiyot rejimiga qo'yib, uni Pi -dan ulashga harakat qilsangiz, u ulanishi mumkin, lekin sizning telefoningizda Pi ishlata oladigan xizmatlar yo'q, deb xato qilsa, bu to'g'ri. Biz Pi -ga audio yuborishga harakat qilamiz, aksincha emas. U bog'langanidan so'ng, ulangan qurilmangizning Bluetooth MAC manzilini ko'rsatish uchun terminal oynasida ushbu buyruqni bajaring:

sudo bluetoothctl

17 -qadam:

Rasm
Rasm
Rasm
Rasm
Rasm
Rasm

Darkice bluetooth qurilmasini PCM audio kiritish sifatida ishlata olishi uchun biz "etc" papkasida "asound.conf" (etc/asound.conf) nomli fayl yaratishimiz kerak. Ildiz katalogiga o'tish uchun fayl menejerining yuqoriga o'qini bir necha marta bosing va keyin ochish uchun "etc" papkasini ikki marta bosing. Pastga siljiting va bo'sh joyni O'ngga bosing va "asound.conf" nomli bo'sh faylni yarating va quyidagi satrlarni qurilmangizning MAC manzilini menikiga almashtiring va saqlang.

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

18 -qadam:

Rasm
Rasm
Rasm
Rasm
Rasm
Rasm

Raspberry Pi -dagi Wi -Fi va Bluetooth radiosi bitta chipda joylashgan, shuning uchun agar siz ikkalasining ham o'tkazish qobiliyatini maksimal darajada oshirsangiz, bluetooth ovozi qotib qolishi yoki muzlab qolishi mumkin. Ba'zilar buni xato deb atashadi, ba'zilari esa bu faqat apparat cheklovidir. Biz buni tuzatadigan sozlamani o'zgartiramiz. Ushbu tuzatmani joylashtirish uchun kredit "pelwell" ga o'tadi https://github.com/raspberrypi/linux/issues/1402 Fayl menejerini ochish va/lib/firmware/brcm ga o'tish uchun sudo pcmanfm -ni qayta ishga tushiring. "Brcmfmac43430-sdio.txt" matnli faylini ochish uchun uni ikki marta bosing va bu satrlarni pastga qo'shib saqlang.

# Cypressbtc_mode = 1 btc_params8 = 0x4e20 btc_params1 = 0x7530 dan tajribali Bluetooth birgalikda yashash parametrlari

19 -qadam:

Rasm
Rasm
Rasm
Rasm
Rasm
Rasm

GUI menyusi belgisini bosing va O'chirish va Qayta yuklashni tanlang. Agar siz ushbu qadamlarning barchasini aniq bajargan bo'lsangiz, bluetooth audio serveringiz qayta yuklashni bosgandan so'ng 30 soniyadan bir daqiqagacha avtomatik ravishda boshlanadi. Siz uni Sonos -ga qo'shishdan oldin, siz telefoningizning bluetooth -ni Pi -ga ulashingiz kerak (telefoningiz bluetooth sozlamalarida tegib turing, chunki u allaqachon bog'langan) va qandaydir ovozni eshitishni boshlash va ovoz balandligini oshirish kerak. Esda tutingki, siz telefon karnayidan hech qanday ovoz eshitmaysiz, chunki u tashqi bluetooth dinamikiga ulangan deb o'ylaydi. Icecast Darkice -dan bluetooth audio qabul qilayotganini aniqlashning vizual usullaridan biri bu sizning veb -brauzeringizda https:// 192.168.86.107:8000 -ni ochish, sizning IP -manzilingiz meniki bilan almashtirilgan. Icecast har doim ishlaydi, shuning uchun siz har doim statuslar sahifasini ko'rasiz, lekin agar Darkice bluetooth ovozini qabul qilsa, siz ulash nuqtasi va oqim tavsifchisini ko'rasiz. Bluetooth -ni uzing va sahifani yangilang, u yana bo'sh qoladi.

20 -qadam:

Rasm
Rasm
Rasm
Rasm

Sonos -ga maxsus oqim qo'shish uchun siz Sonos ish stoli boshqaruvchisi ilovasidan foydalanishingiz kerak. Boshqarish> Radiostansiya qo'shish -ni bosing va men uchun "https://192.168.86.107:8000/rapi.mp3" bo'lgan oqimning URL manzilini kiriting. Shuningdek, bekat nomini kiriting va OK ni bosing.

21 -qadam:

Rasm
Rasm

Biz qo'shgan maxsus radiostansiyani ijro etish uchun "Radio by Tunein" ni, so'ng "Mening radio stantsiyalarimni" tanlang. O'ynash uchun chapga ikki marta bosing yoki stantsiyani tahrirlash yoki Sonos sevimlilariga qo'shish uchun O'ngga bosing.

22 -qadam:

Rasm
Rasm
Rasm
Rasm

Maxsus radiostansiya qo'shilgandan so'ng, u darhol Sonos ilovasida bo'ladi. Ilovani oching, pastda "Mening Sonosim" ni bosing, "Stantsiyalar" ga o'ting va "Hammasini ko'rish" ni bosing. Yangi yaratilgan bekatni ko'rmaguningizcha pastga aylantiring. Unga teging va u siz tanlagan xonalarda o'ynay boshlaydi. Eslab, ̶ agar siz ajratib Bluetooth dan The Pi, keyin The IceCast oqim bo'ladi ̶d̶i̶s̶c̶o̶n̶n̶e̶c̶t̶.̶ bo'lsangiz, siz o'tish audio ilovalar may ̶d̶i̶s̶c̶o̶n̶n̶e̶c̶t̶.̶ uchun Rezyume tinglov Sonos ̶y̶o̶u̶'̶l̶l̶ ega bo'lishi Restart o'ynab audio sizning telefon qayta-surish Play ̶T̶h̶e̶ ̶S̶o̶n̶o̶s̶ ̶a̶p̶p̶ ̶a̶g̶a̶i̶n̶.̶ <--- Bu tuzatildi; quyida yangilanishni ko'ring. Omad tilaymiz va o'qiganingiz uchun tashakkur!

23 -qadam: YANGILASH: BLUETOOTH NOSOXIYAT QILGANDA QO'ShIMChA TUZILGAN STREAM

Shunday qilib, bluetooth oqimi bu sozlashda juda yaxshi ishlagan, bundan tashqari, Darkice bluetooth audio yo'qolganda Sonos Icecast serveridan uziladi, masalan, audio ilovalarni almashtirganingizda yoki shunchaki bluetoothni uzib qo'yganingizda, bu og'riqli edi, chunki siz oldin bluetooth audio oqimini qayta olishingiz kerak bo'ladi. Siz hatto Sonos ilovasidagi ijro tugmasini bosishingiz mumkin. Telefonimning to'liq ekranli WatchESPN ilovasidan Sonosga audio uzatmoqchi bo'lganimda, bu katta muammo bo'lib qoldi, shuning uchun bluetooth ovozini ishga tushirgandan so'ng Sonos ilovasidagi ijro tugmasini bosa olmadim, lekin WatchESPN ilovasini yopganimda Agar sizda bluetooth ovozi birinchi bo'lmaganda, Sonos oqimi boshlanmaydi! Uf! Men buning uchun oqlangan tuzatish taklif qilish uchun sochlarimni tortdim. Liquidsoap deb nomlangan boshqa mp3 enkoderni sinab ko'rdim, u aloqani uzganda ovozsiz ovoz yuborish imkoniyatiga ega, lekin men uni bluealsa bilan ishlay olmadim. Men bluealsa oqimini dsnoop va asym yordamida ikkilamchi ovozli kartali alsa oqimi bilan aralashtirishga harakat qildim, lekin Icecast -ni hali ham ovozli signal bor deb o'ylashga aldashga harakat qildim, lekin haqiqatan ham bluetooth ovozini boshqarishga imkon bermaydi. Keyin Icecast -dagi jim mp3 fayli yordamida orqaga qaytish nuqtasini tekshirishni boshladim, lekin Sonos ulanish nuqtasi nomining o'zgarishini va uzilishini ko'radi. Men test.mp3 faylidan foydalandim va tasodifan uni qayta o'rnatish o'rniga asosiy ulanish nuqtasi nomi sifatida belgilab qo'ydim va "rapi.mp3" bluetooth oqimidan uzilganida, Sonos bu faylni o'ynashga o'tganini payqadim. Evrika! U yana mavjud bo'lganda avtomatik ravishda bluetooth oqimiga o'tmaydi, shuning uchun meni nima uchun bir xil o'rnatish nuqtasi nomidan foydalanmasligim kerak? Siz nima qilishingiz kerak bo'lsa, jim mp3 faylini yarating va unga Darkice mp3 oqimining nomi "rapi.mp3" deb nom bering va Icecast2 konfiguratsiya faylining asosiy o'rnatish nuqtasi sifatida qattiq kodni bering. Nima bo'ladi, qachonki Sonos Darkice/bluetooth rapi.mp3 oqimiga ulanishni yo'qotsa, bluetooth oqimi Internetga qaytguncha boshqa jim rapi.mp3 faylini aylana boshlaydi. Shunday qilib, Sonos -da o'ynashdan oldin, bluetooth ovozi bo'lishi shart emas. Mana buni qanday qilish kerak …

24 -qadam:

Rasm
Rasm
Rasm
Rasm
Rasm
Rasm

Avval jim mp3 faylini yaratish uchun ffmpeg -ni o'rnatishimiz kerak. Siz tashqi ovoz kartasidan jim.wav faylini yozib, cho'loq yordamida mp3ga aylantira olasiz, lekin menda bu loyiha uchun tashqi ovozli karta kiritilmaganligi uchun ffmpeg dan foydalanish eng oson echim edi. Terminal oynasini oching va "sudo apt-get install ffmpeg" ni kiriting va Enter tugmasini bosing:

sudo apt-get ffmpeg-ni o'rnating

O'rnatilgandan so'ng, bir soniya davom etadigan jim mp3 faylini kodlash uchun ushbu uzun qatorni nusxa ko'chiring va joylashtiring:

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

Fayl menejerini "sudo pcmanfm" yordamida ildiz sifatida oching va "/etc/icecast2" ga o'ting. "Icecast.xml" ni sichqonchaning o'ng tugmasi bilan bosing va Leafpad yordamida oching va "" qatorining yuqori qismiga qo'ying.

/rapi.mp3

Saqlash va qayta ishga tushirish, endi siz telefoningizni bluetooth -ga ulamasdan oldin maxsus Sonos bluetooth stantsiyasini ishga tushirishingiz kerak!

25 -qadam: Qo'shimcha

Qo'shimcha
Qo'shimcha
Qo'shimcha
Qo'shimcha
Qo'shimcha
Qo'shimcha
Qo'shimcha
Qo'shimcha

Men Raspberry Pi va 110V o'zgaruvchan tokdan 5Vgacha bo'lgan quvvat manbaini bitta holatda bo'lishini xohlardim, shuning uchun uni uy bo'ylab osongina ko'chirishim mumkin edi, lekin men bunday korpus yo'qligiga hayron bo'ldim. Keyinchalik 3D formatida chop etishim mumkin, lekin men boshqa Raspberry Pi korpusidan foydalanishga o'tdim va ingichka USB devor zaryadlovchi va qisqa kabelni topdim. Zaryadlovchining kauchuk qoplamasi bor edi, men uni aniq VHB tasmasini yopishtirib ololmadim, lekin u osonlikcha olinadigan stiker ekan; ammo, bu VHB tasmasini juda ingichka qilib qo'ygan kichik chuqurchaga olib keldi, shuning uchun men velkro ishlatardim.

Tavsiya: