web-dev-qa-db-ja.com

ALSAがオンボードオーディオカードを認識できない

Mythbuntu 12.04.2では、ALSA(1.0.25 + dfsg-0ubuntu1.1)が A88GMV オンボードAMD 880 HDオーディオ(カード)を認識できません。

このシステムは完全に更新されています。

システムには、NVIDIA HDオーディオコントローラー(rev a1)とマザーボード搭載のHD 4250グラフィックコントローラー(BIOSで無効)を備えたNVIDIAグラフィックカード( GeForce 8400 GS )も含まれています。

このシステムは、以前はHDMI経由でオーディオアンプに接続され、その後HDディスプレイに接続されていました。

HDディスプレイが失われた後、NVIDIA 8400は Asus VW246H にDVIを介して接続され、オーディオはオンボードミニジャック5.1外部スピーカーに接続するように変更されました。 BIOSのオーディオ設定は、AMD 880 HD Audio(オンボードHDMIの無効化されたセットのオーディオ出力)およびHD Audio Controller(有効化-以前は無効化)でした。これらの設定は、デュアルブートWin7で機能しました。

Mythbuntu 12.04.2の実行中に音声がありませんでした。ALSA(alsamixer)は、NVIDIA 8400 GSビルトインオーディオ(HDA-intel)のみを報告しました。 ATIオンボードAMD 880 HDオーディオ。

lspciは両方のカードを報告します:

00:14.0 SMBus: Advanced Micro Devices [AMD] nee ATI SBx00 SMBus Controller (rev 3c)
00:14.1 IDE interface: Advanced Micro Devices [AMD] nee ATI SB7x0/SB8x0/SB9x0 IDE Controller
00:14.2 Audio device: Advanced Micro Devices [AMD] nee ATI SBx00 Azalia (Intel HDA)
00:14.3 ISA bridge: Advanced Micro Devices [AMD] nee ATI SB7x0/SB8x0/SB9x0 LPC Host controller
00:14.4 PCI bridge: Advanced Micro Devices [AMD] nee ATI SBx00 PCI to PCI Bridge
00:14.5 USB controller: Advanced Micro Devices [AMD] nee ATI SB7x0/SB8x0/SB9x0 USB OHCI2 Controller
...
01:00.0 VGA compatible controller: NVIDIA Corporation GT218 [GeForce 8400 GS] (rev a2)
01:00.1 Audio device: NVIDIA Corporation High Definition Audio Controller (rev a1)

ALSA Information Script v 0.4.61から:

!!Soundcards recognised by ALSA
!!-----------------------------
 0 [NVidia         ]: HDA-Intel - HDA NVidia
                      HDA NVidia at 0xfcf7c000 irq 19

!!PCI Soundcards installed in the system
!!--------------------------------------
00:14.2 Audio device: Advanced Micro Devices [AMD] nee ATI SBx00 Azalia (Intel HDA)
01:00.1 Audio device: NVIDIA Corporation High Definition Audio Controller (rev a1)

また:

!!Modprobe options (Sound related)
!!--------------------------------
snd-atiixp-modem: index=-2
snd-intel8x0m: index=-2
snd-via82xx-modem: index=-2
snd-usb-audio: index=-2
snd-usb-caiaq: index=-2
snd-usb-ua101: index=-2
snd-usb-us122l: index=-2
snd-usb-usx2y: index=-2
snd-cmipci: mpu_port=0x330 fm_port=0x388
snd-pcsp: index=-2
snd-usb-audio: index=-2
snd-hda-intel: probe_mask=0x102

また:

!!ALSA/HDA dmesg
!!--------------
[   23.442280] cfg80211: 2474000 KHz - 2494000 KHz @ 20000 KHz), (600 mBi, 2000 mBm)
[   23.447440] snd_hda_intel 0000:00:14.2: PCI INT A -> GSI 16 (level, low) -> IRQ 16
[   23.447444] hda_intel: codec_mask forced to 0x2
[   23.457977] ieee80211 phy0: Selected rate control algorithm 'minstrel_ht'
--
[   26.316757] ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
[   26.480043] hda-intel: azx_get_response timeout, switching to polling mode: last cmd=0x100f0000
[   27.332070] wlan0: authenticate with 00:18:f8:f9:63:74 (try 1)
--
[   27.350482] ADDRCONF(NETDEV_CHANGE): wlan0: link becomes ready
[   27.488061] hda-intel: Codec #1 probe error; disabling it...
[   27.520036] hda-intel: no codecs initialized
[   27.520142] snd_hda_intel 0000:00:14.2: PCI INT A disabled
[   27.520343] snd_hda_intel 0000:01:00.1: PCI INT B -> GSI 19 (level, low) -> IRQ 19
[   27.520346] hda_intel: Disabling MSI
[   27.520347] hda_intel: codec_mask forced to 0x2
[   27.520366] snd_hda_intel 0000:01:00.1: setting latency timer to 64
[   27.760052] HDMI status: Codec=1 Pin=5 Presence_Detect=0 ELD_Valid=0
[   27.760139] input: HDA NVidia HDMI/DP,pcm=3 as /devices/pci0000:00/0000:00:02.0/0000:01:00.1/sound/card0/input7
[   27.960225] init: mythtv-backend main process (1964) terminated with status 127

他の情報:

!!Kernel Information
!!------------------
Kernel release:    3.2.0-40-generic
Operating System:  GNU/Linux
Architecture:      x86_64
Processor:         x86_64
SMP Enabled:       Yes

!!ALSA Version
!!------------
Driver version:     1.0.24
Library version:    1.0.25
Utilities version:  1.0.25

!!Loaded ALSA modules
!!-------------------
snd_hda_intel

!!Sound Servers on this system
!!----------------------------
Pulseaudio:
      Installed - Yes (/usr/bin/pulseaudio)
      Running - Yes
ESound Daemon:
      Installed - Yes (/usr/bin/esd)
      Running - No

完全ALSA情報スクリプトv 0.4.61レポート ここhttp://Pastebin.com/EAaDqrFE

Web検索では、ALSAをOSSに置き換えるか、/ etc/modprobe.d/alsa-base.confを編集することをお勧めします。 ( this を参照)

まあ、私は問題を解決し、これは私がそれをやった方法です

  1. Mythbuntu 12.04.2のisoをダウンロードして書き込みます
  2. 内蔵ビデオを使用するようにBIOSを変更し、DVD(CD)から起動するブートシステム
  3. NVIDIAグラフィックアダプターを取り外す
  4. 12.04.2 isoをDVDに焼き付けて挿入
  5. 12.04.2を再インストールする
  6. 自動的に開く/失敗するMytbuntuフロントエンドを強制終了します(データベースバージョンの不一致による)
  7. Mytbuntu Control Centerを使用して、インストールのデフォルト0.25からバージョンを0.26に設定し、リポジトリを有効にします。
  8. 大規模なapt-get update/dist-upgradeを実行します
  9. Alsamixerを使用して、ビルトインオーディオ(Reactek ALC887チップを搭載したHDA-ATI-SB)を有効にします。
  10. PulseAudio VolumeContolを使用して、デバイスとボリュームを設定しました(デバイス0はオーディオでした)
  11. インストールを完了し、フロントエンドの設定を設定しました。
  12. NVIDIAグラフィックスアダプターをシャットダウンして再インストールします。
  13. 再起動し、BIOSでグラフィックアダプタの選択を変更し、NVIDIAのドライバをインストールしました。

注:奇妙な出来事、完全に更新された12.04…フォントエンド/バックエンドはカーネル3.2.0-40-genericを使用し、新しいフロントエンドインストールはカーネル3.5.0-27-genericを使用します。

これで、ビルトインサウンド(カード)がALSAによって認識され、オーディオがうまく機能します。

注:12.04.2カーネルは12.04.1とは異なります。12.04.1を12.04.2カーネルに更新するには here を参照してください。