[Gelöst] Kein Ton mehr nach Pulseaudio Update

  • Hi Leute,


    hab nach dem Update von PulseAudio 12.2 auf die aktuelle Version 14.2 keinen Ton mehr.


    Das kuriose: Nur der VDR scheint das Problem zu haben. Amixer, aplay, speakertest, eigentlich alles andere funktioniert einwandfrei wie vor dem Update. Pulseaudio läuft wie der vdr selbst unter dem gleichen User.


    Ich hab keine Idee mehr, und im Internet find ich nur Probleme wo die Leute generell Probleme haben die sich mit den Alsa Tools auch nachvollziehen lassen. Bei mir will aber nur der VDR nicht mehr...


    Lars

    Asus H170 PRO GAMING, Intel Core i7-6700T, 16GB RAM, GeForce GTX 1050 2GB, Samsung SSD 860 EVO 1TB SSD + 3TB WD Red, Mystique SaTiX-S2 Dual, Archlinux -> VDR4Arch


    "Freunde sind Menschen, die dich mögen obwohl sie dich kennen"

  • Mit softhdcuvid probiert, gleiches BIld. Pulsecontrol läuft auch nicht.


    Hab jetzt wieder auf Pulse 12.2 downgegraded und es läuft wieder. Ist aber keine Dauerlösung wg. kaputten Abhänigigkeiten.

    Asus H170 PRO GAMING, Intel Core i7-6700T, 16GB RAM, GeForce GTX 1050 2GB, Samsung SSD 860 EVO 1TB SSD + 3TB WD Red, Mystique SaTiX-S2 Dual, Archlinux -> VDR4Arch


    "Freunde sind Menschen, die dich mögen obwohl sie dich kennen"

  • vdr running with user root, still the same problem

    Asus H170 PRO GAMING, Intel Core i7-6700T, 16GB RAM, GeForce GTX 1050 2GB, Samsung SSD 860 EVO 1TB SSD + 3TB WD Red, Mystique SaTiX-S2 Dual, Archlinux -> VDR4Arch


    "Freunde sind Menschen, die dich mögen obwohl sie dich kennen"

  • Pulseaudio läuft wie der vdr selbst unter dem gleichen User.

    Läuft pulseaudio denn schon für diesen User, bevor du dich als dieser User einloggst (nicht dass das Spawnen von pulseaudio für den Systemd-Dienst vdr fehlschlägt)? Was passiert, wenn du die Unit für den VDR nachträglich neu startest, wenn du sichergestellt hast, dass pulseaudio bereits für den Nutzer läuft?


    Da die Zugriffsrechte nicht generell für den User beschränkt zu sein scheinen, sondern nur für den durch die Systemd-Unit ausgeführten Prozess: Hat denn der User, unter dem der VDR läuft denn eine aktive Session auf einem TTY, damit Dinge wie die Systemd-Units zu spawnen funktionieren und bekommt der VDR die Umgebungsvariablen (z.B. für das DISPLAY), damit er sich die nötigen Informationen für Dinge wie Pulseaudio holen kann?


    Für den User root darf normalerweise pulseaudio generell nicht beim Socket-Zugriff spawnen: https://github.com/pulseaudio/…pulseaudio.service.in#L17


    Wie sehen denn die vorhanden Sessions und Prozesse auf dem System aus? Zum Vergleich auf meinem yavdr-ansible-System, wenn ich per SSH damit verbunden bin - da sieht man schön die in der Systemd-User-Session für den Nutzer VDR gestartete Pulseaudio-Instanz:

    Bei VDR4Arch gab es vor ein paar Jahren im Bugtracker schon mal die Diskussion, ob man nur X oder eine richtige Session startet (es ist damals bei der schlankeren Lösung geblieben nur den X-Sever zu starten) - vielleicht lohnt es sich da doch, dass man z.B. basierend auf https://github.com/joukewitteveen/xlogin eine "richtige" Session mit Seat auf einem TTY bekommt, bei der u.a. das Setzen von Berechtigungen per ACL/Polkit zuschlagen kann, Systemd Units in der User-Session laufen dürfen usw.

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Oha das musst ich jetzt 2 mal lesen ;)

    Läuft pulseaudio denn schon für diesen User, bevor du dich als dieser User einloggst (nicht dass das Spawnen von pulseaudio für den Systemd-Dienst vdr fehlschlägt)? Was passiert, wenn du die Unit für den VDR nachträglich neu startest, wenn du sichergestellt hast, dass pulseaudio bereits für den Nutzer läuft?

    Gute Frage, der vdr läuft bei mir ja als vollständiger Desktoprechner - Screen 1=Desktop, Screen 2=vdr Ausgabe. D.h. Pulseaudio wird per XDG Autostart gestartet, vermutlich bevor der vdr oben ist... vdr nachträglich (re)starten bringt keine Besserung, es bleibt bei der Fehlermeldung.


    Mit Pulse Version 12 funktioniert alles komischerweise, mit 14 nicht mehr. Ich hab jetzt grade mal den XDG Autostart rausgenommen so dass pulse über die pulseaudio.socket gestartet wird, und zwar erst nachdem der vdr oben ist. Und schon geht auch mit pulse 12 gar nix mehr, nachträgliches starten/stoppen von pulse und/oder vdr bringt dann auch nix mehr. Das deutet doch darauf hin das Pulse in jedem Fall VOR dem vdr gestartet sein muss.


    Ich weiss alles bissl wirr :/


    Hier nochmal der Output des loginctl (Session 3 ist ssh).


    Asus H170 PRO GAMING, Intel Core i7-6700T, 16GB RAM, GeForce GTX 1050 2GB, Samsung SSD 860 EVO 1TB SSD + 3TB WD Red, Mystique SaTiX-S2 Dual, Archlinux -> VDR4Arch


    "Freunde sind Menschen, die dich mögen obwohl sie dich kennen"

  • Gute Frage, der vdr läuft bei mir ja als vollständiger Desktoprechner - Screen 1=Desktop, Screen 2=vdr Ausgabe. D.h. Pulseaudio wird per XDG Autostart gestartet, vermutlich bevor der vdr oben ist... vdr nachträglich (re)starten bringt keine Besserung, es bleibt bei der Fehlermeldung.

    Ok, also ist das keine normale vdr4arch-Installation... - wie sieht da die Reihenfolge zwischen Start der Desktop-Session durch lightdm und dem Start des VDR aus? Läuft der VDR in der Session oder als Systemdienst und bekommt der etwas von den Umgebungsvariablen der Session mit?

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

    The post was edited 1 time, last by seahawk1986 ().

  • Ja wohl wahr, iss nix von der Stange...

    vdr wird als Systemdienst gestartet und zwar vor lightdm. ist aber später oben so wie ich das in der systemd bootchart sehe...

    Asus H170 PRO GAMING, Intel Core i7-6700T, 16GB RAM, GeForce GTX 1050 2GB, Samsung SSD 860 EVO 1TB SSD + 3TB WD Red, Mystique SaTiX-S2 Dual, Archlinux -> VDR4Arch


    "Freunde sind Menschen, die dich mögen obwohl sie dich kennen"

    The post was edited 1 time, last by cooljay032 ().

  • Nabend, unwahrscheinlich aber falls mal jemand ein ähnliches Problem hat: Ich starte den vdr zwischenzeitlich als User-Service bzw. Unit, und damit klappts auch mit dem Ton per Pulseaudio.


    Danke nochmal an seahawk fürs Mitdenken ;)

    Asus H170 PRO GAMING, Intel Core i7-6700T, 16GB RAM, GeForce GTX 1050 2GB, Samsung SSD 860 EVO 1TB SSD + 3TB WD Red, Mystique SaTiX-S2 Dual, Archlinux -> VDR4Arch


    "Freunde sind Menschen, die dich mögen obwohl sie dich kennen"

  • Hi,


    Bei mit steht in ~/vdr/.pulse/client.conf:


    Code
    1. default-server = 127.0.0.1

    und in /etc/pulse/default.pa

    Code
    1. ...
    2. load-module module-native-protocol-tcp auth-ip-acl=127.0.0.1
    3. ...


    . Brauche ich, weil vdr unter dem User vdr läuft, und mein Desktop+PA client unter dem User markus.

    Teste das doch mal.


    ~Markus

    Client1: ASUS P5QC, Dual Core 3G, Cine S2, Ext. Board von TBE, Xubuntu 20.04, VDR 2.6x

    Client2: RPI3

    Server: RPI4, Sundtek SkyTV Dual 2x