yaVDR startet nicht richtig, Sound Problem
-
-
Jop sicherlich auch eine Variante,
aber nun nächstes Problem
Codetv@vdr:~$ cat /proc/asound/cards 0 [CX8811_1 ]: CX88x - Conexant CX8811 Conexant CX8811 at 0xdf000000 1 [CX8811 ]: CX88x - Conexant CX8811 Conexant CX8811 at 0xdb000000 tv@vdr:~$
Warum ist die HDMI Karte auf einmal weg? syslog.txt
Nach einem Neustart kommt die auch nicht wieder.
05:00.1 Audio device: NVIDIA Corporation GF108 High Definition Audio Controller (rev a1)
Die Karte ist aber da.
Code
Alles anzeigentv@vdr:~$ lspci 00:00.0 Host bridge: Intel Corporation 82945G/GZ/P/PL Memory Controller Hub (rev 02) 00:01.0 PCI bridge: Intel Corporation 82945G/GZ/P/PL PCI Express Root Port (rev 02) 00:1c.0 PCI bridge: Intel Corporation NM10/ICH7 Family PCI Express Port 1 (rev 01) 00:1c.1 PCI bridge: Intel Corporation NM10/ICH7 Family PCI Express Port 2 (rev 01) 00:1c.3 PCI bridge: Intel Corporation NM10/ICH7 Family PCI Express Port 4 (rev 01) 00:1d.0 USB controller: Intel Corporation NM10/ICH7 Family USB UHCI Controller #1 (rev 01) 00:1d.1 USB controller: Intel Corporation NM10/ICH7 Family USB UHCI Controller #2 (rev 01) 00:1d.2 USB controller: Intel Corporation NM10/ICH7 Family USB UHCI Controller #3 (rev 01) 00:1d.3 USB controller: Intel Corporation NM10/ICH7 Family USB UHCI Controller #4 (rev 01) 00:1d.7 USB controller: Intel Corporation NM10/ICH7 Family USB2 EHCI Controller (rev 01) 00:1e.0 PCI bridge: Intel Corporation 82801 PCI Bridge (rev e1) 00:1f.0 ISA bridge: Intel Corporation 82801GB/GR (ICH7 Family) LPC Interface Bridge (rev 01) 00:1f.1 IDE interface: Intel Corporation 82801G (ICH7 Family) IDE Controller (rev 01) 00:1f.2 IDE interface: Intel Corporation NM10/ICH7 Family SATA Controller [IDE mode] (rev 01) 00:1f.3 SMBus: Intel Corporation NM10/ICH7 Family SMBus Controller (rev 01) 01:00.0 Multimedia video controller: Conexant Systems, Inc. CX23880/1/2/3 PCI Video and Audio Decoder (rev 05) 01:00.1 Multimedia controller: Conexant Systems, Inc. CX23880/1/2/3 PCI Video and Audio Decoder [Audio Port] (rev 05) 01:00.2 Multimedia controller: Conexant Systems, Inc. CX23880/1/2/3 PCI Video and Audio Decoder [MPEG Port] (rev 05) 01:00.4 Multimedia controller: Conexant Systems, Inc. CX23880/1/2/3 PCI Video and Audio Decoder [IR Port] (rev 05) 01:01.0 Multimedia video controller: Conexant Systems, Inc. CX23880/1/2/3 PCI Video and Audio Decoder (rev 05) 01:01.1 Multimedia controller: Conexant Systems, Inc. CX23880/1/2/3 PCI Video and Audio Decoder [Audio Port] (rev 05) 01:01.2 Multimedia controller: Conexant Systems, Inc. CX23880/1/2/3 PCI Video and Audio Decoder [MPEG Port] (rev 05) 01:01.4 Multimedia controller: Conexant Systems, Inc. CX23880/1/2/3 PCI Video and Audio Decoder [IR Port] (rev 05) 02:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 01) 03:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 06) 05:00.0 VGA compatible controller: NVIDIA Corporation GF108 [GeForce GT 430] (rev a1) 05:00.1 Audio device: NVIDIA Corporation GF108 High Definition Audio Controller (rev a1) tv@vdr:~$
-
Code
Dec 27 10:56:21 vdr kernel: [ 18.510960] hda-intel: Error creating card! Dec 27 10:56:21 vdr kernel: [ 18.510992] snd_hda_intel: probe of 0000:05:00.1 failed with error -16
Früher im syslog sieht man auch, dass vesafb geladen wird. Ich hab da nun nicht so viel Ahnung von den Grafiktreibern, aber beißen die sich vielleicht?Das mit "index=1,2" ist keine Variante, sondern ein Muss... Man kann nicht für einen Treiber verschiedene options-Zeilen haben. Da greift nur eine von.
Mittlerweile hab ich aber schon ein wenig mehr gelesen. "index" geht zwar noch, ist aber die alte Methode, um eine Reihenfolge von Karten zu bestimmen. Besser ist wohl die "slots"-Methode, siehe http://alsa.opensrc.org/MultipleCards, Abschnitt 5.2.
Versuche doch mal sowas:
Und die anderen Zeilen mit "index" entfernst du wieder.Lars.
-
Was hast du denn jetzt genau an Moduloptionen gesetzt? Nicht dass da ein essentielles Modul geblacklistet wurde oder aufgrund falscher Optionen nicht geladen werden kann...
-
-
Hallo, am Ende nutze ich nur
/etc/modprobe.de/sound.cards-order mit dem Inhalt
damit die Soundkarten richtig sortiert werden. Hab das Ding jetzt 30 mal neu gestartet, kam immer wieder hoch.
grep snd /etc/modprobe.d/* brachte
Interessant finde ich die alsa-base.conf.
-
Ich denke, dann ist für dich das Problem gelöst.
Meine onboard und die nvidia werden beide von snd_hda_intel betrieben, deshalb scheint es da auch eine stabile Reihenfolge zu geben.Momentan setze ich mich ein wenig mit der Alsa-API auseinander... Hab zwar schon schlimmeres gesehen, aber auch viel besseres...
Lars.
-
hocker
Da du zwei Soundkarten des gleichen Typs hast, magst du mir mal ein paar Ausgaben schicken?
Vielleicht finden wir eine einfache Möglichkeit, eine Soundkarte über den Namen anzusprechen statt über die Nummer. Dann wäre die Reihenfolge nicht mehr so wichtig.Lars.
-
Klar, solange es ein Testsystem ist.... können wir probieren. Hab auch keinen festen Zeitplan wann das Ding in Betrieb gehen soll.
Das Problem ist ja, das der Treibername der selbe ist. Aber ich finde es wirklich komische das dieses Problem nicht viele haben. Eigentlich müsste das jeder haben. Edit: selbst wenn ich die sound-card-order außer kraft setze, alle Karten anschalte und auf Ausgabe auf alle Karten stelle gehts nicht, schon komisch.
So wie ich das interpretiere hat man nur über eindeutige Adressen einen Chance,
CodeATTRS{vendor}=="0x8086" ATTRS{device}=="0x27d8" ATTRS{subsystem_vendor}=="0x1043" ATTRS{subsystem_device}=="0x817f"
Alles andere wird ja vom Kernel vergeben, oder sehe ich das falsch, aber was macht man, wenn man 2 identische Karten drin hat? Dann dürfte dieser abschnitt ja auch gleich sein
-
Moin!
Keine Sorge, ich werde dich nichts machen lassen, was dein System durcheinanderbringt - zumindest nicht irreversibel...
Das mit den Soundproblemen kam immer mal wieder, wenn es vielleicht auch nicht viele Threads gibt, weiß man nie, wie viele dieses Problem hatten, es aber aufgrund der Informationen selbst lösen konnten."Ausgabe auf allen Geräten": keine Ahnung, ob das jemals vernünftig funktioniert hat...
Wir haben den Fehler gemacht und benutzen die Karten- und Gerätenummer, um softhddevice (oder xine/liboutput) das Audiogerät mitzuteilen. Mittlerweile bin ich aber mal dazugekommen, die ALSA-Api ein wenig quer zu lesen und habe herausgefunden, dass man auch gewisse Namen einsetzen kann. "default" entspricht z.B. "hw:0,0" (wenn nicht anders über die asound.conf eingestellt). In meinem Testsystem habe ich eine onboard-Karte und die NVidia-Grafikkarte.
Code
Alles anzeigen$ LANG=C sudo aplay -l **** List of PLAYBACK Hardware Devices **** card 0: Intel [HDA Intel], device 0: VT1708S Analog [VT1708S Analog] Subdevices: 0/1 Subdevice #0: subdevice #0 card 0: Intel [HDA Intel], device 1: VT1708S Digital [VT1708S Digital] Subdevices: 1/1 Subdevice #0: subdevice #0 card 0: Intel [HDA Intel], device 2: VT1708S HP [VT1708S HP] Subdevices: 1/1 Subdevice #0: subdevice #0 card 1: NVidia [HDA NVidia], device 3: HDMI 0 [HDMI 0] Subdevices: 1/1 Subdevice #0: subdevice #0 card 1: NVidia [HDA NVidia], device 7: HDMI 1 [HDMI 1] Subdevices: 1/1 Subdevice #0: subdevice #0
Da ich nur einen Monitor per VGA angeschlossen habe (am analogen Eingang kann der 50Hz), hab ich noch ein Klinkenkabel in den Monitor von der onboard-Karte. Dazu muss ich normalerweise "hw:0,0" addressieren, hab jetzt aber gelernt, dass ich z.B. auch "hw:CARD=Intel,DEV=0" angeben kann. Wenn man also immer die NVidia-Karte ansprechen will, sollte sowas immer gehen: "hw:CARD=NVidia,DEV=3" (DEV muss ggf. angepasst werden).
Testen kann man das mit
in /etc/default/vdr (ggf. per Template, wenn man das behalten will).
Der Name hinter CARD entspricht dem, was in der aplay-Ausgabe direkt hinter "card x:" steht.
Wenn du Lust hast, dann teste das mal mit ALSA_DRIVER und ändere die Reihenfolge der Soundkarten mal. Wenn ich Recht habe, dann sollte die jetzt egal sein.
Wobei ich jetzt nicht weiß, ob xine das auswertet oder nicht, ich teste nur mit softhddevice.Das einzige, was wir dann noch lösen müssen, ist, den Start von vdr-frontend so lange zu verzögern, bis die Soundkarte bereit ist. Im unstable-Branch nutzen wir dafür ein kleines Script, was per udev die initialisierten Karten abfragt und sich beendet, sobald es die gewünschte findet. Das arbeitet aber noch mit der card-Nummer, das müssen wir erst noch ändern. Und es ist eben noch im unstable-Bereich, der ist nichts für dich...
Ach ja, und eine vernünftige Auswahl im WFE muss auch noch eingebaut werden. Sind noch ein paar Puzzleteile, aber solche Ausgaben wie von dir helfen dabei.Der cx88_alsa-Treiber scheint nur Capture-Devices zu erstellen, sonst wäre er in der obigen Ausgabe mit dabei.
Zeig mal bitte "ll /dev/snd", dann müsste man die sehen als "pcm*c".Lars.
-
bSorry das ich mich so lange nicht gemeldet hab, war immer kurz angebunden und hatte nicht viel Zeit für lange Bastelarbeiten.
Also ich hab die reinfolge geändert:
/etc/modprobe.d/sound-cards-order
/etc/asound.conf
Code# pcm.!default { # type hw # card 0 # device 9 #} #pcm.!hw:CARD=NVidia,DEV=9 export ALSA_DRIVER="hw:CARD=NVidia,DEV=9"
gehen beide Varianten nicht. Oder die falsche Datei?
-
Der export sollte in die /etc/default/vdr, nicht in die asound.conf.
Lars
Jetzt mitmachen!
Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!