PipeWire (Suomi)

Aiheeseen liittyen
PipeWire/Examples
Tämä artikkeli tai osa vaatii
Suomennosta
.
Huomioita:
Vianmäärityksestä puuttuu muutama otsikko ja käännökset niille. (Keskustele asiasta
Talk:PipeWire (Suomi)#
)
PipeWire
on uusi multimedia runko GNOMEn kehittäjiltä. Pääkehittäjänä toimii Wim Taymans.
PipeWire tukee säiliöitä kuten
Flatpakkia
ja ei turvaudu
käyttäjäryhmien
ääneen
tai
kuvaan
, vaan käyttää ennemminkin PolKit tyyppistä turvamallia kysyen Flatpakkia tai Waylandia oikeudelle nauhoittaa näyttöä tai ääntä.
Asennus
Asenna
pipewire
paketti virallisesta pakettivarastosta.
Pipewire käyttää
Systemd/User
palvelimen hallintaan ja automaattiseen kannan aktivointiin. Katso vastaava
Systemd/User
lisätiedolle käynnistymis käyttäytymisestä ja palvelujen kirjauksista.
Vaihtoehtoisesti voidaan asentaa
pipewire-docs
paketti dokumenteille. Muita paketteja, kuten
pipewire-alsa
,
pipewire-pulse
, ja
pipewire-jack
, ei normaalisti tarvita ellei niitä haluta
käyttää PulseAudio/JACK tilalla
. Saatavilla on myös
lib32-pipewire
ja
lib32-pipewire-jack
multilib tuelle.
Käyttö
WebRTC näytönjakaminen
Valtaosa selaimista aikaisemmin luotti X11 työpöydän (tai sovelluksien) sieppaukseen kun WebRTC:tä käytettiin (esim. googlen Hangoutit); mutta jos käytetään Waylandia, työpöydän jakaminen on periaatteessa rikki, mutta pipewire pystyy antamaan tuen tätä käyttötapausta varten Waylandin alla.
Tämä vaatii
xdg-desktop-portal
ja yhden sen taustaohjelman asennettuna
[1]
. Saatavilla olevat taustaohjelmat:
xdg-desktop-portal-gtk
GNOME:lle.
xdg-desktop-portal-kde
KDE:lle.
xdg-desktop-portal-wlr
Wlroots-pohjainen latoja (esim. Sway tai dwl)
Firefox (84+) tukee tätä kun taas Chromiumissa (73+) täytyy aktivoida
WebRTC PipeWire tuki
avaamalla seuraava osoite chromium välilehdellä:
chrome://flags/#enable-webrtc-pipewire-capturer
Jotta
xdg-desktop-portal-wlr
saadaan toimimaan, täytyy
XDG_CURRENT_DESKTOP
[2]
asettaa:
export XDG_CURRENT_DESKTOP=sway
Video
Vaikka kyseinen ohjelma ei ole vielä tuotantovalmis, on kumminkin turvallista kokeilla sitä vapaasti. Valtaosa sovelluksista, jotka luottavat
GStreamerin
hoitavan esim. kuvan suoratoistoa, näiden pitäisi toimia suorilteen PipeWiren GStreamer lisäosan ansiosta. Sovellukset, kuten esim.
cheese
AUR
, pystyvät siitä syystä jo jakamaan videokuva syötettä käyttäen tätä.
Audio
PipeWirea voidaan käyttää audio palvelimena, joka voidaan rinnastaa PulseAudioon tai JACKiin. Sen tarkoituksena on korvata molemmat PulseAudio ja JACK, tarjoamalla PulseAudio-yhteensopiva palvelin toteutus ja ABI-yhteensopivat kirjastot JACK asiakasohjelmille. Katso
tämä blogi kirjaus
lisätiedolle.
ALSA/Legacy sovellukset
Asenna
pipewire-alsa
reitittääksesi kaikki sovellukset käyttäen ALSA APIa PipeWiren kautta.
PulseAudio asiakasohjelmat
Asenna
pipewire-pulse
. Normaalisti enempää työtä ei tarvita, sillä
pipewire-pulse.socket
pitäisi olla aktivoituna suoraan paketista. Jos PipeWire ei toimi oikein Järjestelmän käynnistyttyä, kokeile myös käyttäjäpalveluiden
pipewire-pulse.service
ja
pipewire.service
aktivointia. Katso
Systemd/User
.
Kirjaudu uudelleen sisään tai käynnistä uudelleen nähdäksesi vaikutuksen.
Tarkistaaksesi, että korvaava paketti toimii, suorita seuraava komento ja tarkista ulostulo:
$ pactl info
...
Server Name: PulseAudio (on PipeWire 0.3.16)
...
JACK asiakasohjelmat
Asenna
pipewire-jack
ja käytä
pw-jack
komentoa, jotta JACK asiakasohjelmat käynnistyvät yhteensopivien kirjastojen kanssa alkuperäisten sijasta
libjack*
:
pw-jack
application
Bluetooth laitteet
PipeWire käsittelee Bluetooth audiolaitteita, jos
pipewire-pulse
paketti on asennettuna. Erityisemmin, mediatilan taustaprosessi tarkastelee
/etc/pipewire/media-session.d/with-pulseaudio
, ja aktivoi sen
bluez5
moduulin automaattisesti, jos tiedosto on olemassa.
Käytä PipeWirea alkuperäisen JACKin päällä
PipeWire voi myös pyöriä JACK asiakasohjelmana alkuperäisen JACK taustaprosessin päällä jos näin halutaan. Katso
JACK ja PipeWire
lisätiedolle.
Vianmääritys
Rätisevä ääni Source Engine pohjaisissa peleissä
Oletus pituus äänipuskurille (joka on käytännössä ääniviive) on 0.025 sekunttia. Joillekkin komponenteille, tämä pituus on liian pieni, joten tälläistä rätinää voi ilmetä. PulseAudiolla ei ole tätä ongelmaa, koska se nostaa puskurin kokoa automaattisesti, kun puskurin xrun havaitaan. PipeWire ei tee tätä ja ei välttämättä ikinä tulekkaan tekemään tätä. Tapa millä tämän voi korjata on edelleen meneillään.
Tällä hetkellä, toimiva väliaikainen korjaustapa on avata pelin sisäinen konsoli ja painamalla
`
nappia (nappi joka on vasemmalla puollella 1:stä) ja kirjoittamalla konsoliin
snd_mixahead 0.03
. Arvoa kannattaa itse kokeilla, mikä toimii parhaiten.
Aiheeseen liittyvä ongelma:
https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/401
Lähde:
https://csgoguru.com/improve-your-csgo-sound-settings/
Pipewire ei tunnista mikrofonia
pipewire-media-session
ei tunnista ALSA PCM laitteita oletukselta. Lisää tämä sen käynnistysasetuksiin pipewiren config tiedostossa:
/etc/pipewire/pipewire.conf
...
exec /usr/bin/pipewire-media-session -e alsa-pcm
...
Käynnistä pipewire uudelleen ja tarkista saatavilla olevat laitteet:
$ pw-record --list-targets
Available targets ("*" denotes default): 62
	58: description="Built-in Audio" prio=1872
	60: description="Built-in Audio" prio=2000
*	62: description="Built-in Audio (Loopback PCM)" prio=1984
Ei ääntä Bluetooth laitteessa
7.12.2020 lähtien, jos ääntä ei ole kun Bluetooth laite on yhdistetty, täytyy vaihtaa oletus "nieluun" ja/tai siirtää nielun syöte oikeaan nieluun. Käytä
pactl set-default-sink
asettaaksesi nielun ja
pactl list sinks
listataksesi saatavilla olevat nielut. Tämä voidaan automatisoida
udev
kanssa käyttäen vastaavaa skriptiä kuin
tämä
.
Katso tämä
Reddit keskustelu
syvemmälle keskustelulle asiasta. Skriptin tekijän mukaan, kuuloke profiililla (HSP) saattaa vielä olla ongelmia.
Katso myös
Wiki
— PipeWire Wiki Freedesktop GitLab
Pipewire Päivityksen Blogi Viesti
— Blogi viesti tammikuulta 2018, josta näkyy Pipewiren tilanne siihen aikaan
PipeWiren Loppukesän Päivitys 2020
— Blogi viesti syyskuulta 2020