Sadržaj:
Video: Reproducirajte istu glazbu u više soba: 3 koraka
2024 Autor: John Day | [email protected]. Zadnja promjena: 2024-01-30 09:36
Pozdrav svima, Ne znam za vas, ali volim imati istu glazbu po cijelom stanu, a da ne pojačavam glas. Stoga sam nakon malo istraživanja o ovom problemu odlučio izgraditi nekoliko zvučnika koji su svi povezani wifi -jem na isti glazbeni poslužitelj kako bi se istovremeno reproducirala ista glazba u nekoliko soba, a posebno u kupaonici.
Sustav se temelji na GStreamer tehnologiji koja je osnova nekog izvrsnog softvera poput VLC -a i na zvučniku s mogućnošću WiFi -a koji koristi Raspberry Pi.
Korak 1: Izgradnja zvučnika za kupaonicu
Popis dijelova:
- zvučnik za kupaonicu
- pojačalo od 2 W (radi na 12V)
- Raspberry Pi Zero (radi na 5V)
- PAC -ov Pimoroni Phat
- SD karticu
- tipku za uključivanje/isključivanje
- adapter za napajanje 12v + kompatibilni utikač
- DC/DC step-down (12v-> 5v)
- električna kutija
- neki kabeli
Konstrukcija je prilično jednostavna.
S elektroničke strane slijedite ovaj ASCII dijagram.
- Gumb za uključivanje/isključivanje DC utikača
- Gumb za uključivanje/isključivanje DC/DC silazno Raspberry Pi
- Raspberry Pi Phat DAC zvučničko pojačalo
S mehaničke strane izrežite sve potrebne rupe u električnoj kutiji, stavite sve unutra i to je sve.
Pomoću ove tehnike možete stvoriti sve vrste zvučnika koje želite.
Korak 2: Sa strane softvera
Sva softverska strana temelji se na otvorenom multimedijskom okviru, GStreamer. Koristio sam samo Linux, ali postoji na različitim OS -ima, pa pretpostavljam da se sve može prilagoditi za druge OS.
Za početak, morate instalirati Raspbian Lite na Pi, PHAT DAC i GStreamer 1.0 s "dobrim" dodacima. Na računalu koje se koristi kao glazbeni poslužitelj potreban vam je isti GStreamer. Neću detaljno opisivati te dijelove jer su drugi to učinili bolje od mene. Posljednje što je potrebno je da Pi i glazbeni poslužitelj moraju biti povezani na istu mrežu kabelom ili wifi -jem.
Da biste provjerili je li GStreamer ispravno instaliran, možete koristiti te naredbene retke.
Na zvučniku:
$ gst-launch-1.0 udpsrc port = 5000 caps = 'application/x-rtp, media = (string) audio, clock-rate = (int) 44100, encoding-name = (string) L16, encoding-params = (string) 1, kanali = (int) 1, korisni teret = (int) 96 '! rtpL16depay! audiokonverzija! autoaudio sudoper
Na računalu:
$ gst-launch-1.0 audiotestsrc! audiokonverzija! audio/x-raw, format = "(niz) S16BE", izgled = "(niz) isprepleten", kanali = 1, brzina = 44100! rtpL16pay! udpsink host = RASPBERRYPI_IP port = 5000
Nakon što postavite dobru IP adresu umjesto "RASPBERRYPI_IP", trebali biste čuti zvuk sinusoida na zvučniku. To nije nešto što ćete dugo voljeti čuti, stoga nemojte pojačati glasnoću.
Neka objašnjenja: računalo proizvodi sinusni zvuk koristeći "audiotestsrc", "audiokonvertiranje! Audio/x-raw, format =" (niz) S16BE ", izgled =" (niz) isprepleten ", kanali = 1, brzina = 44100" pretvori zvuk u dobrom formatu koji razumije "rtpL16pay" koji stvara audio pakete i na kraju "udpsink" šalje pakete koristeći UDP protokol. Na zvučniku je isti, ali obrnut, "udpsrc" obnavlja audio tok, "rtpL16depay" raspakira i "audiokonvertiraj! Autoaudiosink" pretvara zvuk u format automatske zvučne kartice i naravno, reproducira ga.
Dakle, sada kada osnovne stvari funkcioniraju, vrijeme je da idemo dalje. Cilj je presresti zvuk aplikacije kako bi se poslao putem mreže.
- Stvaramo lažni ispis
$ pactl load-module module-null-sink sink_name = multiHP
- Priključujemo ulaz na lažni izlaz (utišajte odabranu aplikaciju (ulaz))
$ pacmd list-sink (popis izlaza)
$ pacmd list-sink-inputs (popis ulaza)
$ pacmd move-sink-input %input %output (zamijenite %input i %output jednim od odgovarajućih popisa)
- Zvučnu smo karticu stavili na maksimum
$ pactl set-sink-volume 0 100%
- Testiramo na računalu način oporavka lažnog izlaza (oporavak zvuka)
$ gst-launch-1.0 pulsesrc uređaj = multiHP.monitor! audiokonverzija! autoaudio sudoper
Trebali biste ponovno čuti zvuk aplikacije koju ste odabrali.
Sjajno! Sada je vrijeme za posljednje naredbene retke. Ovdje su naredbene linije u slučaju 2 zvučnika sa zvukom koji reproducira i računalo.
O svakom govorniku:
$ gst-launch-1.0 udpsrc port = 5000 caps = 'application/x-rtp, media = (string) audio, clock-rate = (int) 44100, encoding-name = (string) L16, encoding-params = (string) 2, korisni teret = (int) 96 '! rtpL16depay! audiokonverzija! autoaudio sudoper
Na računalu:
$ gst-launch-1.0 pulsesrc uređaj = multiHP.monitor! audiokonverzija! audio/x-raw, format = "(niz) S16BE", izgled = "(niz) isprepleten", kanali = 2, brzina = 44100! rtpL16pay! ime tee = t t. ! red! udpsink host =%addrpi1 port = 5000 t. ! red! udpsink host =%addrpi2 port = 5000 t. ! red! audiokonverzija! autoaudio sudoper
Korak 3: Zaključak
Ovo uputstvo samo je prvi korak do potpunog projekta. Trebalo je samo objasniti princip. Sada se možete automatizirati tako da napravite neku skriptu na pokretačkom sustavu Raspberry Pi i na računalu. Naredbu GStreamer možete prilagoditi ovisno o svojim potrebama. Osobno sam izmijenio svoj prethodni instruktor (NOVI STARI RADIO) kako bih ga koristio kao zvučnik. Postoji beskonačan broj stvari koje treba učiniti kako bi se poboljšao ovaj zvučni sustav s više soba. Konkretno, svi zvučnici nisu sinkronizirani, pa imate neke varijacije pri prelasku iz sobe u drugu.
Nadam se da ćete pokušati poboljšati ovu uputu.
Ne ustručavajte se postavljati pitanja ako trebate detalje.
Dobar tinker!
Preporučeni:
Reproducirajte video zapis s ESP32: 10 koraka (sa slikama)
Reproducirajte video s ESP32: Ove upute pokazuju nešto o reprodukciji videa i zvuka s ESP32
Uzgoj više salate na manje prostora ili Uzgoj salate u svemiru, (više ili manje) .: 10 koraka
Uzgoj više salate na manje prostora ili … Uzgoj salate u svemiru, (više ili manje) .: Ovo je profesionalna prijava na natječaj Growing Beyond Earth, Maker, predana putem Instructables. Ne mogu biti više uzbuđen što ću dizajnirati za proizvodnju svemirskih usjeva i objaviti svoj prvi Instructable. Za početak, natječaj nas je zamolio da
Korištenje više od 4 motora - slaganje više štitnika motora: 3 koraka
Korištenje više od 4 motora - slaganje više štitnika motora: Vibrotaktilni senzorski uređaj za zamjenu i povećanje senzora (https: //www.instructables.com/id/Vibrotactile-Sens …) pokazuje način izgradnje uređaja koji prevodi senzorni unos u vibracijske podražaje. Ti vibracijski podražaji su p
Napravi sam zvuk za više soba: 15 koraka
Napravi sam zvuk za više soba: Hej! svi, moje ime je Steve.Danas ću vam pokazati kako napraviti Wifi audio streaming s vrlo malim brojem dijelova i bolji je od chrom cast audio, a možete ga koristiti kao višesobno postavljanje i može spojiti do 10 zvučnika Kliknite ovdje da vidite
Reproducirajte glazbu s Arduinom!: 5 koraka (sa slikama)
Reproducirajte glazbu s Arduinom !: U ovom uputstvu pokazat ću vam kako sviram glazbu koristeći Arduino UNO i modul SD kartice. Koristit ćemo SPI komunikaciju. Počnimo