upmix und low-pass Filter für Subwooferausgang (USB Soundkarte)

  • Hallo,
    ich verwende an meine RPI2 eine 5.1 USB Soundkarte.
    Bei normaler Stereowiedergabe (2.0 Quelle) wird dabei kein Signal/Ton an den Subwooferausgang geschaltet, das würde ich gerne ändern.
    Hierzu bin ich nach dieser Anleitung vergangen, welches über die Alsa-Konfiguration das Signal für links und rechts filtert und an den Sub-Kanal ausgibt.
    Die "asound.conf" hab ich wie in der Anleitung angelegt:


    der Subwoofer bleibt jedoch stumm :/
    Wenn ich die Lautsprecher über "speaker-test" ansteuere bekomme ich folgende Fehlermeldung:

    Ich versteh auch nicht warum versucht wird surround51 über die interne Soundkarte auszugeben, dort gibt es das Device "surround51" aber natürlich nicht.
    Das Device "surround51" ist klar der USB-Soundkarte zugeordnet:

    Gruß,
    H.

  • upmix und low-pass Filter für Subwooferausgang (USB Soundkarte)? Schau mal ob du hier fündig wirst!

  • surround51 ist nur so eine Art virtuelles Gerät, das normalerweise auch für Stereosoundkarten zur Verfügung steht. Ohne weitere Angaben greift es im Endeffekt einfach auf die Defaultsoundkarte zu. Ohne weitere konfiguration wäre das das erste Gerät der ersten Soundkarte bzw. in Alsa-Schreibweise "hw:0,0". Überprüfen kannst du das anhand der Ausgabe von »aplay -L«. In meinem Desktop-PC habe ich zB den Onboardsound, der über 8 Kanäle verfügt, also 5.1 unterstützt und eine recht Soundkarte, die aber nur über 2 Kanäle verfügt und bei mir sieht es so aus

    Code
    $ aplay -L | grep surround51
    surround51:CARD=PCH,DEV=0
    surround51:CARD=Juli,DEV=0


    (PCH ist der Onboardsound und Juli heißt die Stereosoundkarte)

    Auf dem Raspberry ist aber vieles anders und ich könnte mir gut vorstellen, dass für den Onboardsound des RPi, der bei dir ja erst einmal der Default ist, kein surround51 definiert ist - daher also vermutlich die Fehlermeldung.


    Aber mit deiner Ausgabe von »aplay -l« sollte sich das schon korrigieren lassen, fürs erste sollte es genügen den Slave von 21to51 zu korrigieren:

    Code
    
    
    pcm.upmix_21to51 {
      type plug
      slave.pcm "hw:Device"
      slave.channels 6
      ttable {
    


    EDIT:
    noch eine kleine Ergänzung. Du kannst natürlich auch surround51 verwenden, musst aber auch das Audiogerät angeben. Du könntest statt hw:Device also auch

    Code
    slave.pcm "surround51:Device"


    schreiben.
    "Device" ist übrigens der Name der USB-Soundkarte (laut aplay -l). Statt dem Namen könnte man auch die Nummer verwenden, also hier 1 (card 1)
    - hw:1
    - surround51:1
    aber die Nummern können sich ändern, bei manchen Hardwarekonstellationen sogar zufällig von einem Systemstart zum nächsten, während die Namen normalerweise immer gleich bleiben. Zusätzlich angeben kann man auch das Gerät hw:1,0 oder hw:Device,0 aber die USB-Soundkarte verfügt ohnehin nur über device 0, was der default ist und daher kann man das auch weglassen.

    Einmal editiert, zuletzt von smutbert (29. November 2016 um 13:58)

  • Hallo smutbert,
    vielen Dank für deine Hilfe.

    Zitat

    Auf dem Raspberry ist aber vieles anders und ich könnte mir gut vorstellen, dass für den Onboardsound des RPi, der bei dir ja erst einmal der Default ist, kein surround51 definiert ist - daher also vermutlich die Fehlermeldung.


    Du hast recht, die Onboardsoundkarte hat kein surround51.

    Ich hab den Slave 21to51 korrigiert:

    Code
    pcm.upmix_21to51 {
     type plug
     slave.pcm "hw:1,0"
     slave.channels 6
     ttable {
    


    aber der Subwoofer bleibt leider immer noch stumm.

    Ich hab die Anleitung bzw. den Aufbau von Alsa aber noch nicht so recht verstanden, in der Annletung steht z.B:

    Zitat

    If you now start alsaplayer -d upmix_20to51 [mysong]or specify upmix_20to51 as default ALSA plugin for stereo output in your favourite audio player you should hear the upmixed, filtered sound from your speakers.


    Bedeutet doch eigentlich ich muss in meinem Player (z.B. Squeezebox) "upmix_20to51" als Ausgabegerät auswählen, welches dann mein Skript abarbeitet und auf dem definierten slave.pcm (surround51) unter "pcm.upmix_21to51" ausgibt?

    Bei meinem Player gibt es aber kein Ausgabe welche "upmix_20to51" heißt (ich hab daher immer surround51 genommen). siehe:
    h6etdq83.png
    (Bei Kodi werden mir nicht mal die verschieden Devices angezeigt, sonder ich kann nur zwischen der USB-Soundkarte und der Onboardsoundkarte wählen, also nur das was bei "aplay -l" angezeigt wird)
    bei "aplay -L" wird mir allerdings "upmix_20to51" angezeigt:

    Muss ich "upmix_20to51" vielleicht noch irgendwo als Gerät registrieren oder als Default setzen, damit ich es auswählen kann?

    Gruß,
    H.


  • […]
    Bei meinem Player gibt es aber kein Ausgabe welche "upmix_20to51" heißt (ich hab daher immer surround51 genommen). […]

    Das bedeutet, dass das upmix_20to51 und was du sonst noch geschrieben hast von diesem Player gar nicht verwendet wird. Ich kenne den Player nicht und weiß daher auch nicht ob der es anzeigen sollte.

    Wenn ich also zur ganz allgemeinen Orientierung einen Link zu einem Wiki-Artikel posten darf, dessen Urheber ich bin:
    https://wiki.debianforum.de/Audiokonfiguration
    Da gibt es auch ein Kapitel darüber, dass nicht alle selbst definierten „Geräte“ von vornherein in allen Anwendungen angezeigt werden
    https://wiki.debianforum.de/Audiokonfigura…_in_Anwendungen
    (ich hab aber keine Ahnung ob das bei deinem Player zutrifft)


    Zum Testen würd ich ohnehin eine möglichst simple Anwendung hernehmen. Du suchst dir also zB eine Stereo-Wav-Datei und spielst sie so ab

    Code
    $ aplay -D upmix_20to51 /home/harald/meine_wav_Datei.wav


    dann siehst du gleich ob es funktioniert oder wir erkennen mit etwas Glück an der Fehlermeldung wo es hängt.


    Mit mehr als Stereo hab ich jedenfalls so gut wie keine Erfahrung, aber ich weiß, dass diese ladspa-Plugins unter Alsa gerne Ärger verursachen. Pulseaudio dagegen sollte alles mitbringen um ohne weitere Kunststücke und Umwege einen Subwoofer zu befeuern. Vielleicht willst du also Pulseaudio zumindest in Erwägung ziehen.

  • Danke für deine Ausfühlriche Antwort,
    die Artikel haben mich auf eine Idee gebracht :)

    Mit:


    und deinem Vorschlag:

    Code
    
    
    pcm.upmix_21to51 {
     type plug
    slave.pcm "surround51:Device"
     slave.channels 6
     ttable {
    


    hab ich es hinbekommen.
    Ist zwar nicht schön aber jetzt wird alles was ich über das "Default Gerät" laufen lasse als Input herkommen, SUB-out generiert und über "surround51" ausgegeben ;)
    Ich denke auch das die selbst definierten Kanäle einfach nicht von meinen Playern angezeigt werden (Kodi listet mir eh nur magere 3 Devices des USB-Soundkarte zur Auswahl, der Squeezebox-player wenigstens alle vorkonfigurierten).

    Leider hat sich jetzt schon das nächste Problem aufgetan, ich kann das ALSA-Gerät (USB_Audio) nur mit mit einem meiner Player verwenden, Wenn ich es in Kodi als Ausgabe definiert habe steht im Log des Squeezebox-player:

    Code
    [18:07:13.904648] test_open:124 playback open error: Device or resource busy
    [18:07:13.905988] output_init_common:373 unable to open output device


    Wenn ich es im Squeezebox-player als Ausgabe definiert habe und danach in Kodi als Ausgabe einstellen will, startet Kodi neu und zeigt mir nur noch die Devices der Onboardsoundkarte als mögliches Ausgabe..
    Ist das normal?

    Von Pulseaudio hab ich nun schon einiges gelesen, werd ich mals ausprobieren :) weißt du zufällig ob ich dort einem Device/Soundkarte mehreren Playern zuweisen kann?


    Gruß,
    H.


    EDIT:
    Nach diesem Thread im Kodiforum (gleiches Problem) scheint es wohl nicht möglich zu sein, mit zwei Programme ein Alsa-Gerät gleichzeitig anzusprechen.
    Dafür aber mit Pulsaudo :) , nur ist das wiederum (laut dem Link) nicht mit Squeezebox kompatibel... es ist zum Harre ausreißen :wallbash:

    Einmal editiert, zuletzt von Harald654 (29. November 2016 um 19:40)

  • In Alsa kannst du mit dmix mehrere Player auf eine Soundkarte zugreifen lassen. dmix kann allerdings nur direkt auf die Hardware zugreifen, was bedeutet, dass du im Endeffekt statt surround51:Device so etwas verwenden müsstest

    Kodi kenne ich nur vage aus der Zeit als es noch xbmc hieß. Soweit ich mich erinnere konnte man dort nur direkt die Hardware auswählen, was bedeuten würde, dass kodi zumindest freiwillig nicht auf die von dir definierten Geräte verwenden will.
    Eventuell kannst du in die kodi-Konfiguration so etwas wie "<audiodevice>ALSA:upmix_20to51</audiodevice>" eintragen oder falls der ton dort meist schon mit 6 kanälen vorliegt ein andere Gerät definieren, dass letztendlich über den obigen "pcm.dmixer" wiedergibt. Die Suchbegriffe kodi und dmix könnten dich auch weiterbringen, weil wie gesagt, mit kodi hab ich genausowenig am Hut wie mit Surround.

    Allerdings kann ich mir vorstellen wieso kodi bevorzugt direkt auf die Hardware zugreift:
    Erstens kann es so leicht feststellen welche Formate, also zB wie viele Kanäle, die Hardware unterstützt und zweitens ist es nur bei der direkten Wiedergabe über Hardware, ohne Alsa-Plugins wie dmix, plug, etc. möglich einen komprimierten/kodierten Audiodatenstrom unverändert (passthrough) über einen digitalen Ausgang (HDMI, optisches oder elektrisches S/PDIF) auszugeben, auf dass die Daten dann erst von einem daran angeschlossenen Gerät, zB einem AV-Receiver, dekodiert werden.


    Mit Pulseaudio kann das mit den mehreren Anwendungen natürlich auch.
    (Würde mich sehr wundern, wenn Pulseaudio nicht mit squeezebox harmoniert. Ohne zu wissen welchen Link du meinst behaupte ich einmal ganz frech, dass wir das hinbekämen.
    edit: hab jetzt den Link entdeckt und überfliege es gerade...
    edit nummer 2: ich glaube noch immer, dass wir squeeze und pulseaudio hinbekommen können)

    Einmal editiert, zuletzt von smutbert (29. November 2016 um 19:51)

  • Hallo smutbert,

    OK, hast mich überzeugt! Dann werd ich pulsaudio mal ausprobieren :)
    Weißt du wie es eig. mit dem Recurcenhunger von Pulsaudio aussieht?
    (Mit Sqeezbox, Kodi und FHEM hab ich nun doch schon einiges auf dem kleine RPi2 am laufen und will die Aussslastung ungern noch mehr erhöhen)

    Gruß,
    H.

  • Pulseaudio kann man genauso konfigurieren wie auch Alsa, man kann also Samplerate und -format einstellen, was natürlich Auswirkungen auf den Resourcenverbrauch hat, genauso wie man die Puffergröße (größerer Puffer mehr Latenz, aber weniger Rechenlast) und den Resamplingalgorithmus einstellen kann.

    Abgesehen von diesen Dingen, meine ich, dass man - falls Pulseaudio eine höhere Belastung darstellt - davon in der Praxis nichts bemerkt.

  • so :) hab jetzt mal Pulseaudio installiert

    Code
    apt-get install pulseaudio

    Bei Kodi kann ich jetzt neben "HDMI" und "Analog" als Devices "ALSA: PulseAudio Sound Server" und "ALSA: payback/recording throw PulseAudio Sound Server" auswählen (Die USB Soundkarte wird nicht mehr aufgerührt). Wähle ich eins der beiden PulseAudio Devices wird der Tom nun über die USB Sounkarte ausgeben. (soweit so gut).
    Um nun den SUB-Out zu aktivieren, habe ich in "/etc/pulse/daemon.conf" bei folgenden Punkten die Auskommentierung entfernt und auf yes bzw. auf die entsprechende Anzahl gestellt:

    Code
    enable-remixing = yes
    enable-lfe-remixing = yes
    default-sample-channels = 3

    Wenn ich nun einen der beiden PulseAudio Devices in Kodi auswähle und etwas abspiele passiert erstmals nichts (der Wiedergabebalken bleibt bei 00:00/00:00 stehen) und nach eine weile wird dann der Ton (manchmal) über die Onboardsoundkarte ausgegeben oder es passiere gar nichts.

    Was auch komisch ist, der Pulsaudio Daemon scheint garnicht aktiv zu sein, beim beenden oder Abfrage der möglichen Ausgaben kommt:

    Code
    xbian@RPi2 ~ $ pulseaudio --check
    xbian@RPi2 ~ $ pacmd list-sources | grep -e device.string -e 'name:'
    No PulseAudio daemon running, or not running as session daemon.
    xbian@RPi2 ~ $ pulseaudio -k
    E: [pulseaudio] main.c: Failed to kill daemon: No such process


    Nach dem starten des Demon funktioniert dann zwar die Abfragen:

    Code
    xbian@RPi2 ~ $ pulseaudio -D
    xbian@RPi2 ~ $ pulseaudio --check
    
    
    xbian@RPi2 ~ $ pacmd list-sources | grep -e device.string -e 'name:'
           name: <alsa_output.platform-soc_audio.analog-stereo.monitor>
                   device.string = "0"
    xbian@RPi2 ~ $ pulseaudio -k


    das Verhalten ändert sich aber nicht :s

    PS: ich verwende übrigens nicht Raspbian sondern Xbian, welches auf Debian Jessie basiert (hätte ich vielleicht schon früher mal schreiben sollen)

    Gruß,
    H.

    Einmal editiert, zuletzt von Harald654 (30. November 2016 um 13:24)

  • Als welcher Benutzer wird denn kodi ausgeführt?

    Per Default startet Pulseaudio nämlich als benutzereigener Daemon. Hättest du also nun zB einen Benutzer kodi, einen für squeeze und xbian, startet jeder dieser Benutzer seine eigene Pulseaudioinstanz und nur eine davon kann tatsächlich auf die Hardware zugreifen.
    Ich habe es auf einem ähnlichen System so gemacht, dass ich Pulseaudio einmal als systemweiten Daemon starte, wenn ich dich dazu wieder hieher verweisen darf:
    https://wiki.debianforum.de/Audiokonfigura…emweiter_Daemon

    Nach einem Neustart sollte du mit

    Code
    $ pactl list card short
    $ pactl list sinks short


    eine Liste der Soundkarte bzw. "Senken" erhalten.
    (sources sind die Audioquellen, also Aufnahmegeräte die Audiodatenströme liefern wie Mikrofoneingänge - das ist vermutlich nicht das was du willst)

  • Hallo smutbert,

    ahh ok, das erklärt natürlich warum ich über ssh mit "pulseaudio -k" pulsaudio nicht beenden kann und mit "pulseaudio -D" starte ich dann wohl eine neue Instanz von Puslaudio.
    Die Befehle "pulseaudio --check", "pulseaudio --kill", "pulseaudio --start" funktionieren allerdings (greifen dann wohl Benutzerunabhänig auf den Daemon zu).

    Die Augaben ergibt:

    Code
    xbian@RPi2 ~ $ pactl list card short
    Specify nothing, or one of: modules, sinks, sources, sink-inputs, source-outputs, clients, samples, cards
    Code
    xbian@RPi2 ~ $ pactl list sinks short
    0       alsa_output.usb-0d8c_USB_Sound_Device-00-Device.analog-stereo   module-alsa-card.c      s16le 2ch 44100Hz       SUSPENDED
    1       alsa_output.platform-soc_audio.analog-stereo    module-alsa-card.c      s16le 2ch 44100Hz       SUSPENDED

    Gruß,
    H:

  • Ups, cards nicht card. Zumindest sehen wir in der Liste der Sinks, dass die Nummer 0 die USB-Soundkarte ist, die aber offensichtlich bis jetzt nur mit 2 Kanälen arbeitet. Also müssten wir noch das richtige Profil (5.1 vermutlich mit dem genauen Namen "output:analog-surround-51") einstellen. Was sagt denn "pactl list cards" (diesmal ohne short)?

  • hier dann nochmals "pactl list cards short" :) :

    Code
    xbian@RPi2 ~ $ pactl list cards short
    0       alsa_card.usb-0d8c_USB_Sound_Device-00-Device   module-alsa-card.c
    1       alsa_card.platform-soc_audio    module-alsa-card.c


    und "pactl list cards" :

  • Code
    $ pactl set-card-profile 0 output:analog-surround-51

    Falls Pulseaudio sich diese Einstellung nicht von alleine merkt, könntest du das gegebenenfalls auch an die /etc/pulse/system.pa hängen, damit es verlässlich immer beim Start von Pulseaudio gesetzt wird und zwar dann in dieser Form

    Code
    
    
    .nofail
    set-card-profile alsa_card.usb-0d8c_USB_Sound_Device-00-Device output:analog-surround-51
    .fail

    ...und nur zur Überprüfung, was sagt nun bei dir

    Code
    $ ps aux | grep pulse

    Einmal editiert, zuletzt von smutbert (30. November 2016 um 16:06)

  • Die Einstellung "pactl set-card-profile 0 output:analog-surround-51" funktioniert bei mir leider nicht:

    Code
    xbian@RPi2 ~ $ pactl set-card-profile 0 output:analog-surround-5
    Failure: No such entity


    bzw. mit sudo:

    Code
    xbian@RPi2 ~ $ sudo pactl set-card-profile 0 output:analog-surround-5
    [sudo] password for xbian:
    Connection failure: Connection refused

    Darum hab ich deine zweite Variante über die Datei /etc/pulse/system.pa versucht, die Datei sieht dann folgendermaßen aus:


    ps aux | grep pulse sagt jetzt:

    Code
    xbian@RPi2 ~ $ ps aux | grep pulse
    xbian     3212  4.2  0.9 173028  6484 ?        Sl   16:42   0:02 /usr/bin/pulseaudio --start --log-target=syslog
    xbian     5317  0.0  0.2   3760  1688 pts/4    S+   16:43   0:00 grep --color=auto pulse

    Nun funktioniert die Ausgabe in Kodi mir geänderter Damon.conf, aber der Sub-out funktioniert leider immer noch nicht :(
    (bisher, wenn ich in Kodi upmix aktiviere und die Ausgabe auf 2.1 stelle kam unter ALSA beim Sub-out immer das Tonsignal ohne Tiefpassfilter an, mit Pulsaudio geht das leider auch nicht mehr)

    Hier mal meine Damon.conf:

    Gruß,

    H.


    EDIT:
    pactl list sinks short sagt immer noch:

    Code
    xbian@RPi2 ~ $ pactl list sinks short
    0       alsa_output.usb-0d8c_USB_Sound_Device-00-Device.analog-stereo   module-alsa-card.c      s16le 2ch 44100Hz       IDLE
    1       alsa_output.platform-soc_audio.analog-stereo    module-alsa-card.c      s16le 2ch 44100Hz       IDLE


    Ich denk "s16le 2ch 44100Hz" bedeutet wohl das immer noch nur die Stereoausgabe verwendet wird :denker:


    EDIT2:
    Hab gerade nochmal:

    Code
    xbian@RPi2 ~ $ pactl set-card-profile 0 output:analog-surround-51


    versucht und diesmal kam keine Fehlermeldung :s
    "ps aux | grep pulse" sagt jetzt:

    Code
    xbian     6819  0.2  1.0 109048  6908 ?        Sl   17:03   0:00 /usr/bin/pulseaudio --start --log-target=syslog
    xbian     8609  0.0  0.2   3760  1596 pts/3    S+   17:07   0:00 grep --color=auto pulse


    und " pactl list sinks short":

    Code
    1       alsa_output.platform-soc_audio.analog-stereo    module-alsa-card.c      s16le 2ch 44100Hz       SUSPENDED
    2       alsa_output.usb-0d8c_USB_Sound_Device-00-Device.analog-surround-51      module-alsa-card.c      s16le 6ch 44100Hz       SUSPENDED


    und das wichtigste, der Sub-out funktioniert endlich :thumbs1:

    Kann es sein das ich die Datei "/etc/pulse/system.pa" um deinen Eintrag ergänzen muss bevor ich den Befehl "pactl set-card-profile 0 output:analog-surround-51" absetze?

    PS: Nochmals vielen Dank für deine Hilfe, ohne dich wäre ich aufgeschmissen gewesen :danke_ATDE:

    Einmal editiert, zuletzt von Harald654 (30. November 2016 um 17:27)

  • Gut, das meiste hast du schon selbst herausgefunden - zum Rest:

    Die Ausgabe von "ps aux | grep pulse" zeigt, dass dein Pulseaudio unter dem Benutzeraccount xbian läuft und demzufolge kein systemweites Pulseaudio ist. Hast du das was ich in Beitrag #10 verlinkt habe ("Pulseaudio als systemweiter Daemon") also absichtlich nicht gemacht oder hast du es gemacht?

    (In letzterem Fall wäre die Anleitung fehlerhaft - das ist für mich von Interesse, weil ich die Anleitung dann gerne korrigieren würde, schließlich ist sie auf meinem Mist gewachsen)


    […]
    Kann es sein das ich die Datei "/etc/pulse/system.pa" um deinen Eintrag ergänzen muss bevor ich den Befehl "pactl set-card-profile 0 output:analog-surround-51" absetze?
    […]

    Nein, grundsätzlich machen der pactl Befehl und die Einträge dasselbe. Die .pa-Dateien sind. wenn man so will, einfach nur eine Abfolge von pactl-Befehlen ohne vorangestelltes pactl.

    Tatsächlich dürfen die zusätzlichen Zeilen bei dir gar keine Auswirkung haben.
    Wie wir ja gerade festgestellt haben läuft dein PA noch als benutzereigener Daemon und nicht als systemweiter Daemon. Die "/etc/pulse/system.pa" beeinflusst aber nur PA als systemweiten Daemon, für die benutzereigenen ist "/etc/pulse/default.pa" bzw. falls vorhanden "~/.config/pulse/default.pa" zuständig.

    Nachdem was du gepostest hast, kann ich nur davon ausgehen, dass die Fehlermeldung beim ersten Versuch auf Surround zu schalten an "…surround5" statt "…surround51" im Befehl gelegen hat.


  • Nachdem was du gepostest hast, kann ich nur davon ausgehen, dass die Fehlermeldung beim ersten Versuch auf Surround zu schalten an "…surround5" statt "…surround51" im Befehl gelegen hat.

    au man, klar mit "…surround5" kann es natürlich nicht funktionieren... (sorry, das hab ich echt übersehen).

    Ich habe Pulsaudio bisher noch nicht als systemweiten Daemon angelegt, weil ich es erst mal unter dem Benutzer von Kodi (xbian) zum laufen bekommen wollte.
    Da dies jetzt der Fall ist, habe ich es nun nachgeholt :)

    Dabei hab ich mich genau an deine Anleitung gehalten:
    - mit "xbian@RPi2 ~ $ sudo nano /etc/pulse/daemon.conf" syste-instance aktiviert ( "system-instance = yes").
    - Mit "xbian@RPi2 ~ $ sudo nano /etc/systemd/system/pulseaudio.service" die Service-Uni zum automatischen starten wie in der Anleitung angelegt (Xbian basiert auf / ist ein Debian Jessie):

    - beim einlesen/aktivieren der Service-Unit bekam ich dann folgende Fehlermeldungen:

    Code
    xbian@RPi2 ~ $ sudo systemctl daemon-reload
    Failed to get D-Bus connection: Unknown error -1
    Code
    xbian@RPi2 ~ $ sudo systemctl enable pulseaudio
    Created symlink from /etc/systemd/system/session.target.wants/pulseaudio.service to /etc/systemd/system/pulseaudio.service.
    Code
    xbian@RPi2 ~ $ sudo systemctl start pulseaudio
    Failed to get D-Bus connection: Unknown error -1

    -Benutzer pulse der Gruppe audio hinzugefügt (war schon Mitglied):

    Code
    xbian@RPi2 ~ $ sudo adduser pulse audio
    The user `pulse' is already a member of `audio'.


    -Benutzer xbian (für Kodi) und squeezeboxserver (für Sqeezbox) der Gruppe Gruppe pulse-access hinzugefüg

    Code
    xbian@RPi2 ~ $ sudo adduser xbian pulse-access
    Adding user `xbian' to group `pulse-access' ...
    Adding user xbian to group pulse-access
    Done.
    Code
    xbian@RPi2 ~ $ sudo adduser squeezeboxserver pulse-access
    Adding user `squeezeboxserver' to group `pulse-access' ...
    Adding user squeezeboxserver to group pulse-access
    Done.

    Nach einem Neustart startet nun leider Kodi nicht mehr (im Log wird kein Fehler aufgeführt) :(

    "ps aux | grep pulse" sagt:

    Code
    xbian@RPi2 ~ $ ps aux | grep pulse
    xbian     3270  0.0  0.3 150116  2356 ?        S    15:07   0:00 /usr/bin/pulseaudio --start --log-target=syslog
    xbian    16845  0.0  0.2   3760  1720 pts/3    S+   15:35   0:00 grep --color=auto pulse

    und " pactl list sinks short":

    Code
    xbian@RPi2 ~ $ pactl list sinks short
    Connection failure: Connection refused

    pulseaudio --check:

    Code
    xbian@RPi2 ~ $ pulseaudio --check
    N: [pulseaudio] main.c: System mode refused for non-root user. Only starting the D-Bus server lookup service.
    xbian@RPi2 ~ $ sudo pulseaudio --check


    PS: ich verwende Pulseaudio 7.1 aus dem jessie-backport repo, da 5.0 noch kein "lfe-crossover-freq" zum einstellen der Trennfrequenzen kennt.

    Gruß,
    H.

    Einmal editiert, zuletzt von Harald654 (1. Dezember 2016 um 15:53)

  • Das "Failed to get D-Bus connection: Unknown error -1" ist jedenfalls ein Problem von deiner Installation, die nichts mit Pulseaudio oder den Änderungen an der Pulseaudiokonfiguration zu tun haben. Zumindest was das Anlegen des Pulseaudiodienstes angeht, hat das aber scheinbar bis auf die Fehlermeldung keine Auswirkungen gehabt, hmm...

    Neben dieser Meldung bereiten mir bei dir zwei Dinge Kopfzerbrechen:
    Einerseits läuft trotz der Änderungen noch ein Pulseaudio unter dem Benutzeraccount xbian. Andererseits wird gerade dem Benutzer xbian trotzdem der Zugriff verweigert - ich glaube da muss ich auf meinem System auch noch etwas überprüfen. (Ich hab auf einem System ebenfalls pulseaudio aus den backports als systemweiten Dienst laufen.)

    Vielleicht könntest du in der Zwischenzeit die Ergebnisse von

    Code
    $ sudo pulseaudio --check && echo ok
    $ sudo systemctl status pulseaudio.service
    $ sudo journalctl -p 7 -u pulseaudio.service


    posten, um etwas Licht in die Sache zu bringen.

    Einmal editiert, zuletzt von smutbert (1. Dezember 2016 um 19:45)

  • hallo smubert,

    sorry für meine späte Antwort, ich musst aufgrund eines anderen Problems mein System neu aufsetzen...

    jetzt läuft aber alles wieder, und ich bin nochmals die Anleitung zum starten von Pulsaudio als systemweiten Daemon durchgegangen.
    Sprich Kodi startet mit dem systemweiten Daemon nicht mehr (auch bekahm ich wieder bei "sudo systemctl daemon-reload" und "sudo systemctl start pulseaudio" die Meldung "Failed to get D-Bus connection: Unknown error -1"

    Hier noch die Ergebnisse von:

    Code
    xbian@RPi2 ~ $ sudo pulseaudio --check && echo ok
    xbian@RPi2 ~ $ sudo systemctl status pulseaudio.service
    Failed to get D-Bus connection: Unknown error -1
    xbian@RPi2 ~ $ sudo journalctl -p 7 -u pulseaudio.service
    No journal files were found.


    Gruß,
    H.

    Einmal editiert, zuletzt von Harald654 (3. Dezember 2016 um 23:32)

  • Ich hab mir nochmal das Logfile von Kodi angeschaut.

    Wenn ich "system-instance = yes" in "/etc/pulse/daemon.conf" auskommentieren startet Kodi und die Soundausgabe über Pulse funktioniert auch, aber im Log taucht folgendes auf:

    Code
    13:02:35  43.467930 T:1954288352   ERROR: DBus: Error org.freedesktop.UDisks.Error.PermissionDenied - Not Authorized
    13:02:35  43.533428 T:1954288352   ERROR: DBus: Error org.freedesktop.UDisks.Error.Failed - Error mounting: mount exited with exit code 1: helper failed with:
                                               mount: only root can mount /dev/root on /home

    Wenn ich "system-instance = yes" nicht auskommentieren startet Kodi nicht mehr, im Log steht kein Eerror aber:

    Code
    13:13:01  40.786854 T:1953542880   DEBUG: DeviceKit.Power: org.freedesktop.DBus.Error.ServiceUnknown - The name org.freedesktop.DeviceKit.Disks was not provided by any .service files

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!