ASUS Strix Soar를 기본 사운드 카드로 사용할 수 있도록 온보드 사운드를 비활성화합니다.

ASUS Strix Soar를 기본 사운드 카드로 사용할 수 있도록 온보드 사운드를 비활성화합니다.

Pulseaudio는 내 마지막 Audigy 2 사운드 카드를 망쳤습니다. 사운드 카드의 PCM을 계속 최대 볼륨으로 설정하고 오디오 응용 프로그램을 전환할 때마다(예: Firefox YouTube 비디오에서 Audacious로) 오디오 레벨이 자동으로 변경되었기 때문입니다. 아무튼 오래된 카드였고 표지도 말라버렸는데 볼륨을 높게 재설정하는 것이 관의 마지막 못이 되었고 결국에는 Eric Cartman이 트롬본을 연주하는 것처럼 들리기 시작했습니다. 그런 다음 라인 출력의 일부 측면에서 오디오가 사라지고 다른 모든 출력에서 ​​음질이 회복되기 시작합니다. 이런 일이 다시는 발생하지 않도록 펄스오디오를 제거했으며 다시는 펄스오디오를 사용하지 않을 것입니다.

최근에 Asus Strix Soar 7.1 사운드 카드를 구입했습니다. ALSA는 Realtek 온보드 사운드 카드가 활성화된 경우에만 감지합니다. 시스템 UEFI에서 온보드 사운드가 비활성화된 경우 사운드 카드가 감지되지 않습니다. Asus Strix Soar는 PCIe PCB에 위치한 USB 기반 사운드 카드입니다. 테스트해 보았는데 Audacious에게 카드에서 PCM을 사용하라고 지시하면 제대로 작동하고 합리적으로 들립니다. 그러나 많은 응용 프로그램에서는 필연적으로 최초의 사운드 장치가 되는 기본 사운드 카드를 사용할 것으로 예상합니다.

온보드 사운드에 대한 모든 커널 모듈을 블랙리스트에 추가하면 Alsa는 Strix Soar 감지를 중지하고 "믹서 장치 없음"을 보고하며 사운드 컨트롤을 열지 않습니다. BIOS에서 비활성화해도 같은 일이 발생합니다. ALSA가 이를 감지하지 못합니다.

또한 HDMI를 통해 사운드를 출력하려는 ​​NVidia 카드가 있는데 기본 사운드 카드가 되려고 합니다.

다음 구성을 사용하여 기본 HDMI 출력을 중지했습니다.

options snd_hda_intel index=3 model=auto

이렇게 하면 /etc/modprobe.d/alsa-base.confhdmi 출력이 카드 3으로 이동하여 목록의 뒷부분에 있게 되며 기본 사운드 카드가 되지 않습니다. 환호!

하지만 이제 Realtek 사운드 카드가 첫 번째 장치로 나열됩니다. 리얼텍 사운드카드 커널모듈이 뭔지 몰라서 옮길 수가 없네요.

lspci -k | grep -A2 Audio를 수행하면 다음이 표시됩니다.

09:00.1 Audio device: NVIDIA Corporation GK208 HDMI/DP Audio Controller (rev a1)
        Subsystem: ASUSTeK Computer Inc. GK208 HDMI/DP Audio Controller
        Kernel driver in use: snd_hda_intel
        Kernel modules: snd_hda_intel
--
0b:00.3 Audio device: Advanced Micro Devices, Inc. [AMD] Family 17h (Models 00h-0fh) HD Audio Controller
        Subsystem: ASUSTeK Computer Inc. Family 17h (Models 00h-0fh) HD Audio Controller
        Kernel driver in use: snd_hda_intel
        Kernel modules: snd_hda_intel

lsmod | grep snd를 실행하면 다음과 같은 결과가 나타납니다.

snd_hda_codec_hdmi     61440  1
snd_hda_codec_generic    86016  1
snd_usb_audio         262144  1
snd_hda_intel          49152  1
snd_usbmidi_lib        36864  1 snd_usb_audio
snd_hda_codec         151552  3 snd_hda_codec_generic,snd_hda_codec_hdmi,snd_hda_intel
snd_rawmidi            40960  1 snd_usbmidi_lib
snd_seq_device         16384  1 snd_rawmidi
snd_hda_core           94208  4 snd_hda_codec_generic,snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec
snd_hwdep              16384  2 snd_usb_audio,snd_hda_codec
snd_pcm               114688  5 snd_hda_codec_hdmi,snd_hda_intel,snd_usb_audio,snd_hda_codec,snd_hda_core
snd_timer              36864  1 snd_pcm
snd                    94208  15 snd_hda_codec_generic,snd_seq_device,snd_hda_codec_hdmi,snd_hwdep,snd_hda_intel,snd_usb_audio,snd_usbmidi_lib,snd_hda_codec,snd_timer,snd_pcm,snd_rawmidi
soundcore              16384  1 snd
usbcore               294912  5 xhci_hcd,snd_usb_audio,usbhid,snd_usbmidi_lib,xhci_pci

aplay -l의 출력은 다음과 같습니다.

**** List of PLAYBACK Hardware Devices ****
card 0: Generic [HD-Audio Generic], device 0: Generic Analog [Generic Analog]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: Generic [HD-Audio Generic], device 1: Generic Digital [Generic Digital]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: CARD [STRIX SOUND CARD], device 0: USB Audio [USB Audio]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: CARD [STRIX SOUND CARD], device 1: USB Audio [USB Audio #1]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: CARD [STRIX SOUND CARD], device 2: USB Audio [USB Audio #2]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 3: NVidia [HDA NVidia], device 3: HDMI 0 [HDMI 0]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 3: NVidia [HDA NVidia], device 7: HDMI 1 [HDMI 1]
  Subdevices: 1/1
  Subdevice #0: subdevice #0

간단히 말해서:

  1. 온보드 오디오는 현재 첫 번째 사운드 카드로 감지됩니다.
  2. Strix Soar를 비활성화하지 않고 온보드 사운드를 비활성화할 수 없습니다.
  3. Strix Soar를 비활성화하지 않고는 온보드 사운드 커널 모듈을 블랙리스트에 올릴 수 없습니다.
  4. Realtek 사운드 카드를 기본값에서 벗어나기 위해 alsa-base.conf에 어떤 커널 모듈이 필요한지 알 수 없습니다.

내가 하고 싶은 것:

내가 원하는 것은 온보드 오디오를 비활성화하거나 기본 사운드 장치에서 제거하여 내 Strix Soar가 기본 사운드 카드가 되도록 하는 것입니다. 그러나 나는 이것에 대한 커널 모듈을 모릅니다.

커널 모듈이 무엇인지 알아내어 이동할 수 있는 방법이 있습니까? 아니면 Strix Soar를 비활성화하지 않고 온보드 오디오를 비활성화할 수 있는 방법이 있습니까?

이 문제를 겪는 사람이 나 혼자일 수는 없다.

편집하다수락된 답변에 대해 Nick에게 감사드립니다. 올바른 길로 들어섰고, 해결책은 다음과 같이 변경하는 것이었습니다 /etc/modprobe.d/alsa-base.conf.

options snd_usb_audio index=0 model=auto
options snd_hda_intel index=3 model=auto
options snd_hda_intel index=4 model=auto

이것으로 모든 것이 해결되었습니다. 이제 Strix가 1위가 되었습니다.

답변1

온보드 Realtek 및 NVidia GPU는 모두 모듈을 사용하며 snd_hda_intel원하는 장치는 기본적으로 모듈을 사용합니다.snd_usb_audio

이 옵션은 첫 번째 슬롯(카드 0)이 채워지 slots도록 카드 순서를 수정합니다.snd_usb_audio

/etc/modprobe.d/alsa-base.conf질문에 추가된 옵션을 편집 하고 다음으로 바꿉니다.

options snd slots=snd_usb_audio,snd_hda_intel

고급 Linux 사운드 아키텍처 - 모듈 자동 로딩 지원 Linux 커널 문서 |

관련 정보