LINUX.ORG.RU

ALSA странно работает с динамиками.

 ,


0

2

Всем привет! Собственно, проблема такая. Звук не хочет играться через ноутбучные динамики без включенного Loopback Mixing и размьюченного канала для наушников. Причем, когда я подключаю наушники, то канал для динамиков, как и положено, выключается, но звук при этом продолжает идти и через наушники и через динамики.

Дистрибутив — gentoo. В ядре все, что нужно включено (делал по генту-вики, и принципе-то все работает, только странно), в use-флагах альса прописана, alsa-utils, alsasound установлены.

Из конфигов только .asoundrc, где прописано, что пульс устройство по дефолту (без него работало так же, просто я наивно полагал, что пульс волшебным образом решит мои проблемы):

pcm.!default {
    type pulse
    hint.description "Default Audio Device"
}
ctl.!default {
    type pulse
}
#defaults.pcm.!card Generic
#defaults.pcm.!device 0
pcm.pulse {
    type pulse
}
ctl.pulse {
    type pulse
}

Вот на всяки случай конфиг ядра. Вдруг я что-то недовключил или включил не то.

Карты видит две штуки

| 0 [HDMI           ]: HDA-Intel - HDA ATI HDMI             │
│                      HDA ATI HDMI at 0xf0444000 irq 36    │
│ 1 [Generic        ]: HDA-Intel - HD-Audio Generic         │
│                      HD-Audio Generic at 0xf0440000 irq 16│

Как лечить? Какую еще информацию сообщить?

попробуй в опциях драйверу указать конкретную модель звуковухи. см. список моделей в доках ядра для драйвера. иногда ещё нужно дополнительно разводить левые-правые каналы матрицами в .asoundrc, как описано в вики по алсе.

Iron_Bug ★★★★ ()
Ответ на: комментарий от Iron_Bug

попробуй в опциях драйверу указать конкретную модель звуковухи. см. список моделей в доках ядра для драйвера

Конкретно своей модели я не нашел, но карточка вроде как полностью совместима с hda-intel (неправильно выразился, наверное, но ты понял, короче).

иногда ещё нужно дополнительно разводить левые-правые каналы матрицами в .asoundrc

А вот это похоже на решение моих проблем. Видимо да, динамики почему-то считаются за левый или правый наушник, потому и не работает без размьюченного наушникового канала. Да и при включенных динамиках в наушниках такой звук, будто только левый или правый канал в них играет. Спасибо, буду копать в эту сторону.

gejzenbug ()
Ответ на: комментарий от gejzenbug

Конкретно своей модели я не нашел, но карточка вроде как полностью совместима с hda-intel

Ты не понял, у драйвера hda-intel есть опция model - там можно указать конкретную модель, если автодетект сработал криво.

pinkbyte@phantom ~ $ modinfo snd_hda_intel | grep model
parm:           model:Use the given board model. (array of charp)

Кури ну хотя бы вот это руководство, там же сказано где искать полный список поддерживаемых моделей

Pinkbyte ★★★★★ ()
Последнее исправление: Pinkbyte (всего исправлений: 2)

Всё, проблему решил, поэтому отчитываюсь. Если коротко, я сам дурак, начал включать/выключать неизвестные мне штуки в алсамиксере и тем самым из ничего сотворил себе проблему.

Как мне и советовали, сначала попробовал указать модель. Начал с модели auto, что вообще говоря бессмысленно, потому что, как я понял, эта модель стоит по-умолчанию (то есть инфа о карте берется из биоса). Но я ее поставил, перезапустился, ииии всё заработало как нужно. То есть при включении наушников звук шёл на них, при отключении на динамики. Но всё ломалось, как только я включал Loopback Mixing, и не возвращалось назад.

Судя по названию, и по тому, что прочитал в интернетах, эта опция может быть использована, чтобы, например, подать звук с динамиков на микрофон. Почему это ломает мне звук в системе (динамики вдруг решают, что они наушники и издают звук лишь когда канал headphone размьючен и loopback mixing включен)? Я не знаю.

Еще раз спасибо за помощь. А если кто объяснит, что за лупбэк миксинг и отчего он это делает, то буду рад и благодарен вдвойне.

gejzenbug ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.