[erledigt] HDMI-Devices auflisten ohne 'aplay'

  • Ich starte VDR mit dem vaapidevice-Plugin mit


    -P 'vaapidevice -v va-api -a hw:0,3 -d :0.0 -f'


    und hatte damit auch schon mal Ton (wenn auch mit riesigem A/V-Versatz, aber das ist ein anderes Thema).

    Nachdem ich die letzten Tage ein Problem mit LIRC verfolgt habe und der VDR während dessen an einem Monitor ohne Lautsprecher angeschlossen war, wollte ich heute mit Lautsprechern testen. Aber leider hat sich da wohl irgend etwas verändert, denn es kommt kein Ton mehr.


    Gibt es eine Möglichkeit, sich die Ausgabedevices anzeigen zu lassen, ohne 'aplay -l'?

    Da ich nur den X-Server installiert habe und keinen Window-Manager brauche, und daher auch das ganze Mixer-Zeugs und was da sonst noch alles mit reingezogen würde nicht haben will, habe ich auch kein 'aplay'.


    Klaus

  • Schau mal unter /proc/asound

    Evtl. hilft dir das schon weiter.

  • Was hast du denn da für eine Kiste, dass du auf jedes Megabyte achten musst?

    Ich versuche einfach, nach Möglichkeit nur das zu installieren, was unbedingt nötig ist.


    Nach Installation von alsa-utils liefert 'aplay -l' nun:

    Als ich das erste Mal Ton hatte, hatte ich für vaapidevice '-a hw:0,3' angegeben. Da mein HDMI-Device "HDMI-1" ist habe ich es nun auch mit '-a hw:0,7' probiert, was aber auch nichts gebracht hat (genauso wenig wie 0, 8, 9 oder 10).


    /proc/asound sieht hier so aus:

    /proc/asound/cards:

    Code
    1. 0 [PCH ]: HDA-Intel - HDA Intel PCH
    2. HDA Intel PCH at 0x91410000 irq 374

    /proc/asounds/devices:

    Ausgehend von einer minimalen openSUSE-Installation ("Custom") habe ich nur diese Pakete installiert, die für vaapidevice nötig sind...


    xorg-x11-server

    xinit

    xset

    unclutter

    libdrm-devel

    libX11-devel

    xcb-util-wm-devel

    pthread-stubs-devel

    libXau-devel

    libXfixes-devel

    libXext-devel

    libavcodec58


    ...und diese Bibliotheken von den jeweiligen Quellen geholt und mit den angegebenen Optionen übersetzt:


    GitAuto "libva" ".git" "https://github.com/intel" --enable-x11

    WgetConf "xcb-proto-1.13" ".tar.bz2" "https://xorg.freedesktop.org/archive/individual/xcb"

    WgetConf "libxcb-1.13" ".tar.bz2" "https://xorg.freedesktop.org/archive/individual/xcb"

    WgetConf "alsa-lib-1.1.6" ".tar.bz2" "ftp://ftp.alsa-project.org/pub/lib"

    GitAuto "intel-vaapi-driver" ".git" "https://github.com/intel" --enable-x11

    WgetConf "ffmpeg-4.0" ".tar.bz2" "https://ffmpeg.org/releases" --enable-pic --enable-shared


    ("GitAuto" und "WgetConf" sind Funktionen in meinen Script, die die Sourcen holen und übersetzen)


    Kann es sein, dass ich für die Audio-Ausgabe noch zusätzliche Pakete brauche, deren Fehlen weder beim Übersetzen noch beim Betrieb von vaapidevice durch entsprechende Meldungen auffällt?


    Klaus

  • Unter /proc/asound/card0 hast du mehrere files mit dem Namensschema eld#0.n. Die Reihenfolge entsprich der Ausgabe von 'aplay -l'.

    Wenn in einem dieser files die Variable "monitor_present" auf 1 steht und zusätzlich weitere Informationen zum Ausgabegerät drin stehen, dann hast du das richtige Gerät gefunden und kannst es entsprechend zuordnen.


    Ansonsten schau mal mit 'alsamixer' ob das device nicht etwa gemutet ist. Mit 'alsactl store' kannst du die Änderungen die du mit dem alsamixer vornimmst dauerhaft speichern.

  • /proc/asound/card0 sieht bei mir so aus:

    /proc/asound/card0/eld#2.0 sieht so aus:

    Inzwischen habe ich herausgefunden, dass das Problem daran liegt, dass ich VDR mit '-u kls' laufen lasse (also nicht als 'root', was ich vermutlich bei meinem fr[heren Versuch getan habe und daher Ton hatte). Sobald ich VDR vollständig als 'root' laufen lasse, habe ich auch Ton.Und ich muss vaapidevice mit '-a hw:0,3' starten. Wie der Zusammenhang zwischen 'hw:0,3' und 'eld#2.0' herzuleiten ist, erschließt sich mir allerdings nicht.


    Bleibt die Frage: was kann ich tun, um VDR mit '-u kls' laufen lassen zu können und trotzdem Ton zu haben?


    Klaus