ubuntuusers.de

Audiogeräte gehen bei Benutzerwechsel verloren

Status: Ungelöst | Ubuntu-Version: Kubuntu 24.04 (Noble Numbat)
Antworten |

Janna

Anmeldungsdatum:
1. Juni 2021

Beiträge: 68

Was ich habe:

  • Kubuntu 24.04 inkl. aller angebotenen Updates

  • Mehrere eingerichtete Benutzer (u. A. einer pro Kunde, damit Geschäftsdaten nicht durcheinander gehen)

  • Mehrere Audiogeräte (u. A. USB-Headset für Telkos und Lautsprecher über S/Pdif)

Was funktioniert: Wenn ich den Rechner hochfahre und mich unter einem Benutzer (egal welchem) einlogge, sind alle Audiogeräte in den Einstellungen sichtbar und funktionieren auch, d. h. ich habe einen Ton. Ich kann auch problemlos zwischen den Audiogeräten wechseln (Ton auf anderes Gerät).

Was jetzt mein Problem ist:

Wenn ich einen schnellen Benutzerwechsel mache (also "Benutzer wechseln" ohne Abmeldung, d. h. die erste Sitzung bleibt offen), kommt es oft vor, dass die Audiogeräte beim neuen Benutzer ganz oder teilweise verschwunden sind, d. h. auch in den Einstellungen nicht mehr auftauchen. Ich habe auch keinen Ton mehr. Mit sudo alsa force-reload tauchen manchmal einige aber nicht alle Audiogeräte wieder auf. Wechsle ich zum ersten Benutzer zurück, sind alle Audiogeräte wieder da.

Fragen:

Woran liegt das, dass Audiogeräte beim Benutzerwechsel verschwinden?

Welche Lösungsmöglichkeiten gibt es?

Frieder108

Avatar von Frieder108

Anmeldungsdatum:
7. März 2010

Beiträge: 9445

Hmmm, also vorneweg, eine Lösung hab ich dir (zumindest momentan) nicht - Frage: kann es sein, dass beim ersten Nutzer die fehlenden Audioprogramme noch offen sind und so die Geräte für weitere Nutzer blockieren?

hakel2022

Anmeldungsdatum:
21. Februar 2022

Beiträge: 3051

Das könnte man ja mal einfach testen per Logut.

Mal wireplumber als Alternative probieren. Wobei ich keine Ahnung habe, was bei KDE Standard ist!

Marantkurz

Anmeldungsdatum:
7. September 2023

Beiträge: 785

Woran liegt das, dass Audiogeräte beim Benutzerwechsel verschwinden?hakel2022 schrieb:

Mal wireplumber als Alternative probieren. Wobei ich keine Ahnung habe, was bei KDE Standard ist!

Nee. (dürfte auch sowieso aktiv sein)

Pipewire läuft momentan userbezogen, das dürfte der Grund sein.

@Janna

Sieh Dir mal die Ausgabe jeweils an:

fuser -v /dev/snd/*

Janna

(Themenstarter)

Anmeldungsdatum:
1. Juni 2021

Beiträge: 68

Marantkurz schrieb:

Pipewire läuft momentan userbezogen, das dürfte der Grund sein.

Das klingt logisch. Wie ändert man das, d. h. wie lässt man pipewire auf alle Benutzer gelten?

fuser ergibt

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
meinuser:~$ fuser -v /dev/snd/*
                     BEN.        PID ZUGR.  BEFEHL
/dev/snd/controlC0:  meinuser   6941 F.... pipewire
                     meinuser   6943 F.... wireplumber
/dev/snd/controlC1:  meinuser   6941 F.... pipewire
                     meinuser   6943 F.... wireplumber
/dev/snd/controlC2:  meinuser   6943 F.... wireplumber
/dev/snd/pcmC0D3p:   meinuser   6941 F...m pipewire
/dev/snd/pcmC1D2p:   meinuser   6941 F...m pipewire
/dev/snd/pcmC2D0c:   meinuser   6941 F...m pipewire
/dev/snd/pcmC2D0p:   meinuser   6941 F...m pipewire
/dev/snd/seq:        meinuser   6941 F.... pipewire

(meinuser heißt in Wirklichkeit anders. Ist aber egal, das ist der Benutzer, mit dem ich angemeldet bin.)

Frieder108 schrieb:

Frage: kann es sein, dass beim ersten Nutzer die fehlenden Audioprogramme noch offen sind und so die Geräte für weitere Nutzer blockieren?

Was meinst du mit fehlenden Audioprogrammen? Programme fehlen keine, nur die Geräte verschwinden.

trollsportverein

Avatar von trollsportverein

Anmeldungsdatum:
21. Oktober 2010

Beiträge: 4661

Der von PipeWire benötigte Wireplumber Service ist ein Systemd User Service. Wenn das Gerät bereits blockiert wird, von einem User, dann kann der andere User das nicht nutzen.

Einfach mal eine Besichtigungstour unter:

/etc/systemd

... machen.

Mehr Lesestoff im Wiki:

Janna

(Themenstarter)

Anmeldungsdatum:
1. Juni 2021

Beiträge: 68

trollsportverein schrieb:

Wenn das Gerät bereits blockiert wird, von einem User, dann kann der andere User das nicht nutzen.

Was in dem Falle aber grober Unfug ist (nicht deine Aussage, sondern die userbezogene Funktionsweise). Der Benutzer, der den Bildschirm hat, benötigt auch die Audioausgabe.

Wie kann man dieses Verhalten ändern?

hakel2022

Anmeldungsdatum:
21. Februar 2022

Beiträge: 3051

Dazu findest du Anleitungen im Netz (Multi-Nutzer). Es war/ist allerdings aufwändig und sollte grundsätzlich nicht gemacht werden. (aus der Pulse Vergangenheit!)

Das Problem scheint auch tiefer zu gehen ...

  • Bugs - Pipe ist neu

  • Hardware abhängig

  • Distri abhängig, Fedora klappt (?)

Die Thematik kenne ich von Pulse auf Server (lange her), Soundserver ist normalerweise immer userbezogen.

Janna

(Themenstarter)

Anmeldungsdatum:
1. Juni 2021

Beiträge: 68

hakel2022 schrieb:

Soundserver ist normalerweise immer userbezogen.

Wer kommt nur auf eine so blöde Idee? Audio muss an den sichtbaren Bildschirm gekoppelt sein, sonst ist es Unsinn.

Du sagst, bei Fedora klappt es. Dann könnte man bei Ubuntu hoffen? Eine große Bastelei will ich lieber vermeiden, sonst gibt es beim nächsten Update Ärger.

Gibt es Alternativen?

Wireplumber deaktivieren?

Zurück zu Pulseaudio?

Oder gibt es einen Workaround, z. B. einen Service nach Benutzerwechsel neu zu starten, so dass der neue User die dann freien Audiogeräte abgreifen kann?

hakel2022

Anmeldungsdatum:
21. Februar 2022

Beiträge: 3051

Du kannst dich korrekt ausloggen/abmelden und dann funktioniert der andere Nutzer wie gewünscht? Also nicht der "schnelle Benutzerwechsel" ... 😎

Fedora übergibt die Geräte angeblich! Man muß natürlich an dieser Stelle auch den Desktop sehen KDE/Gnome, abgesehen vom lieben Wayland.

Kann eigentlich Jemand hier mit Kubuntu das Verhalten reproduzieren?

Bastelei

Man muß Pipe bei der Installaltion systemweit selber compilieren und dann bleibt noch die Hardware.

Da gibt es einige Knackpunkte!

Hoffnung

auf jeden Fall ...

Marantkurz

Anmeldungsdatum:
7. September 2023

Beiträge: 785

@Janna

Zeige mal Ausgaben in den Fall wo Audio bei User X nicht funktioniert. Am Besten User1 funktioniert u. User2 funktioniert nicht. Usernamen entsprechend so setzen hier beim posten.(falls tatsächlich 2(+) User bei der Ausgabe auftauchen)

Nochmal:

sudo fuser -v /dev/snd/*

Habe das (allerdings) mal mit einem aktuellen Mint nachvollzogen. Pipewire/ALSA sollten auf dem selben Stand sein wie bei Dir. Und es funtioniert. User X bekommt jeweils Zugriff.

edit

"sudo" hinzugefügt

Janna

(Themenstarter)

Anmeldungsdatum:
1. Juni 2021

Beiträge: 68

hakel2022 schrieb:

Du kannst dich korrekt ausloggen/abmelden und dann funktioniert der andere Nutzer wie gewünscht? Also nicht der "schnelle Benutzerwechsel" ... 😎

Ja, dann geht's. Beim "langsamen" Benutzerwechsel mit Ausloggen erhält der nächste Nutzer Audio-Zugriff.

Man muß natürlich an dieser Stelle auch den Desktop sehen KDE/Gnome, abgesehen vom lieben Wayland

KDE mit X-Windows. (Wayland nutze ich nicht, da dort Copy&Paste nicht brauchbar funktioniert hat. Ist aber ein anderes Thema.)

Marantkurz schrieb:

Zeige mal Ausgaben in den Fall wo Audio bei User X nicht funktioniert.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
anderer:~$ sudo fuser -v /dev/snd/*
[sudo] Passwort für anderer:
                     BEN.        PID ZUGR.  BEFEHL
/dev/snd/controlC0:  meinuser  13209 F.... wireplumber
                     anderer   25832 F.... wireplumber
/dev/snd/controlC1:  meinuser  13209 F.... wireplumber
/dev/snd/controlC2:  meinuser  13207 F.... pipewire
                     meinuser  13209 F.... wireplumber
/dev/snd/pcmC1D0c:   meinuser  13207 F...m pipewire
/dev/snd/pcmC1D0p:   meinuser  13207 F...m pipewire
/dev/snd/pcmC2D2p:   meinuser  13207 F...m pipewire
/dev/snd/seq:        meinuser  13207 F.... pipewire
                     anderer   25830 F.... pipewire

(Usernamen wieder geändert)

User "meinuser" hat funktionierenden Zugriff auf alle Audiogeräte.

User "anderer" hat keinen Zugriff. Ihm wird allerdings manchmal (wie jetzt gerade) ein HDMI-Audiogerät (vermutlich der Bildschirm, dessen Audio ich aber nicht nutze, da gute Boxen am s/pdif-Ausgang hängen) angezeigt, welches aber nicht funktioniert (Anwendung, z. B. Einstellungen, hängt beim Zugriff). Die übrigen Audiogeräte (also auch alle, die ich nutze) werden nicht angezeigt.

Marantkurz

Anmeldungsdatum:
7. September 2023

Beiträge: 785

/dev/snd/pcmC1D0c:
/dev/snd/pcmC1D0p:
/dev/snd/pcmC2D2p:

Karten: C1 capture und play und C2(D2) play ist ständig belegt, soll das so?

Mehr zu sehen bei User "meinuser":

pavucontrol -t 1
pavucontrol -t 2
pavucontrol -t 4

Momentan das fällt auf.

Janna

(Themenstarter)

Anmeldungsdatum:
1. Juni 2021

Beiträge: 68

Marantkurz

Karten: C1 capture und play und C2(D2) play ist ständig belegt, soll das so?

Keine Ahnung, ob das so soll. Ich weiß auch nicht, welche Geräte dahinter stehen, der Name ist ja doch kryptisch.

pavucontrol ist bei mir nicht installiert. Wenn ich das installieren will, will apt mir die Pakete pipewire-alsa und pipewire-audio deinstallieren. Ich habe das Gefühl, dass das keine gute Idee ist.

Marantkurz

Anmeldungsdatum:
7. September 2023

Beiträge: 785

pavucontrol ist bei mir nicht installiert. Wenn ich das installieren will, will apt mir die Pakete pipewire-alsa und pipewire-audio deinstallieren.

Echt? 😎

pipewire-alsa

Lässt Du auf ALSA (hw:) überhaupt (App gewollt) ausgeben?

Dann siehst Du eben hiermit was sich bei Pipewire tut:

pw-top 

welche Geräte dahinter stehen

Karten sind C0,C1,fortlaufend

Hiermit zu sehen:

aplay -l
arecord -l
Antworten |