Рейтинг:1

Основная звуковая карта не обнаружена alsamixer

флаг ru

Я установил Ubuntu 20.04 на свой компьютер. Мой экран имеет встроенные динамики. Звук идет только через динамики моего экрана, которые подключены через HDMI.Они недостаточно мощные, и я хочу подключить свои динамики к основному выходу. В настройках звука у меня нет другого варианта вывода, и Ubuntu не может распознать мою родную звуковую карту даже на alsamixer.

Это результат lspci -v | grep -A7 -i "аудио":

00:1f.3 Мультимедийный аудиоконтроллер: Intel Corporation Cannon Point-LP High Definition Audio Controller (версия 30)
    Имя устройства: встроенный — звук
    Подсистема: Intel Corporation Cannon Point-LP High Definition Audio Controller
    Флаги: bus master, fast devsel, latency 32, IRQ 139
    Память на уровне a1338000 (64-разрядная, без предварительной выборки) [размер = 16 КБ]
    Память на уровне a1000000 (64-разрядная, без предварительной выборки) [размер = 1M]
    Возможности: <доступ запрещен>
    Используемый драйвер ядра: snd_hda_intel
    Модули ядра: snd_hda_intel, snd_sof_pci

играть -l:

**** Список аппаратных устройств ВОСПРОИЗВЕДЕНИЯ ****
карта 0: PCH [HDA Intel PCH], устройство 3: HDMI 0 [HDMI 0]
  Подустройства: 1/1
  Подустройство №0: подустройство №0
карта 0: PCH [HDA Intel PCH], устройство 7: HDMI 1 [HDMI 1]
  Подустройства: 1/1
  Подустройство №0: подустройство №0
карта 0: PCH [HDA Intel PCH], устройство 8: HDMI 2 [HDMI 2]
  Подустройства: 1/1
  Подустройство №0: подустройство №0
карта 0: PCH [HDA Intel PCH], устройство 9: HDMI 3 [HDMI 3]
  Подустройства: 1/1
  Подустройство №0: подустройство №0
карта 0: PCH [HDA Intel PCH], устройство 10: HDMI 4 [HDMI 4]
  Подустройства: 1/1
  Подустройство №0: подустройство №0

В конце моего /etc/modprobe.d/alsa-base.conf:

    # Предотвратить захват аномальными драйверами индекса 0
    опции bt87x index=-2
    опции cx88_alsa index=-2
    опции индекс saa7134-alsa=-2
    опции 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
    # Ubuntu #62691, включите MPU для snd-cmipci
    опции snd-cmipci mpu_port=0x330 fm_port=0x388
    # Запретить загрузку snd-pcsp в качестве первой звуковой карты
    опции snd-pcsp index=-2
    # Не позволяйте snd-usb-audio загружаться как первая звуковая карта
    параметры snd-usb-audio index=-2

Вот что показывает мой alsamixer, если я пытаюсь выбрать другую звуковую карту: введите описание изображения здесь

Я знаю, что мой вопрос дублируется, но я пробовал много предложений в Интернете, ни одно из которых не сработало для меня.

Рейтинг:0
флаг pk

Вторая карта также должна быть указана/загружена. Для нежелательный HDMI-устройства Я использовал модуль pci_stub для получения Audio-Device перед загрузкой snd-modules. После добавления строки, которую вы должны выполнить обновление-инитрамфс-у если я правильно помню.

Чтобы использовать pci_stub-Module на вашем нежелательный Звуковая карта, вы должны получить PCI-Vendor-Info с lspci -nn. В моем случае это было следующее

lspci -nn |grep -i аудио
01:00.1 Аудиоустройство [0403]: Аудиоконтроллер высокой четкости NVIDIA Corporation TU116 [10de:1aeb] (rev a1)
06:00.0 Аудиоустройство [0403]: Creative Labs Sound Core3D [Sound Blaster Recon3D / Z-Series] [1102:0012] (версия 01)

Поскольку я хочу избавиться от «аудиокарты» с моего графического процессора, требуемый идентификатор - «10de: 1aeb». Затем вы ставите идентификаторы pci_stub = 10de: 1aeb в файле /etc/initramfs-tools/модули.

Модули списка в этом файле будут загружены до автоматической загрузки модулей, когда устройство обычно получает правильный модуль/драйвер. ids=10de:1aeb или в вашем случае необходима какая-то другая строка, чтобы была выбрана правильная PCI-карта (думаю, без нее она даже не работает), которая затем, через модуль pci_stub, будет заблокирована от ' автозагрузка» правильного модуля «snd-*». И поэтому никакое устройство /dev/snd/hwXYZ не будет создано, и alsa не распознает его как звуковую карту.

lspci -s 01:00.01 -v
01:00.1 Аудиоустройство: NVIDIA Corporation TU116 High Definition Audio Controller (rev a1)
    Подсистема: Gigabyte Technology Co., Ltd TU116 High Definition Audio Controller
    Флаги: bus master, fast devsel, latency 0, IRQ 10, IOMMU group 1
    Память в df080000 (32-разрядная, без предварительной выборки) [размер = 16 КБ]
    Возможности: [60] Управление питанием версии 3
    Возможности: [68] MSI: Enable- Count=1/1 Maskable- 64bit+
    Возможности: [78] Express Endpoint, MSI 00
    Возможности: [100] Расширенные отчеты об ошибках
    Используемый драйвер ядра: pci-stub
    Модули ядра: snd_hda_intel

Здесь вы можете увидеть «Используемый драйвер ядра».

И в результате блокировка NVIDIA-CARD я распознал только одну карту

играть -l
**** Список аппаратных устройств ВОСПРОИЗВЕДЕНИЯ ****
карта 0: Creative [HDA Creative], устройство 0: ALC898 Analog [ALC898 Analog]
  Подустройства: 0/1
  Подустройство №0: подустройство №0

Это не непосредственно ваша проблема, но, возможно, это поможет. :-)

В моем случае звук работал, но переключение аппаратных идентификаторов для alsa и тому подобное... ..*********.. на моих дисплеях даже нет динамиков..

флаг ru
Спасибо за ваш ответ. Не могли бы вы объяснить свой ответ подробнее? Я не продвинутый пользователь Linux.
crpb avatar
флаг pk
Думаю, так и должно быть.
crpb avatar
флаг pk
Или я понимаю ваш вывод «lspci |grep» сейчас, как будто вторая карта даже не распознается вашей системой?

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.