Kerhotilamme etuosassa sijaitsevat kauittimet ovat yhdistettyinä
kerhotilamme etuosan ikkunanpuoleisessa kulmanurkassa olevaan mikseriin.
Tämä mikseri saa audiota valmiiksi jo kahdella eri tavalla.

Kerhotilan etuosa
Mikseri ja vahvistin

Toistaaksesi ääntä pitää vaaleanharmaa vahvistin käynnistää, sillä
tämä on ei ole päällä saatuaan sähköt. Tämä onnistuu painamalla kirkkaan
sinisen virtavalon vieressä olevaa virtapainiketta, tämä sammuttaa
virtavalon ja käynnistää vahvistimen. 🙂

Videon (ja Audion) toisto

Projektorin kuvaa kerhotilan etuosassa

HDMI

Kerhotilamme etuosassa mikserin läheisydessä on
HDMI-sisääntulovalitsin, jolla voi valita pelikoneen, Chromecastin ja
vapaan HDMI-kaapelin:n toiston väliltä, ja HDMI-audiosplitter, jolla
erottelemme sisääntulevasta signaalista äänen mikserille ja kuvan
projektorillemme.

HDMI-sisääntulovalitsin

HDMI-sisääntulovalitsimen etuosassa on kolme valoa, joista vain
valitussa sisääntulossa palaa valo. Valittua sisääntuloa voi vaihtaa
painamalla SELECTION-nappia valojen oikealta puolelta.

HDMI-audiosplitteri
HDMI-audiosplitteri

Huom: Chromecastimme ja projektorimme ovat liian viisaita,
projektorin sammuessa tämä lähettää signaalin Chromecastille, ettei
projektori voi toistaa enää videota. Tämä sitten aiheuttaa, ettei
pelkkää audiota voi enää toistaa projektorin sammuttua, ellei
HDMI-audiosplitterin virtakaapelia irroita ja liitä takaisin. Tämä
virtakaapeli on HDMI-audiosplitterin etuosassa vasemmalla puolella,
aivan virtavalon vieressä.

Projektorin ollessa poissa päältä voi silti toistaa videota HDMI:n
kautta, mutta tällöin toistaa pelkästään ääntä ilman kuvaa.

Kerhotilan takaosassa on myös erillinen TV, johon voi yhdistää
HDMI-kaapelilla.

Chromecast

Nykyään suurimmalla osalla älylaitteista on tuki Cast-protokollalle
ja useissa sovelluksissa on mahdollisuus toimia ns. kaukosäätimenä
Chromecast-laitteelle. Meidän kerhotilamme Chromecast on toistaiseksi
nimellä “Livingroom TV”.

Mkchromecast

Tietokoneiden sovelluksilla ei välttämättä ole tukea
Cast-protokollalle, Chrome-verkkoselain ja Spotify ovat ainoita
sovelluksia, joilla tiedän olevan sisäänrakennettu tuki. Tämä ei
kuitenkaan välttämättä haittaa Linux ja macOS tietokoneita, sillä
Mkchromecast-työkalulla on mahdollista ohjata samassa verkossa olevaa
Chromecastia ja toistaa tämän kautta sisältöä.

Komentoja Mkchromecastin
käyttöön

Kuvan lähettäminen videota toistaessa vaatii erikseen
--video lipun. Ilman lippua videosta toistetaan pelkästään
ääntä ilman kuvaa.

Tietääkseni jokaiseen komentoon voidaan liittää
--control lippu, joka antaa ohjata toistoa seuraavilla
napeilla:

  u ("volume Up", äänenvoimakkuuden nosto)
  d ("volume Down", äänenvoimakkuuden lasku)
  p ("Pause", pysäytä toistaminen)
  r ("Resume", jatka toistoa)
  a ("re-Attach", aloittaa toiston uudelleen)
  q ("Quit", lopettaa toistamisen)

Suosittelen tämän sisällyttämään jokaiseen komentoon.

Mkchromecastilla voi toistaa:

Media-tiedostoa

Laitteella olevaa tiedostoa toistaessa tulee antaa -i
lippu, jota seuraa polku toistettavaan tiedostoon.

mkchromecast -i tiedosto.mp3
Omaa ruutuaan

Mkchromecast:lla on --screencast lippu, jolla voi
toistaa oman laitteensa videota ja ääntä.

mkchromecast --screencast
YouTubea ja muiden yt-dlp:n tukemien sivustojen videoita
mkchromecast -y 'https://www.youtube.com/watch?v=dQw4w9WgXcQ'

Huom: Suosittelen korvaamaan youtube-dl:n seuraavalla skriptillä,
sillä youtube-dl:n kehitys on siirtynyt kehittämään yt-dlp forkkia.

#!/bin/sh -eu

yt-dlp --sponsorblock-remove default "$@"

Kirjoittaessani tätä 2024-01-22 ei Mkchromecast:lla ole
sisäänrakennettua tukea yt-dlp:lle, mutta siitä on GitHub:ssa
raportti.

Mitä tahansa mediaa URL:n kautta

Huom: Tämä voi vaatia joidenkin medioiden koodekin kertomisen
-c koodekki lipulla. Testatessani mp4-tiedostoformaatti ei
sitä vaatinut. Myös testatessani Mkchromecast v0.3.9:ia huomasin, että
.webm tiedoston kuvaa ei toistettu, pelkästään ääni.

Esimerkkejä:

Lähde URL, portti ja tiedostotyyppi:
mkchromecast --source-url http://192.168.1.69:8000/pvfm1.ogg -c ogg

Lähde URL, ei porttia, ja tiedostotyyppi:
mkchromecast --source-url http://example.com/name.ogg -c ogg

Lähde URL ilman tiedostotyyppiä:
mkchromecast --source-url http://example.com/name -c aac

Ja kenties muutakin, mkchromecast --help antaa lisää
apua Mkchromecast:n kyvyistä ja sen käytöstä.

Pelkän Audion toisto

Mikseriin AUX-kaapelilla yhdistämisen lisäksi, kerhotilamme
palvelimella on PulseAudio TCP server, johon voi kuka tahansa
verkossamme yhdistää ja soittaa ääntä. Eli ollessasi Wi-Fi:ssämme tai
kaapelilla kiinni jossain reitittimessämme, voi laitteesi löydää
PulseAudion tunnelin äänentoistolaitteelle.

Kuinka lähetät ääntä

PulseAudio ja
zeroconf-discover

Palvelimen mainostaman äänilaitteen löytämiseen tarvitset PulseAudion
(Tämä voi pyöriä PipeWiren päällä, pipewire-pulse:na) ja tämän
zeroconf-discover -moduulin. Linux:lla voivat nämä olla jo asennettuja,
mikäli sinulla on asennettuna PipeWire ja pipewire-pulse audioserverit.
Mikäli sinulla ei ole PipeWireä, vaan pelkkä PulseAudio, niin voit
tarvita lisää toiminnallisuutta, esimerkiksi Debian Linux vaatii myös
paketin pulseaudio-module-zeroconf asennuksen.

Asennettuasi PulseAudio:n ja tämän zeroconf-discover -moduulin, pitää
tämä moduuli ladata. pactl työkalulla onnistuu moduulin
lataus nykyiselle sessiolle komennolla
pactl load-module module-zeroconf-discover. Tämän jälkeen
laitteesi pitäisi löytää palvelimen äänilaite ja luoda
“tunnel.mari.local.alsa_output.usb-Kingston_HyperX_7.1_Audio_00000000-00.analog-stereo”
PulseAudio “sink”. Valitsemalla tämän äänentoiston laitteeksi ja
toistamalla ääntä pitäisi äänen mennä palvelimelle, sieltä mikserille ja
kaiuttimille.

Voit halutessasi asettaa laitteesi suorittamaan
pactl load-module module-zeroconf-discover laitteen tai
PulseAudio:n käynnistyessä tai luoda PipeWire:lle/PulseAudio:lle
asetustiedoston, jossa tämä moduuli ladataan. PipeWire:lle on tämä
PulseAudio:n moduuli myös tehty natiivi-toteutuksena,
“libpipewire-module-zeroconf-discover”.

Tarvittavan moduulin voi automaattisesti ladata toisella näistä
asetustiedostoista:

PipeWire

/etc/pipewire/pipewire-pulse.conf.d/50-zeroconf-discover.conf

tai

~/.config/pipewire/pipewire.conf

context.modules = [
{
    name = libpipewire-module-zeroconf-discover
    args = { }
}
]
PulseAudio

~/.config/pulse/default.pa

.include /etc/pulse/default.pa

load-module module-zeroconf-discover

Huom: Testaamaton, mutta netin ohjeista sovellettu. Arvostaisin
tulevalta testaajalta palautetta.