Kazalo:
Video: Predvajajte isto glasbo v več sobah: 3 koraki
2024 Avtor: John Day | [email protected]. Nazadnje spremenjeno: 2024-01-30 12:06
Zdravo vsi, Ne vem za vas, ampak rada imam isto glasbo po vsem stanovanju, ne da bi zvok preglasila. Zato sem se po nekaj raziskavah o tej težavi odločil zgraditi več zvočnikov, ki so vsi povezani z wifi na isti glasbeni strežnik, da bi istočasno predvajali isto glasbo v več prostorih in zlasti v kopalnici.
Sistem temelji na tehnologiji GStreamer, ki je osnova neke super programske opreme, kot je VLC, in zvočnikov z možnostjo wifi z uporabo Raspberry Pi.
1. korak: Izdelava zvočnika za kopalnico
Seznam delov:
- zvočnik za kopalnico
- 2W ojačevalnik (deluje na 12V)
- Raspberry Pi Zero (deluje na 5V)
- DAC za Pimoroni Phat
- kartico SD
- gumb ON/OFF
- 12v napajalnik + združljiv vtič
- DC/DC korak navzdol (12v-> 5v)
- električna škatla
- nekaj kablov
Konstrukcija je precej enostavna.
Na elektronski strani sledite temu diagramu ASCII.
- Gumb za vklop/izklop DC vtiča
- Gumb za vklop/izklop DC/DC padajoči Raspberry Pi
- Ojačevalni zvočnik Raspberry Pi Phat DAC
Na mehanski strani izrežite vse potrebne luknje v električni omarici, vse postavite v notranjost in to je vse.
S to tehniko lahko ustvarite vse vrste zvočnikov, ki jih želite.
2. korak: Programska stran
Vsa programska stran temelji na odprtokodnem multimedijskem okviru GStreamer. Uporabil sem samo Linux, vendar obstaja v različnih operacijskih sistemih, zato si predstavljam, da je vse mogoče prilagoditi za druge operacijske sisteme.
Za začetek morate namestiti Raspbian Lite na Pi, PHAT DAC in GStreamer 1.0 z vtičniki "good". V računalniku, ki se uporablja kot glasbeni strežnik, potrebujete isti GStreamer. Teh delov ne bom podrobno opisoval, ker so drugi to naredili bolje od mene. Zadnja stvar, ki jo potrebujete, je, da morata biti Pi in glasbeni strežnik povezana v isto omrežje s kablom ali wifi.
Če želite preveriti, ali je GStreamer pravilno nameščen, lahko uporabite te ukazne vrstice.
Na zvočniku:
$ gst-launch-1.0 udpsrc port = 5000 caps = 'application/x-rtp, media = (string) audio, urna hitrost = (int) 44100, encoding-name = (niz) L16, encoding-params = (niz) 1, kanali = (int) 1, koristna obremenitev = (int) 96 '! rtpL16depay! zvočno pretvorbo! avtoavto umivalnik
Na osebnem računalniku:
$ gst-launch-1.0 audiotestsrc! zvočno pretvorbo! avdio/x-raw, format = "(niz) S16BE", postavitev = "(niz) prepleten", kanali = 1, hitrost = 44100! rtpL16pay! udpsink gostitelj = vrata RASPBERRYPI_IP = 5000
Ko namesto "RASPBERRYPI_IP" vnesete dober naslov IP, bi morali na zvočniku slišati sinusni zvok. To še dolgo ne boste slišali, zato glasnosti ne postavljajte preglasno.
Nekaj razlage: računalnik proizvaja sinusni zvok z uporabo "audiotestsrc", "avdiokonvertiranje! Avdio/x-raw, format =" (niz) S16BE ", postavitev =" (niz) prepleteno ", kanali = 1, hitrost = 44100" pretvori zvok v dobrem formatu, ki ga razume "rtpL16pay", ki ustvari zvočne pakete in na koncu "udpsink" pošlje pakete po protokolu UDP. Na zvočniku je enako, a obrnjeno, "udpsrc" obnovi avdio tok, "rtpL16depay" razpakira in "audioconvert! Autoaudiosink" pretvori zvok tako, da ustreza formatu samodejne zvočne kartice in jo seveda predvaja.
Zdaj, ko osnovne stvari delujejo, je čas, da gremo dlje. Cilj je prestreči zvok aplikacije in jo poslati po omrežju.
- Ustvarjamo ponaredek
$ pactl load-module module-null-sink sink_name = multiHP
- Priključimo vhod na ponarejen izhod (utišamo izbrano aplikacijo (vhod))
$ pacmd list-sinks (seznam izhodov)
$ pacmd list-sink-inputs (vhodni seznam)
$ pacmd move-sink-input %input %output (nadomestite %input in %output z enim od ustreznih seznamov)
- Zvočno kartico smo postavili na maksimum
$ pactl set-sink-volume 0 100%
- Na računalniku preizkusimo, kako obnoviti ponarejen izhod (obnoviti zvok)
$ gst-launch-1.0 pulsesrc naprava = multiHP.monitor! zvočno pretvorbo! avtoavto umivalnik
Ponovno bi morali slišati zvok aplikacije, ki ste jo izbrali.
Super! Zdaj je čas za končne ukazne vrstice. Tu so ukazne vrstice v primeru 2 zvočnikov z zvokom, ki ga predvaja tudi računalnik.
O vsakem govorniku:
$ gst-launch-1.0 udpsrc port = 5000 caps = 'application/x-rtp, media = (string) audio, urna hitrost = (int) 44100, encoding-name = (niz) L16, encoding-params = (niz) 2, koristna obremenitev = (int) 96 '! rtpL16depay! zvočno pretvorbo! avtoavto umivalnik
Na osebnem računalniku:
$ gst-launch-1.0 pulsesrc naprava = multiHP.monitor! zvočno pretvorbo! avdio/x-raw, format = "(niz) S16BE", postavitev = "(niz) prepleten", kanali = 2, hitrost = 44100! rtpL16pay! ime tee = t t. ! čakalna vrsta! udpsink gostitelj =%addrpi1 port = 5000 t. ! čakalna vrsta! udpsink gostitelj =%addrpi2 vrata = 5000 t. ! čakalna vrsta! zvočno pretvorbo! avtoavto umivalnik
3. korak: Zaključek
To navodilo je le prvi korak do popolnega projekta. Samo pojasniti načelo. Zdaj lahko avtomatizirate tako, da naredite nekaj skripta v zagonu Raspberry Pi in v računalniku. Ukaz GStreamer lahko prilagodite glede na vaše potrebe. Osebno sem spremenil svoj prejšnji pouk (BRAND NEW OLD RADIO), da bi ga uporabil kot zvočnik. Za izboljšanje tega večsobnega zvočnega sistema je treba narediti neskončno veliko stvari. Zlasti vsi zvočniki niso sinhronizirani, zato se pri prehodu iz sobe v drugo razlikujete.
Upam, da boste poskusili izboljšati to navodilo.
Če potrebujete podrobnosti, ne oklevajte in postavljajte vprašanja.
Dober žrtev!
Priporočena:
Uporaba več kot 4 motorjev - zlaganje več motornih ščitov: 3 koraki
Uporaba več kot 4 motorjev - zlaganje več motornih ščitov: Naprava za vibrotaktilno senzorično zamenjavo in povečanje (https: //www.instructables.com/id/Vibrotactile-Sens …) prikazuje način, kako zgraditi napravo, ki prevaja senzorično vnos v vibracijske dražljaje. Ti vibracijski dražljaji so p
Predvajajte pesmi z Arduinom z uporabo ADC -ja na PWM na Flyback transformatorju ali zvočniku: 4 koraki
Predvajajte pesmi z Arduinom z uporabo ADC -ja za PWM na Flyback Transformerju ali zvočniku: Pozdravljeni fantje, to je drugi del mojega drugega navodila (to je bilo zelo težko). V bistvu sem v tem projektu uporabil ADC in TIMERS na svojem Arduinu za Pretvorite avdio signal v signal PWM. To je veliko lažje kot moj prejšnji Instructa
MidiMatrix - Predvajajte svoje ime med izvajanjem: 3 koraki
MidiMatrix - predvajajte svoje ime med nastopom: Ne morete zamuditi LED matrice, ki prikazuje sporočila. To je odličen način za predvajanje vašega imena/spletnega mesta/instagrama itd. Poleg prikazovanja pomikajočih se sporočil se ta oblika sinhronizira z uro MIDI, ki prikazuje animacije v 4/4
Predvajajte glasbo z Arduinom!: 5 korakov (s slikami)
Predvajajte glasbo z Arduinom !: V tem navodilu vam bom pokazal, kako predvajam glasbo z Arduino UNO in modulom SD kartice. Uporabili bomo komunikacijo SPI. Začnimo
Predvajajte Mp3-je na 70-letnem predvajalniku plošč-brez stalnih sprememb: 3 koraki
Predvajajte Mp3-je na 70-letnem predvajalniku plošč-brez trajnih sprememb: V bistvu sem vzpostavil mono povezavo med virom MP3 ali medijem po vaši izbiri, računalnikom, kasetofonom, voki-tokijem in neposredno v žični povezavi k zvočniku prek aligatorskih sponk. Kot vedno, vadbeni/demo video: PROSIMO, če