Სარჩევი:

ითამაშეთ Bluetooth Sonos– ზე ჟოლოს Pi გამოყენებით 25 ნაბიჯი
ითამაშეთ Bluetooth Sonos– ზე ჟოლოს Pi გამოყენებით 25 ნაბიჯი

ვიდეო: ითამაშეთ Bluetooth Sonos– ზე ჟოლოს Pi გამოყენებით 25 ნაბიჯი

ვიდეო: ითამაშეთ Bluetooth Sonos– ზე ჟოლოს Pi გამოყენებით 25 ნაბიჯი
ვიდეო: როგორ დავაყენოთ L4D2 2024, ივლისი
Anonim
Image
Image
ითამაშეთ Bluetooth Sonos– ზე Raspberry Pi– ს გამოყენებით
ითამაშეთ Bluetooth Sonos– ზე Raspberry Pi– ს გამოყენებით

მე ადრე დავწერე სასწავლო ინსტრუქცია, სადაც აღწერილია თუ როგორ უნდა დაამატოთ aux ან ანალოგური ხაზი Sonos– ში Raspberry Pi– ს გამოყენებით. მკითხველმა ჰკითხა, შესაძლებელია თუ არა მისი ტელეფონიდან სონოსზე ბლუთუს აუდიოს გადაცემა. ამის გაკეთება ადვილია უფრო ძვირიანი Sonos Play- ის ხაზში ჩართული bluetooth dongle- ის გამოყენებით: 5 ან Sonos CONNECT; თუმცა, თქვენ კარგავთ ერთგულებას bluetooth (ციფრული) ანალოგურად გადაქცევით, შემდეგ ისევ ციფრულზე და თუ თქვენ ფლობთ მხოლოდ ერთ – ერთ ყველაზე ძვირადღირებულ Sonos დინამიკს, მაშინ ეს არ არის ვარიანტი. ეს ინსტრუქცია აღწერს, თუ როგორ უნდა შეიქმნას Raspberry Pi, Bluetooth– ის აუდიოს ნებისმიერი Sonos სპიკერის გადასაცემად.

შენიშვნა: გაითვალისწინეთ, რომ ჩვენ ვაპირებთ Bluetooth– ის აუდიოს გადაცემას Raspberry Pi– ზე და გადავაქცევთ მას mp3 ნაკადში, სანამ Sonos– ში გავაგზავნით, ასე რომ დაგვიანდება რამდენიმე წამი. თუ ამას იყენებთ ვიდეოს საყურებლად, აუდიო სინქრონიზებული იქნება.

Ნაბიჯი 1:

რაც დაგჭირდებათ:

ჟოლო PI 3 მოდელი B (არის უფრო ახალი, უფრო სწრაფი მოდელი B+, მაგრამ მე დავრჩი რეგულარულ მოდელ B– სთან ერთად, რადგან წავიკითხე B+ ჩაკეტვასთან დაკავშირებული პრობლემები და ასევე B+ –ის wifi და bluetooth რადიოებს აქვთ ლითონის დამცავი მათ გარშემო გასაკეთებლად ისინი შეესაბამება FCC- ს, როდესაც სხვა მოწყობილობაშია დაინსტალირებული, მაგრამ მე მინდოდა მაქსიმალური Bluetooth დიაპაზონი და მეშინოდა, რომ დამცავმა შეიძლება ხელი შეუშალოს მას)

დესკტოპის ან ლეპტოპის კომპიუტერი microSD ბარათის წამკითხველით

მონიტორი ან ტელევიზია HDMI შესასვლელით (მხოლოდ საწყისი კონფიგურაციისთვის)

USB ან bluetooth კლავიატურა და მაუსი (მხოლოდ საწყისი კონფიგურაციისთვის)

პლასტიკური ჟოლოს კეისი (მე ვიყენებ პლასტმასის ქეისს ამ პროექტისთვის, რათა გავზარდო bluetooth დიაპაზონი)

Kingston 8 GB microSDHC კლასი 4 ფლეშ მეხსიერების ბარათი

5V კვების ბლოკი

ნაბიჯი 2:

გამოსახულება
გამოსახულება
გამოსახულება
გამოსახულება

გადადით https://www.raspberrypi.org/downloads/raspbian/ თქვენს ჩვეულებრივ კომპიუტერზე და გადმოწერეთ "RASPBIAN STRETCH WESKTOP- ით".

ასევე გადადით https://etcher.io/ და გადმოწერეთ Etcher და დააინსტალირეთ.

შენიშვნა: ჩემს წინა ინსტრუქციებში აღვწერე როგორ გადმოწეროთ NOOBS Raspbian– ის დასაყენებლად; თუმცა, ეს მეთოდი ცოტა უფრო სწრაფია. ნებისმიერ შემთხვევაში კარგია.

ნაბიჯი 3:

გამოსახულება
გამოსახულება
გამოსახულება
გამოსახულება

გაუშვით Etcher და დააწკაპუნეთ სურათის არჩევაზე და დაათვალიერეთ zip ფაილი. დააწკაპუნეთ აირჩიეთ დისკზე და დაათვალიერეთ microSD ბარათი და შემდეგ დააჭირეთ Flash!

ნაბიჯი 4:

გამოსახულება
გამოსახულება
გამოსახულება
გამოსახულება
გამოსახულება
გამოსახულება
გამოსახულება
გამოსახულება

შენიშვნა: ზოგიერთი მომდევნო ნაბიჯი ჩემი წინა ინსტრუქციის მსგავსია, ასე რომ გამოტოვეთ წინ, თუ უკვე გაქვთ root პაროლი, სტატიკური IP და VNC დაყენებული.

ჩადეთ microSD ბარათი SD ბარათის სლოტში Raspberry Pi- ს ქვედა მხარეს. დაუკავშირეთ HDMI კაბელი Raspberry Pi– დან თქვენს მონიტორს ან ტელევიზორს. შეაერთეთ USB კლავიატურა, მაუსი და ბოლოს მიკრო USB დენის კაბელი. ჩატვირთვის შემდეგ გამოჩნდება Raspbian დესკტოპი. ის მიგიყვანს რამდენიმე პარამეტრზე, მაგრამ მე გირჩევთ არ შეამოწმოთ განახლებები. დაწკაპეთ გამოტოვება. მე კვლავ ვიღებდი "blueman.bluez.errors. DBusFailedError: Protocol not available" შეცდომისას, როდესაც ვცდილობდი Bluetooth- ის დაწყვილება ყველა განახლების დაყენების შემდეგ, ასე რომ მომიწია თავიდან დაწყება.

რჩევა: თუ არ გსურთ სამხედრო დრო მარჯვენა ღილაკით დააწკაპუნეთ საათზე და შეარჩიეთ ციფრული საათის პარამეტრები და შეცვალეთ საათის ფორმატი %R– დან %r– მდე

ნაბიჯი 5:

გამოსახულება
გამოსახულება
გამოსახულება
გამოსახულება
გამოსახულება
გამოსახულება

შემდეგი ჩვენ ვაპირებთ ჩართოთ ჩაშენებული VNC სერვერი. ეს ამარტივებს საქმეს იმდენად, რამდენადაც თქვენ შეგიძლიათ უბრალოდ დააკოპიროთ და ჩასვათ ბრძანებები VNC საშუალებით, ვიდრე მათი აკრეფა. აირჩიეთ GUI მენიუ> პარამეტრები> Raspberry Pi კონფიგურაცია> ინტერფეისები. დააწკაპუნეთ ჩართულია VNC– ს გვერდით და შემდეგ OK. რამდენიმე წამის შემდეგ VNC ხატი გამოჩნდება ამოცანების პანელზე. დააწკაპუნეთ მასზე და შემდეგ მენიუს ხატულა ზედა მარჯვნივ (ყუთი 3 ჰორიზონტალური ხაზით) და შემდეგ პარამეტრები. უსაფრთხოების პარამეტრებში დააყენეთ დაშიფვრა "სასურველია გამორთული" და ავთენტიფიკაცია როგორც "VNC პაროლი" შემდეგ დააჭირეთ ღილაკს "გამოყენება". პაროლის ყუთი გამოჩნდება. თითოეულ ყუთში შეიყვანეთ "ჟოლო" (ბრჭყალების გარეშე) პაროლისთვის და დააწკაპუნეთ OK.

ნაბიჯი 6:

გამოსახულება
გამოსახულება
გამოსახულება
გამოსახულება
გამოსახულება
გამოსახულება

სანამ მეტს გავაგრძელებთ, ჩვენ უნდა მივანიჭოთ სტატიკური IP მისამართი. თუ თქვენი Pi- ს IP მისამართი შემთხვევით არის მინიჭებული თქვენი როუტერის DHCP სერვერის მიერ, მაშინ IP მისამართი შეიძლება შეიცვალოს მოგვიანებით და თქვენ ვერ შეძლებთ დაკავშირებას VNC (ან ამ საკითხთან დაკავშირებით Sonos) საშუალებით. მარჯვენა ღილაკით დააწკაპუნეთ ქსელის კავშირების ხატზე ამოცანების პანელზე (ისრის პატარა ზემოთ და ქვემოთ) და აირჩიეთ "უკაბელო და სადენიანი ქსელის პარამეტრები". მარცხნივ დააწკაპუნეთ ზედა მარჯვენა ყუთზე და აირჩიეთ "eth0", რომ დააკონფიგურიროთ Ethernet კავშირი ან "wlan0" უკაბელო ქსელისთვის. მე გირჩევთ მიანიჭოთ სტატიკური IP მხოლოდ ერთს ან მეორეს. მე მქონდა პრობლემა, როდესაც მე პირველად დავაყენე ჩემი Pi, სადაც მე მივანიჭე ერთი და იგივე სტატიკური IP მისამართი ორივე კავშირს და ჩემი Pi უკაბელო ჩაკეტილი იყო და მე ვერ დავიბრუნე ის სწორად, ასე რომ მომიწია ოპერაციული სისტემის დაყენება. ნებისმიერ შემთხვევაში, შეიყვანეთ თქვენთვის სასურველი IP მისამართი IP მისამართის ველში და შეიყვანეთ თქვენი როუტერის IP მისამართი როგორც როუტერის, ასევე DNS სერვერების ველში. დაწკაპეთ მიმართვა და დახურვა.

შენიშვნა: შეიძლება უფრო ადვილი იყოს სტატიკური IP მისამართის მინიჭება თქვენი როუტერის DHCP IP დაჯავშნის ფუნქციის გამოყენებით, თუ მას აქვს ერთი. შეიძლება დაგჭირდეთ Pi- ს MAC მისამართი ან ის უბრალოდ გამოჩნდეს დაკავშირებული მოწყობილობების სიაში თქვენი როუტერის ადმინისტრაციულ გვერდზე. თუ გჭირდებათ MAC მისამართი, ჩაწერეთ ბრძანება "ifconfig eth0" ტერმინალის ფანჯარაში ethernet ან "ifconfig wlan0" WiFi- სთვის. საინტერესოა, რომ WiFi MAC მისამართი გამოჩნდება ხაზზე, რომელიც იწყება "ეთერით"

ნაბიჯი 7:

გამოსახულება
გამოსახულება
გამოსახულება
გამოსახულება
გამოსახულება
გამოსახულება

შემდეგი ჩვენ უნდა დავაყენოთ ნაგულისხმევი ეკრანის გარჩევადობა. ეს შეიძლება სულელურად მოგვეჩვენოს, როგორც ჩვენ უკვე დაკავშირებულნი ვართ მონიტორთან, მაგრამ მოგვიანებით, როდესაც თქვენ დაუკავშირდებით VNC– ს მონიტორის გარეშე (როგორც ამბობენ), ის დაუბრუნდება Pi– ს ნაგულისხმევ 640x480 რეზოლუციას, რაც ძალიან პატარა ეკრანია მუშაობა! აირჩიეთ GUI მენიუ> პარამეტრები> Raspberry Pi Configuration> Set Resolution. დააყენეთ 1280x720 ან უფრო მაღალი და დააჭირეთ გადატვირთვას OK და დიახ.

ნაბიჯი 8:

გამოსახულება
გამოსახულება
გამოსახულება
გამოსახულება
გამოსახულება
გამოსახულება

შეიძლება დაგჭირდეთ თქვენი Pi სახელის შეცვლა, განსაკუთრებით თუ თქვენს ქსელში ერთზე მეტი გაქვთ. ჩემს სახელს დავარქვი "BluetoothPi", რათა ის ადვილად ამოსაცნობი იყოს. ის მოგთხოვთ გადატვირთვას მისი გადარქმევის შემდეგ.

ნაბიჯი 9:

გამოსახულება
გამოსახულება
გამოსახულება
გამოსახულება
გამოსახულება
გამოსახულება
გამოსახულება
გამოსახულება

ამ ეტაპზე შეიძლება დაგჭირდეთ VNC– ის გამოყენება Pi– ის გასაკონტროლებლად. გახსენით VNC მართვის პანელი Raspbian სამუშაო მაგიდაზე და მოძებნეთ IP მისამართი "დაკავშირებადობა" პუნქტში. დააინსტალირეთ და გაუშვით VNC მაყურებელი თქვენს ჩვეულებრივ კომპიუტერზე და გამოიყენეთ ეს IP მისამართი, რომ დააკავშიროთ და შეიყვანოთ "ჟოლო" (ბრჭყალების გარეშე) როგორც პაროლი. მე ვიყენებ TightVNC Windows- ს. დაკავშირების შემდეგ შეგიძლიათ შეინახოთ Pi- ს VNC კავშირი, როგორც მალსახმობი თქვენს სამუშაო მაგიდაზე, რათა მომავალში სწრაფად დააკავშიროთ შესვლის ეკრანის გვერდის ავლით. თქვენ მიიღებთ გაფრთხილებას პაროლის შენახვის შესახებ მალსახმობის შიგნით. Pi– ს ტერმინალის ფანჯარაში დასაკოპირებლად და ჩასასმელად შეარჩიეთ ან მონიშნეთ ტექსტი ან ბრძანებები თქვენს ჩვეულებრივ კომპიუტერზე, დააჭირეთ Ctrl-C (სიტყვასიტყვით დააჭირეთ კლავიშს Ctrl და C კლავიატურაზე ერთდროულად) ან დააწკაპუნეთ მარჯვენა ღილაკით და აირჩიეთ „კოპირება ", შემდეგ გააქტიურეთ Pi- ს VNC დამთვალიერებელი ფანჯარა და დააწკაპუნეთ მარჯვენა ღილაკით ტერმინალის ფანჯრის შიგნით კურსორის მარჯვნივ და აირჩიეთ ჩასმა.

ნაბიჯი 10:

გამოსახულება
გამოსახულება
გამოსახულება
გამოსახულება

შემდეგ ჩვენ ვაპირებთ ორი პროგრამის დაყენებას, Darkice და Icecast2. Darkice არის ის, რაც დაშიფვრის ჩვენს bluetooth აუდიო წყაროს mp3 ნაკადში და Icecast2 არის ის, რაც მას Sonos- ს ემსახურება როგორც Shoutcast ნაკადი. დააკოპირეთ და ჩასვით თითოეული ეს სტრიქონი ტერმინალის ფანჯარაში სათითაოდ, რასაც მოჰყვება 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 დააინსტალირეთ libmp3lame0 libtwolame0

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

ნაბიჯი 11:

გამოსახულება
გამოსახულება
გამოსახულება
გამოსახულება
გამოსახულება
გამოსახულება
გამოსახულება
გამოსახულება

ახლა დააინსტალირეთ Icecast2. ჩაწერეთ "sudo apt-get install icecast2" რასაც მოჰყვება enter. ინსტალაციის შემდეგ გამოჩნდება ფანჯარა, სადაც გეკითხებით გსურთ Icecast2- ის კონფიგურაცია. დააწკაპუნეთ ისრის მარცხენა ღილაკზე და შეიყვანეთ, რომ აირჩიოთ დიახ. მეორე ეკრანზე დააწკაპუნეთ ქვემოთ ისრის ღილაკზე და შეიყვანეთ, რათა აირჩიოთ OK, რომ გამოიყენოთ მასპინძლის ნაგულისხმევი სახელი "localhost". მომდევნო სამ ეკრანზე მოხვდა ქვემოთ ისარი და შეიყვანეთ გასაღები, რომ დათანხმდეთ გამოიყენოთ "hackme" როგორც ნაგულისხმევი წყარო, სარელეო და ადმინისტრაციული პაროლი. მიუხედავად იმისა, რომ ჩვენ ვეთანხმებით ყველა ნაგულისხმევ პარამეტრს, ეს ნაბიჯები უნდა დასრულდეს Icecast2 სერვერის გასააქტიურებლად.

sudo apt-get დააინსტალირეთ icecast2

ნაბიჯი 12:

გამოსახულება
გამოსახულება
გამოსახულება
გამოსახულება
გამოსახულება
გამოსახულება

შემდეგი ჩვენ გვჭირდება GUI ფაილის მენეჯერის გაშვება, როგორც root მომხმარებელი. ამისათვის აირჩიეთ GUI მენიუ> გაშვება. ჩაწერეთ "sudo pcmanfm" და დააჭირეთ Enter. ეს გახსნის ფაილ მენეჯერს (ჩვენთვის Windows– ის მომხმარებლებისთვის ფაილების გამომძიებლის ექვივალენტი) სახლის დირექტორიაში (/home/pi) და თქვენ იხილავთ ნარჩენების darkice ინსტალაციის ფაილს, რომელიც ჩვენ ადრე გადმოვწერეთ. მარჯვენა ღილაკით ცარიელ სივრცეში და აირჩიეთ შექმნა ახალი და შემდეგ ცარიელი ფაილი. დაარქვით მას "darkice.cfg" და დააწკაპუნეთ OK. შემდეგ დააწკაპუნეთ ახლად შექმნილ ფაილზე და შეარჩიეთ მისი გახსნა Leafpad– ით (Windows– ის რვეულის ეკვივალენტი). დააკოპირეთ ქვემოთ მოცემული ხაზები და ჩასვით ისინი Leafpad– ში, შემდეგ დააწკაპუნეთ ფაილზე და შენახვაზე. თქვენ შეამჩნევთ, რომ "ხარისხის" სტრიქონი განმარტებულია # -ით მის წინ. იგი გამოიყენება მხოლოდ იმ შემთხვევაში, თუ თქვენ დააყენებთ "bitrateMode = vbr" (ცვლადი ბიტრეიტი). თქვენ არ შეგიძლიათ განსაზღვროთ ხარისხის მნიშვნელობა cbr- ის გამოყენებისას (მუდმივი ბიტრეიტი), წინააღმდეგ შემთხვევაში ნაკადი დაიძაბება და გამოტოვებს. პირიქით, თუ გადაწყვეტთ vbr- ის გამოყენებას, თქვენ უნდა გააკეთოთ კომენტარი "ბიტრეიტი = 160" სტრიქონიდან და დატოვეთ კომენტარი "ხარისხის" ხაზზე.

შენიშვნა: უმაღლესი ხარისხის mp3 ბიტრეიტი, რომელიც შეიძლება გქონდეთ არის 320 kbps; თუმცა, WiFi და Bluetooth რადიოები Raspberry Pi– ზე არის ერთსა და იმავე ჩიპზე, ასე რომ, თუ ორივეს გამტარუნარიანობა მაქსიმალურად გამოაშკარავებთ, bluetooth აუდიოს შეუძლია stutter ან გაყინვას. ჩვენ მოგვიანებით შევცვლით იმ პარამეტრს, რომელიც გამოასწორებს ამას, თუმცა ის გარკვეულწილად ზღუდავს WiFi გამტარობას, ამიტომ ამ პროექტის აუდიო ბიტრეიტი 160 კბიტ / წმ -მდე შევამცირე, რადგან ვგეგმავ მის ექსკლუზიურად WiFi- ს შენარჩუნებას. თუ თქვენ იყენებთ Ethernet– ს, ეს არ არის პრობლემა და შეგიძლიათ უსაფრთხოდ დააყენოთ ბიტრეიტი 320 kbps– ზე.

[ზოგადი] ხანგრძლივობა = 0 # ხანგრძლივობა წამებში, 0 სამუდამოდ ბუფერი სექსი = 1 # ბუფერი, წამებში ხელახლა დაკავშირება = დიახ # ხელახლა დაკავშირება გათიშვის შემთხვევაში

[შეყვანა]

მოწყობილობა = ტელეფონი # bluetooth მოწყობილობის ნიმუშის შეფასება = 44100 # ნიმუშის სიხშირე 11025, 22050 ან 44100 ბიტი PerSample = 16 # ბიტიანი არხი = 2 # 2 = სტერეო

[icecast2-0]

bitrateMode = cbr # მუდმივი ბიტ სიჩქარე ('cbr' მუდმივი, 'abr' საშუალო) # ხარისხი = 1.0 # 1.0 არის საუკეთესო ხარისხის (გამოიყენეთ მხოლოდ vbr– ით) ფორმატი = mp3 # ფორმატი. აირჩიეთ 'vorbis' OGG Vorbis bitrate = 160 # ბიტრატი სერვერი = localhost # ან IP პორტი = 8000 # პორტი IceCast2 წვდომის პაროლი = hackme # წყარო პაროლი IceCast2 სერვერისთვის mountPoint = rapi.mp3 # მთა წერტილი IceCast2 სერვერზე.mp3 ან.ogg სახელი = BluetoothPi

ნაბიჯი 13:

გამოსახულება
გამოსახულება
გამოსახულება
გამოსახულება
გამოსახულება
გამოსახულება
გამოსახულება
გამოსახულება

შემდეგ ჩვენ უნდა შევასრულოთ იგივე ნაბიჯები, როგორც ადრე, რათა შევქმნათ ცარიელი ფაილი სახელწოდებით "darkice.sh".. Sh ფაილი არის.bat ან სურათების ფაილის ექვივალენტი DOS ან Windows– ისთვის. გახსენით Leafpad– ის გამოყენებით, დააკოპირეთ და ჩასვით ქვემოთ მოყვანილი ხაზები და შეინახეთ. თუ თქვენ მიჰყევით ჩემს წინა ინსტრუქციას, შეამჩნევთ ხაზს, რომელიც იწყება Darkice, ოდნავ განსხვავებულად გამოიყურება. მე უნდა ჩავრთო კოდი მარყუჟში, რადგან როდესაც Darkice დაკარგავს bluetooth აუდიო სიგნალს ის შეწყვეტს მუშაობას და ავტომატურად არ განახლდება მაშინაც კი, როდესაც აუდიო გადატვირთულია. მე ამ პრობლემის დიდი ნაწილი გამოვიკვლიე და მიუხედავად იმისა, რომ არსებობს სკრიპტის ავტომატურად გაშვების რთული გზები, როდესაც Bluetooth მოწყობილობა არის დაკავშირებული, Darkice ხანდახან შეჩერდება, როდესაც აუდიო სიგნალი დაიკარგება მაშინაც კი, თუ bluetooth მოწყობილობა ჯერ კიდევ ჩართულია (მაგ. თუ YouTube- ს ხურავთ აპლიკაცია თქვენს ტელეფონზე), ასე რომ, ეს არის უმარტივესი და საიმედო გზა, რათა დარწმუნდეთ, რომ Darkice მუშაობს ყოველთვის, როდესაც Bluetooth აუდიო არის. თუ Darkice უკვე მუშაობს, ბრძანება იგნორირებულია.

#!/bin/bash while:; do sudo/usr/bin/darkice -c /home/pi/darkice.cfg; ძილი 5; შესრულებულია

ნაბიჯი 14:

გამოსახულება
გამოსახულება

შემდეგი ჩვენ გვჭირდება ბრძანების გაშვება, რათა darkice.sh ფაილი იყოს შესრულებადი. გახსენით ტერმინალის ფანჯარა და ჩაწერეთ "sudo chmod 777 /home/pi/darkice.sh" და დააჭირეთ Enter. ახლა დროა დავიწყოთ Icecast2 სერვერის სერვისი. ჩაწერეთ "sudo service icecast2 start" და დააჭირეთ Enter.

sudo chmod 777 /home/pi/darkice.sh

sudo სერვისი icecast2 დაწყება

ნაბიჯი 15:

გამოსახულება
გამოსახულება
გამოსახულება
გამოსახულება
გამოსახულება
გამოსახულება
გამოსახულება
გამოსახულება

შემდეგ ჩვენ უნდა ვუთხრათ Darkice– ს, რომ ის ავტომატურად დაიწყოს Pi– ს ჩატვირთვისას (Icecast2 სერვერი მუშაობს როგორც სერვისი და უკვე ავტომატურად იწყება ჩატვირთვის შემდეგ). პირველ რიგში ჩვენ უნდა შევარჩიოთ რომელი ტექსტური რედაქტორი გამოვიყენოთ. ტერმინალის ფანჯარაში ჩაწერეთ "select-editor" და დააჭირეთ Enter. აკრიფეთ "2" ნანო რედაქტორის შესარჩევად და დააჭირეთ Enter. შემდეგ ჩაწერეთ "crontab -e" და შეიყვანეთ. შემდეგ დააჭირეთ ქვემოთ ისრის ღილაკს ქვემოთ, რომ გადაახვიოთ ბოლომდე ტექსტური ფაილის ბოლოში და დაამატოთ ეს ხაზი "@reboot sleep 10 && sudo /home/pi/darkice.sh". შემდეგ დააჭირეთ Ctrl-X გასასვლელად და ის მოგთხოვთ "შეინახეთ შეცვლილი ბუფერი?". დააწკაპუნეთ Y ღილაკზე დიახ და შემდეგ შეიყვანეთ, რომ დაადასტუროთ ფაილის სახელი ავტომატურად გენერირდება.

აირჩიეთ-რედაქტორი

crontab -e

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

ნაბიჯი 16:

გამოსახულება
გამოსახულება
გამოსახულება
გამოსახულება
გამოსახულება
გამოსახულება

დააწყვილეთ თქვენი ტელეფონი Raspberry Pi– ით დესკტოპის bluetooth ხატის გამოყენებით. მნიშვნელოვანია, რომ თქვენ დააყენოთ Pi- ს bluetooth აღმოჩენის რეჟიმში და შემდეგ დააწყვილოთ თქვენი ტელეფონიდან. თუ თქვენს ტელეფონს აღმოჩენის რეჟიმში აყენებთ და ცდილობთ დააწყვილოთ იგი Pi– დან, მაშინ ის შეიძლება დაუკავშირდეს, მაგრამ მოგცემთ შეცდომას იმის შესახებ, რომ თქვენს ტელეფონში არ არის სერვისები, რომელთა გამოყენება Pi– ს შეუძლია, რაც მართალია. ჩვენ ვცდილობთ გავაგზავნოთ აუდიო Pi- ზე და არა პირიქით. დაწყვილების შემდეგ გაუშვით ეს ბრძანება ტერმინალის ფანჯარაში, რათა გამოაქვეყნოთ თქვენი დაკავშირებული მოწყობილობის bluetooth MAC მისამართი:

sudo bluetoothctl

ნაბიჯი 17:

გამოსახულება
გამოსახულება
გამოსახულება
გამოსახულება
გამოსახულება
გამოსახულება

იმისათვის, რომ Darkice- მ შეძლოს bluetooth მოწყობილობა გამოიყენოს როგორც PCM აუდიო შეყვანა, ჩვენ უნდა შევქმნათ ფაილი "etc" საქაღალდეში სახელწოდებით "asound.conf" (etc/asound.conf). რამდენჯერმე დააწკაპუნეთ ფაილების მენეჯერის ისარზე, რომ გადავიდეთ ძირეულ დირექტორიაში და შემდეგ ორჯერ დააწკაპუნეთ "etc" საქაღალდეზე მის გასახსნელად. გადაახვიეთ ქვემოთ და დააწკაპუნეთ მარჯვნივ ცარიელ სივრცეში და შექმენით ცარიელი ფაილი სახელწოდებით "asound.conf" და დააკოპირეთ და ჩასვით ქვემოთ ხაზები თქვენი მოწყობილობის MAC მისამართით, რა თქმა უნდა ჩემით და შეინახეთ.

pcm.phone {type plug slave.pcm {type bluealsa მოწყობილობა "50: F0: D3: 7A: 94: C4" პროფილი "a2dp"}}

ნაბიჯი 18:

გამოსახულება
გამოსახულება
გამოსახულება
გამოსახულება
გამოსახულება
გამოსახულება

Raspberry Pi– ზე WiFi და Bluetooth რადიოები ერთსა და იმავე ჩიპზეა, ასე რომ, თუ ორივეს გამტარუნარიანობა მაქსიმალურად გაზარდეთ, bluetooth- ის აუდიოს შეუძლია stutter ან გაყინვა. ზოგი მას შეცდომას უწოდებს და ზოგი ამბობს, რომ ეს მხოლოდ აპარატურის შეზღუდვაა. ჩვენ ვცვლით პარამეტრებს, რომლებიც გამოასწორებენ ამას. ამ გამოსწორების გამოქვეყნების დამსახურებაა "pelwell" - ზე https://github.com/raspberrypi/linux/issues/1402 კვლავ გაუშვით sudo pcmanfm ფაილ მენეჯერის გასახსნელად და დაათვალიეროთ/lib/firmware/brcm. ორჯერ დააწკაპუნეთ ტექსტურ ფაილზე "brcmfmac43430-sdio.txt" გასახსნელად და დაამატეთ ეს ხაზები ბოლოში და შეინახეთ.

# ექსპერიმენტული Bluetooth თანაარსებობის პარამეტრები Cypressbtc_mode– დან = 1 btc_params8 = 0x4e20 btc_params1 = 0x7530

ნაბიჯი 19:

გამოსახულება
გამოსახულება
გამოსახულება
გამოსახულება
გამოსახულება
გამოსახულება

დააწკაპუნეთ GUI მენიუს ხატულაზე და აირჩიეთ გამორთვა და გადატვირთვა. თუ ზუსტად მიჰყევით ყველა ამ ნაბიჯს, მაშინ თქვენი Bluetooth აუდიო სერვერი ავტომატურად დაიწყება სადმე 30 წამიდან წუთამდე გადატვირთვის დაჭერის შემდეგ. სანამ დაამატებთ მას Sonos– ში, თქვენ უნდა დაუკავშიროთ თქვენი ტელეფონის bluetooth Pi– ს (უბრალოდ დააწკაპუნეთ მასზე თქვენი ტელეფონის bluetooth პარამეტრებში, რადგან ის უკვე დაწყვილებულია) და დაიწყეთ რაიმე სახის აუდიოს დაკვრა და გაზარდეთ ხმა. დაიმახსოვრეთ, თქვენ არ მოისმენთ აუდიოს თქვენი ტელეფონის დინამიკიდან, რადგან ფიქრობს, რომ ის დაკავშირებულია გარე bluetooth დინამიკთან. ერთი ვიზუალური გზა იმის გასარკევად, იღებს თუ არა Icecast ბლუთუზ აუდიოს Darkice– სგან არის გახსნათ https://192.168.86.107:8000 ვებ ბრაუზერში, თქვენი Pi– ს IP– ით შეიცვალა ჩემით. Icecast ყოველთვის გადის, ასე რომ თქვენ ყოველთვის იხილავთ სტატუსის გვერდს, მაგრამ თუ Darkice ასევე იღებს Bluetooth აუდიოს, თქვენ ასევე იხილავთ სამონტაჟო წერტილს და ნაკადის აღმწერელს. გათიშეთ Bluetooth და განაახლეთ გვერდი და ის კვლავ ცარიელი გახდება.

ნაბიჯი 20:

გამოსახულება
გამოსახულება
გამოსახულება
გამოსახულება

თქვენ უნდა გამოიყენოთ Sonos დესკტოპის კონტროლერის აპლიკაცია Sonos– ში მორგებული ნაკადის დასამატებლად. დააწკაპუნეთ მართვა> რადიოსადგურის დამატება და შეიყვანეთ url იმ ნაკადისათვის, რომელიც ჩემს შემთხვევაში იყო "https://192.168.86.107:8000/rapi.mp3". ასევე შეიყვანეთ სადგურის სახელი და დააწკაპუნეთ OK.

ნაბიჯი 21:

გამოსახულება
გამოსახულება

ჩვენ მიერ დამატებული საბაჟო რადიოსადგურის დასაკრავად აირჩიეთ "რადიო ტუნეინის" და შემდეგ "ჩემი რადიოსადგურები". მარცხენა ორმაგი დაწკაპუნება სათამაშოდ ან მარჯვენა ღილაკი რედაქტირებისთვის ან დაამატეთ სადგური თქვენს Sonos ფავორიტებში.

ნაბიჯი 22:

გამოსახულება
გამოსახულება
გამოსახულება
გამოსახულება

საბაჟო რადიოსადგურის დამატების შემდეგ ის დაუყოვნებლივ იქნება ხელმისაწვდომი თქვენს Sonos აპლიკაციაში. გახსენით აპლიკაცია, შეეხეთ "ჩემი Sonos" ბოლოში, გადაახვიეთ ქვემოთ "სადგურები" და შეეხეთ "იხილეთ ყველა". გადაახვიეთ ქვემოთ, სანამ არ დაინახავთ თქვენს ახლად შექმნილ სადგურს. შეეხეთ მას და დაიწყება თამაში თქვენს არჩეულ ოთახებში. გახსოვდეთ, ̶ თუ თქვენ გათიშულია თქვენი Bluetooth საწყისი PI მაშინ Icecast ნაკადი ̶d̶i̶s̶c̶o̶n̶n̶e̶c̶t̶.̶ თუ თქვენ გადართოთ აუდიო პროგრამები ეს შეიძლება ̶d̶i̶s̶c̶o̶n̶n̶e̶c̶t̶.̶ განაახლონ მოსმენის SONOS ̶y̶o̶u̶'̶l̶l̶ თავიდან სათამაშო აუდიო თქვენი ტელეფონი ერთხელ და დააყენებს ითამაშეთ ̶T̶h̶e̶ ̶S̶o̶n̶o̶s̶ ̶a̶p̶p̶ ̶a̶g̶a̶i̶n̶.̶ <--- ეს დაფიქსირდა; იხილეთ განახლება ქვემოთ. წარმატებებს გისურვებთ და მადლობა რომ კითხულობთ!

ნაბიჯი 23: განახლება: ფიქსირებული შენახვის სტრიმი დაკავშირებულია BLUETOOTH– ის გათიშვისას

ასე რომ, Bluetooth– ის სტრიმინგი მშვენივრად მუშაობდა ამ კონფიგურაციით, გარდა Sonos– ისა, რომელიც გათიშავდა Icecast– ის სერვერიდან, როდესაც Darkice კარგავდა Bluetooth– ის აუდიოს, როგორიცაა აუდიო პროგრამების გადართვისას ან უბრალოდ Bluetooth– ის გათიშვისას, რაც ტკივილს იწვევს, რადგან თქვენ კვლავ მოგიწევთ Bluetooth– ის აუდიო სტრიმინგის მიღება. თქვენ კი შეგიძლიათ დააჭიროთ სათამაშო ღილაკს Sonos აპლიკაციაში.ეს გახდა უზარმაზარი პრობლემა, როდესაც ვცდილობდი აუდიოს სონოს გადატანა ჩემი ტელეფონის WatchESPN აპლიკაციიდან, რომელიც არის სრულ ეკრანზე, ასე რომ მე ვერ მოვახერხე დაკვრის ღილაკს Sonos აპლიკაციაში bluetooth აუდიოს დაწყების შემდეგ, მაგრამ როდესაც დავხურე WatchESPN აპლიკაცია Sonos ნაკადი არ დაიწყება, თუ თქვენ ჯერ არ გაქვთ დაწყებული bluetooth აუდიო! უჰ! თმას ვიწევდი და ვცდილობდი გამომეცადა ელეგანტური გამოსავალი. მე შევეცადე სხვა mp3 დამშიფრავი სახელწოდებით liquidsoap, რომელსაც აქვს შესაძლებლობა გამოაგზავნოს ჩუმად აუდიო, როდესაც ის კარგავს კავშირს, მაგრამ ვერ მოვახერხე მისი მუშაობა Bluealsa– სთან. მე შევეცადე Bluealsa- ს ნაკადი შემეერთებინა dummy soundcard alsa ნაკადის გამოყენებით dsnoop და asym ვცდილობდი Icecast– ის მოტყუებას, ვინაიდან ჯერ კიდევ იყო აუდიო სიგნალი, მაგრამ ალსა ნამდვილად არ გაძლევთ უფლებას მანიპულირება მოახდინოთ bluetooth აუდიოზე ძალიან. შემდეგ დავიწყე გამოძიება ჩამონტაჟებული მენიუს წერტილის გამოყენებით Icecast– ში მდუმარე mp3 ფაილის გამოყენებით, მაგრამ Sonos დაინახავდა, რომ სამთო წერტილის სახელის შეცვლა და გათიშვა. მე ვიყენებდი test.mp3 ფაილს და შემთხვევით დავანიშნე ის როგორც მთავარი სამონტაჟო წერტილის სახელი ერთხელ და შემჩნეული ერთი და შევამჩნიე რომ Sonos უბრალოდ გადავიდა ამ ფაილის დაკვრაზე როდესაც ის გათიშული იყო bluetooth "rapi.mp3" ნაკადიდან. ევრიკა! ის ავტომატურად არ გადაერთვება ბლუთუზის ნაკადზე, როდესაც ის კვლავ ხელმისაწვდომი გახდება, ასე რომ მე მიფიქრია რატომ არ გამოვიყენო ერთი და იგივე წერტილის სახელი? ასე რომ, თქვენ უნდა შექმნათ ჩუმად mp3 ფაილი და დაარქვით მას იგივე სახელი, რაც Darkice mp3 ნაკადი, "rapi.mp3" და მყარი კოდი, როგორც Icecast2 კონფიგურაციის ფაილის მთავარი სამონტაჟო წერტილი. რა ხდება არის ის, რომ როდესაც Sonos კარგავს კავშირს Darkice/bluetooth rapi.mp3 ნაკადთან ის უბრალოდ იწყებს სხვა ჩუმად rapi.mp3 ფაილის მარყუჟს სანამ Bluetooth ნაკადი არ დაბრუნდება ინტერნეტში. ამ გზით თქვენ არ უნდა გქონდეთ bluetooth აუდიო სანამ დაიწყებთ Sonos– ში თამაშს. აი როგორ გავაკეთოთ…

ნაბიჯი 24:

გამოსახულება
გამოსახულება
გამოსახულება
გამოსახულება
გამოსახულება
გამოსახულება

უპირველეს ყოვლისა, ჩვენ უნდა დავაინსტალიროთ ffmpeg მდუმარე mp3 ფაილის შესაქმნელად. თქვენ შეგიძლიათ ჩაწეროთ.wav ფაილი გარე ხმის ბარათიდან და გადააკეთოთ mp3- ზე კოჭლის გამოყენებით, მაგრამ რადგან მე არ მაქვს გარე ხმის ბარათის შეყვანა ამ პროექტისთვის, ffmpeg- ის გამოყენება იყო ყველაზე მარტივი გამოსავალი. გახსენით ტერმინალის ფანჯარა და ჩაწერეთ "sudo apt-get install ffmpeg" და დააჭირეთ Enter:

sudo apt-get დააინსტალირეთ ffmpeg

დაინსტალირების შემდეგ დააკოპირეთ და ჩასვით ეს გრძელი ხაზი დაშიფრეთ ჩუმად mp3 ფაილის ხანგრძლივობა მხოლოდ ერთი წამი:

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

გახსენით ფაილ მენეჯერი როგორც root "sudo pcmanfm" გამოყენებით და დაათვალიერეთ "/etc/icecast2". მარჯვენა ღილაკით დააწკაპუნეთ "icecast.xml"-ზე და გახსენით Leafpad გამოყენებით და ჩასვით ეს ხაზები ზედა "" ხაზის ქვეშ:

/rapi.mp3

შეინახეთ და გადატვირთეთ და ახლა უნდა შეგეძლოთ თქვენი პერსონალური Sonos bluetooth სადგურის დაყენება, სანამ ტელეფონს Bluetooth- თანაც კი არ დააკავშირებთ!

ნაბიჯი 25: დამატება

დამატება
დამატება
დამატება
დამატება
დამატება
დამატება
დამატება
დამატება

მე მინდოდა, რომ Raspberry Pi და 110V AC to 5V DC ელექტრომომარაგება იყოს ერთ საქმეში, ასე რომ ადვილად შემეძლო მისი გადატანა სახლში, მაგრამ გამიკვირდა, რომ ასეთი შემთხვევა არ არსებობს. შემიძლია 3D- ის დაბეჭდვა მოგვიანებით, მაგრამ ამასობაში გადავედი Raspberry Pi- ს სხვა ქეისზე და ვიპოვე თხელი USB კედლის დამტენი და მოკლე კაბელი. დამტენს ჰქონდა რეზინირებული საფარი, რომლის მიხედვითაც ვერ მოვახერხე გამჭვირვალე VHB ლენტი, მაგრამ აღმოჩნდა, რომ ეს იყო სტიკერი, რომელიც ადვილად მოსახსნელი იყო; თუმცა, ამან შექმნა მცირე არდადეგები, რამაც VHB ლენტი ძალიან თხელი გახადა, ასე რომ მე გამოვიყენე velcro.

გირჩევთ: