Kirjoittaja Aihe: [RATKAISTU] 9.10 paikkaansa vaihtava äänikortti  (Luettu 1769 kertaa)

realpet

  • Käyttäjä
  • Viestejä: 167
    • Profiili
Koneessa on erillinen äänikortti ja näytönohjainokortti. Bootissa noiden järjestys vaihtelee joten äänten ohjaaminen oikeaan audioulostuloon vaatii boottien välissä konfigurointia. Esim. nyt saan seuraavan tulosteen:
Koodia: [Valitse]
aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: CMI8738 [C-Media CMI8738], device 0: CMI8738-MC6 [C-Media PCI DAC/ADC]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: CMI8738 [C-Media CMI8738], device 1: CMI8738-MC6 [C-Media PCI 2nd DAC]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: CMI8738 [C-Media CMI8738], device 2: CMI8738-MC6 [C-Media PCI IEC958]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: HDMI [HDA ATI HDMI], device 3: ATI HDMI [ATI HDMI]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
Mutta edellisen bootin jälkeen card 0 oli tuo näytönohjaimen HDMI ja card 1:nä näkyi äänikortti.
Miten saan nuo laitteen pysymään aina samassa järjestyksessä? Kaikki pulsepeeloilut voi unohtaa koska sitä ei pysty mitenkään järkevästi konfiguroimaan niin, että kaikki äänet menevät nätisti spdif:iin.
Käytännössä joudun bootin jälkeen aplay:llä katsomaan missä järjestyksessä kortit ovat ja sen jälkeen esim. MythTV:stä vaihtamaan ääniulostulon ALSA:plughw:0,2 :n ja ALSA:plughw:1,2:n välillä.
« Viimeksi muokattu: 05.02.10 - klo:21.14 kirjoittanut realpet »

realpet

  • Käyttäjä
  • Viestejä: 167
    • Profiili
Vs: 9.10 paikkaansa vaihtava äänikortti
« Vastaus #1 : 03.02.10 - klo:00.28 »
Yritin säätää järjestelmää tämän http://alsa.opensrc.org/index.php/MultipleCards ohjeen perusteella ja tulos oli tavallaan se mitä halusin.
Koodia: [Valitse]
lsmod|grep snd listasi modulit snd_hda_intel ja snd_hda_codec_atihdmi josta päättelin nokkelasti että tuo atihdmi on näytönohjaimen äänimoduli ja intel taas äänikortin.
Muutin /etc/modprobe.d/alsa-base.conf:ia seuraavasti
Koodia: [Valitse]
options snd-hda-intel power_save=10 power_save_controller=N
options snd-B index=0
=>
Koodia: [Valitse]
options snd-hda-intel power_save=10 power_save_controller=N index=0
options snd-hda-codec-atihdmi index=1
options snd-B index=1
Ainakin 2 bootin jälkeen aplay -l antaa seuraavan tiedon:
Koodia: [Valitse]
**** List of PLAYBACK Hardware Devices ****
card 1: CMI8738 [C-Media CMI8738], device 0: CMI8738-MC6 [C-Media PCI DAC/ADC]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: CMI8738 [C-Media CMI8738], device 1: CMI8738-MC6 [C-Media PCI 2nd DAC]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: CMI8738 [C-Media CMI8738], device 2: CMI8738-MC6 [C-Media PCI IEC958]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
Joten onnistuin ilmeisesti (?)
a) hävittämään näytönohjaimen hdmi-liitännän audiomodulin lataamisen
b) indeksoimaan äänikortin indeksinumerolle 1

Osaisiko joku viisaampi kertoa miksi äänikortin indeksi on 1 eikä 0???
Hdmi-modulin häviämisen pystyn ymmärtämään, koska syslokiin tulee seuraava entry:
Koodia: [Valitse]
snd_hda_codec_atihdmi: Unknown parameter `index'
- Petri

nm

  • Käyttäjä
  • Viestejä: 16268
    • Profiili
Vs: 9.10 paikkaansa vaihtava äänikortti
« Vastaus #2 : 03.02.10 - klo:10.20 »
Yritin säätää järjestelmää tämän http://alsa.opensrc.org/index.php/MultipleCards ohjeen perusteella ja tulos oli tavallaan se mitä halusin.
Koodia: [Valitse]
lsmod|grep snd listasi modulit snd_hda_intel ja snd_hda_codec_atihdmi josta päättelin nokkelasti että tuo atihdmi on näytönohjaimen äänimoduli ja intel taas äänikortin.

Näytäpä tuo koko listaus vielä. snd-hda-codec-atihdmi on snd-hda-intel -yleisajurin kanssa toimiva äänipiirin ajuri. Nuo molemmat ovat siis näytönohjaimen ääniulostulon moduuleita ja indeksi asetetaan snd-hda-intel-moduuliin.

Äänikorttisi näkyy olevan C-Median piiriin perustuva laite, joten sen ajuri on snd-cmipci ja /etc/modprobe.d/alsa-base.confiin voisi laittaa tällaiset rivit:

Koodia: [Valitse]
options snd-hda-intel power_save=10 power_save_controller=N index=1
options snd-cmipci index=0


Lainaus
options snd-hda-intel power_save=10 power_save_controller=N
options snd-B index=0

Tuo snd-B lienee ylimääräinen rivi jostain aiemmasta kokeilusta?
« Viimeksi muokattu: 03.02.10 - klo:10.27 kirjoittanut nm »

realpet

  • Käyttäjä
  • Viestejä: 167
    • Profiili
Vs: 9.10 paikkaansa vaihtava äänikortti [RATKAISTU]
« Vastaus #3 : 05.02.10 - klo:16.47 »
Yritin säätää järjestelmää tämän http://alsa.opensrc.org/index.php/MultipleCards ohjeen perusteella ja tulos oli tavallaan se mitä halusin.
Koodia: [Valitse]
lsmod|grep snd listasi modulit snd_hda_intel ja snd_hda_codec_atihdmi josta päättelin nokkelasti että tuo atihdmi on näytönohjaimen äänimoduli ja intel taas äänikortin.

Näytäpä tuo koko listaus vielä. snd-hda-codec-atihdmi on snd-hda-intel -yleisajurin kanssa toimiva äänipiirin ajuri. Nuo molemmat ovat siis näytönohjaimen ääniulostulon moduuleita ja indeksi asetetaan snd-hda-intel-moduuliin.

Äänikorttisi näkyy olevan C-Median piiriin perustuva laite, joten sen ajuri on snd-cmipci ja /etc/modprobe.d/alsa-base.confiin voisi laittaa tällaiset rivit:

Koodia: [Valitse]
options snd-hda-intel power_save=10 power_save_controller=N index=1
options snd-cmipci index=0


Lainaus
options snd-hda-intel power_save=10 power_save_controller=N
options snd-B index=0

Tuo snd-B lienee ylimääräinen rivi jostain aiemmasta kokeilusta?


*Worship* Noilla toimii oikein, jotenkin vaan brainlockasin tuon äänikortin käyttävän intelin chippiä.