Через ALSA звук не выводится

Аватар пользователя DRVTiny

Почему-то у меня с недавних пор только через эмуляцию OSS всё работает (раньше ситуация была обратная: эмуляция OSS не работала, но зато через ALSA звук нормально выводился). Помогите, пожалуйста, разобраться с проблемой, к решению которой, я к сожалению, пока ещё общих подходов не выработал, так что при настройке звука мне каждый раз приходится с бубном плясать и действовать исключительно методом ненаучного тыка.

Более подробное описание проблемы:

У меня 2 звуковых чипа утановлено в системе: в материнскую плату встроен C-Media 8738, а в слот вставлена 1-ая Audigy. Накладки возникают ещё из-за того, что Linux почему-то в первую очередь опознаёт именно C-Media 8738, которым я не пользуюсь.

Все мои конфиги, имеющие отношение к работе sound'а - во вложении.

Вот результаты выполнения некоторых команд:

$ ls /dev/snd/
controlC0  midiC0D0  pcmC0D0p  pcmC0D2p  pcmC1D1p  timer
controlC1  midiC0D1  pcmC0D1c  pcmC1D0c  pcmC1D2c
hwC0D0     pcmC0D0c  pcmC0D2c  pcmC1D0p  pcmC1D2p

$ file /dev/dsp
/dev/dsp: character special (14/3)

$ file /dev/dsp1
/dev/dsp1: character special (14/19)

$ file /dev/mixer
/dev/mixer: character special (14/0)

$ ls /proc/asound/Audigy/
codec97#0     fx8010_gpr        midi0      pcm0p
emu10k1       fx8010_tram_addr  midi1      pcm1c
fx8010_acode  fx8010_tram_data  oss_mixer  pcm2c
fx8010_code   id                pcm0c      pcm2p

$ ls /proc/asound/CMI8738MC6
cmipci  id  oss_mixer  pcm0c  pcm0p  pcm1p  pcm2c  pcm2p

$ uname -r
2.6.11-1.14.1asp

$ cat /etc/asplinux-release
ASPLinux release 10 (Karelia)

Буду очень благодарен за любую информацию по данной теме (я уже устал изрядно от этих бесконечных долбаний со звуком).
Спасибо!

ВложениеРазмер
cfgs_rel2sound.zip5.96 КБ
Аватар пользователя DRVTiny

Re: Через ALSA звук не выводится

Снимок окна микшера KMix (пришлось к нему расширение txt приляпать) - см. прикреплённый файл.

ВложениеРазмер
kmix.jpg.txt 70.5 КБ
Аватар пользователя Archont

Re: Через ALSA звук не выводится

DRVTiny

Цитата:
У меня 2 звуковых чипа утановлено в системе: в материнскую плату встроен C-Media 8738, а в слот вставлена 1-ая Audigy. Накладки возникают ещё из-за того, что Linux почему-то в первую очередь опознаёт именно C-Media 8738, которым я не пользуюсь.

А в БИОС-е выключить встроенный звук нельзя?

Аватар пользователя DRVTiny

Re: Через ALSA звук не выводится

Цитата:
А в БИОС-е выключить встроенный звук нельзя?

Нет, к сожалению. Через BIOS у меня вообще мало что настраивается (дешёвая материнская плата).

Аватар пользователя Archont

Re: Через ALSA звук не выводится

А где же вложения?
И странно, что нет возможности выключить звук в БИОС.
Может быть через управление прерываниями PCI?
Какая мать-то?

Аватар пользователя DRVTiny

Re: Через ALSA звук не выводится

Цитата:
Какая мать-то?

ASUS A7S333 (CPU AMD Athlon(TM) XP 1800+)

Цитата:
А где же вложения?

Т.е. как где? Я же их вижу (см. под моими первыми 2-мя сообщениями)...
Вот ссылки на вложения:
(снимок Kmix) http://asplinux.net/forum
(конфиги) http://asplinux.net/modules/newbb_plus/dl_attachment.php?attach_id=105

Аватар пользователя Archont

Re: Через ALSA звук не выводится

Мать и правда не хвалят, но все-таки ASUS, неужто правда управления железом/прерваниями нет?
Самому искать описание неохота, поэтому может быть стоит удалить описание звука из hwconf, и запустить kudzu с тем, чтобы не разрешить конфигурировать встроенный звук?

А почему владельцы asp-10 не конфигурируют звук при помощи alsaconf?
Или на 10-ке это непозволительно?
Почему бы вам не сохранить ваши конфиги куда подальше, и не сконфигурить все с самого начала (выкинув встроенный звук из конфигуации железа)?

Аватар пользователя DRVTiny

Re: Через ALSA звук не выводится

Цитата:
А почему владельцы asp-10 не конфигурируют звук при помощи alsaconf?
Или на 10-ке это непозволительно?

Это как раз самое интересное. Нету в ASPLinux alsaconf'а! Почему его там нет и как вообще эту утилиту умудрились выкинуть - понятия не имею... Но факт остаётся фактом: в Fedor'е alsaconf есть, в ASPLinux - нема.

Цитата:
Самому искать описание неохота, поэтому может быть стоит удалить описание звука из hwconf, и запустить kudzu с тем, чтобы не разрешить конфигурировать встроенный звук?

На самом деле проблема не в том, что встроенный звук конфигурируется (поскольку он просто как вторая звуковуха выглядит. Хотя на определённом этапе из-за этого были сложности), а в том, что эмуляция OSS через ALSA работает, но сама ALSA - нет.

Аватар пользователя DRVTiny

Re: Через ALSA звук не выводится

Т.е. все приложения, использующие OSS (например, DOOM III Улыбка ), звук выводят на основную звуковуху без проблем.

Аватар пользователя woodoo

Re: Через ALSA звук не выводится

DRVTiny

Цитата:
Т.е. все приложения, использующие OSS (например, DOOM III Улыбка ), звук выводят на основную звуковуху без проблем.

Это может быть связано с тем, что эмуляция oss привязывается к какому-то одному адаптеру (модулю)?

Аватар пользователя sergeil

Re: Через ALSA звук не выводится

DRVTiny

Цитата:
Это как раз самое интересное. Нету в ASPLinux alsaconf'а! Почему его там нет и как вообще эту утилиту умудрились выкинуть - понятия не имею... Но факт остаётся фактом: в Fedor'е alsaconf есть, в ASPLinux - нема.

В ASPLinux-11(beta) тоже не наблюдается. Какие-то ошметки есть, но это исключительно локализации (*.mo) и man-ы для некоторых языков...

Аватар пользователя woodoo

Re: Через ALSA звук не выводится

sergeil

Цитата:
В ASPLinux-11(beta) тоже не наблюдается. Какие-то ошметки есть, но это исключительно локализации (*.mo) и man-ы для некоторых языков...

alsa когда-то позиционировалась как самостоятельная подсистема.
Возможно, это связано с тем, что модули встроены в ядро и конфигурацией заведует кудзу.

Аватар пользователя DRVTiny

Re: Через ALSA звук не выводится

Цитата:
Это может быть связано с тем, что эмуляция oss привязывается к какому-то одному адаптеру (модулю)?

Пожалуйста, повтори эту же мысль (хорошо, что она по существу), но в более доступной форме... О каком модуле/адаптере идёт речь?

Цитата:
и конфигурацией заведует кудзу.

А ещё system-config-soundcard ("Обнаружение звуковой платы") и alsactl.

Аватар пользователя woodoo

Re: Через ALSA звук не выводится

DRVTiny

Цитата:
Пожалуйста, повтори эту же мысль (хорошо, что она по существу), но в более доступной форме... О каком модуле/адаптере идёт речь?

1. У тебя 2 звуковых адаптера.
2. Соответственно, используется 2 alsa-модуля.
3. Соответственно, фактически присутствует 2 alsa-подсистемы с 2 разными "наборами" потоковых файлов. Возможно работает (настроена) "ни одной", "какая-то одна" или "обе" подсистемы. Т.е. здесь нужно проследить всю цепочку настроек от приложения до конечного устройства вывода.
4. Не имею представления, как эмулирована oss. Возможно, эмуляция oss реализована (и работает) только для одной из двух alsa-подсистем. Нужно курить modprobe.conf. Фактически работает одна oss-подсистема и соответствующая ей alsa-половина, а вот вывод на alsa-подсистему по умолчанию происходит на другой... модуль/адаптер (не настроен, не подключены колонки/наушники - все что угодно).

Как результат - oss работает, alsa - нет.

Надеюсь, что и на этот раз "по существу". :thanks:

alsactl не занимается детектом оборудования.

Аватар пользователя lystor

Re: Через ALSA звук не выводится

Я обычно сразу иду на http://alsa-project.org/alsa-doc/ и читаю информацию о своей аудиокарте - есть все что необходимо от сборки ядра до настройки alsa под конкретную аудиокарту/аудиокарты.

Аватар пользователя Archont

Re: Через ALSA звук не выводится

woodoo

Цитата:
1. У тебя 2 звуковых адаптера.
2. Соответственно, используется 2 alsa-модуля.
3. Соответственно, фактически присутствует 2 alsa-подсистемы с 2 разными "наборами" потоковых файлов.

Скорее всего толком не настроены обе, поэтому я и писал, что нужно исключить использование встроенного звука. Если не получается выключить на уровне BIOS, то можно не включать его на этапе определения оборудования KUDZU.

Аватар пользователя DRVTiny

Re: Через ALSA звук не выводится

Цитата:
Скорее всего толком не настроены обе

Ну что значит "скорее всего"? Я же ведь не для того свои конфиги, в том числе и modprobe.conf, выкладывал, чтобы теперь мы долго занимались творчеством, сочиняя собственные догадки и предположения. Неужели так трудно посмотреть эти файлы?!

Цитата:
Если не получается выключить на уровне BIOS, то можно не включать его на этапе определения оборудования KUDZU.

OK, отключил я встроенную C-Media 8738. Но звука-то ведь как не было, так и нет... Вообще мне казалось, что встроенный звук+нормальная карта от Creative на чипе emu10k1 - это довольно распространённая конфигурация, так что я даже удивляюсь тому, что пока ещё никто не выложил здесь свой modprobe.conf...

Аватар пользователя rjaan

Re: Через ALSA звук не выводится

DRVTiny

Цитата:
OK, отключил я встроенную C-Media 8738. Но звука-то ведь как не было, так и нет... Вообще мне казалось, что встроенный звук+нормальная карта от Creative на чипе emu10k1 - это довольно распространённая конфигурация, так что я даже удивляюсь тому, что пока ещё никто не выложил здесь свой modprobe.conf...

На сайте ALSA, есть документ описывающий применения опций к snd-cmipci для чипсета C-Media 8738.

Аватар пользователя woodoo

Re: Через ALSA звук не выводится

DRVTiny

Цитата:
OK, отключил я встроенную C-Media 8738. Но звука-то ведь как не было, так и нет... Вообще мне казалось, что встроенный звук+нормальная карта от Creative на чипе emu10k1 - это довольно распространённая конфигурация, так что я даже удивляюсь тому, что пока ещё никто не выложил здесь свой modprobe.conf...

Вот modprobe.conf c моей рабочей машины (с работающим звуком) [b1249]
Встроенный звук отключен - у меня только одни колонки. Выйду из отпуска и будет время - может, поэкспериментирую с двумя адаптерами.

Цитата:
alias char-major-116 snd
alias char-major-14 soundcore
alias sound-slot-0 snd-card-0
alias sound-service-0-0 snd-mixer-oss
alias sound-service-0-1 snd-seq-oss
alias sound-service-0-3 snd-pcm-oss
alias sound-service-0-8 snd-seq-oss
alias sound-service-0-12 snd-pcm-oss
alias snd-card-0 snd-emu10k1
options snd-card-0 index=0
options snd-emu10k1 index=0
remove snd-emu10k1 { /usr/sbin/alsactl store 0 >/dev/null 2>&1 || : ; }; /sbin/modprobe -r --ignore-remove snd-emu10k1

Прости уж, что "не выложил сразу" - было лентяво по ssh лезть. Ж)

Аватар пользователя sergeil

Re: Через ALSA звук не выводится

DRVTiny

Цитата:
Вообще мне казалось, что встроенный звук+нормальная карта от Creative на чипе emu10k1 - это довольно распространённая конфигурация, так что я даже удивляюсь тому, что пока ещё никто не выложил здесь свой modprobe.conf...

[sergeil@homedesk ~]$ cat /etc/modprobe.conf

alias char-major-116 snd
alias char-major-14 soundcore
alias sound-slot-0 snd-card-0
alias sound-service-0-0 snd-mixer-oss
alias sound-service-0-1 snd-seq-oss
alias sound-service-0-3 snd-pcm-oss
alias sound-service-0-8 snd-seq-oss
alias sound-service-0-12 snd-pcm-oss
alias synth0 snd-emu10k1-synth
alias snd-card-0 snd-emu10k1
options snd-card-0 index=0
options snd-emu10k1 index=0
remove snd-emu10k1 { /usr/sbin/alsactl store 0 >/dev/null 2>&1 || : ; }; /sbin/modprobe -r --ignore-remove snd-emu10k1

А это для миди
[sergeil@homedesk ~]$ cat /etc/rc.d/rc.local.local

#! /bin/sh
/sbin/modprobe synth0
/sbin/modprobe snd-seq-oss
/bin/sfxload /etc/sound/default.SF2

Банки взяты с диска, который идет со звуковой картой

[sergeil@homedesk ~]$ ll /etc/sound/
lrwxrwxrwx 1 root root 19 Янв 28 19:06 default.SF2 -> SFBANK/8MBGMSFX.SF2
drwxrwxr-x 2 root root 1024 Авг 13 21:39 SFBANK
drwxr-xr-x 2 root root 1024 Янв 13 21:52 events

[sergeil@homedesk ~]$ ll /etc/sound/SFBANK/
-r--r--r-- 1 root root 2090170 Ноя 16 1996 2GMGSMT.SF2
-r--r--r-- 1 root root 4174814 Июл 30 1996 4GMGSMT.SF2
-r--r--r-- 1 root root 7572224 Апр 12 1996 8MBGMSFX.SF2
-r--r--r-- 1 root root 2259067 Фев 25 1998 DEFAULT.ECW

Аватар пользователя DRVTiny

Re: Через ALSA звук не выводится

Разобрался я с этой проблемой (все настройки удалил и переинициализировал заново с помощью kudzu и system-config-soundcard). Теперь всё работает (ALSA+OSS).
Огромное спасибо за поддержку!

Кстати, в BIOS встроенный AC97-кодек, оказывается, действительно можно было отключить. Другое дело, что ядро Linux по возможности не использует BIOS для инвентаризации шины PCI и первоначальной конфигурации устройств, так что все эти отключения через BIOS по сути просто бесполезны.

Аватар пользователя DRVTiny

Re: Через ALSA звук не выводится

Цитата:
А это для миди
[sergeil@homedesk ~]$ cat /etc/rc.d/rc.local.local
Код:

#! /bin/sh
/sbin/modprobe synth0
/sbin/modprobe snd-seq-oss
/bin/sfxload /etc/sound/default.SF2

Банки взяты с диска, который идет со звуковой картой

[sergeil@homedesk ~]$ ll /etc/sound/
lrwxrwxrwx 1 root root 19 Янв 28 19:06 default.SF2 -> SFBANK/8MBGMSFX.SF2
drwxrwxr-x 2 root root 1024 Авг 13 21:39 SFBANK
drwxr-xr-x 2 root root 1024 Янв 13 21:52 events

[sergeil@homedesk ~]$ ll /etc/sound/SFBANK/
-r--r--r-- 1 root root 2090170 Ноя 16 1996 2GMGSMT.SF2
-r--r--r-- 1 root root 4174814 Июл 30 1996 4GMGSMT.SF2
-r--r--r-- 1 root root 7572224 Апр 12 1996 8MBGMSFX.SF2
-r--r--r-- 1 root root 2259067 Фев 25 1998 DEFAULT.ECW

Вот, ктстати, за это вообще отдельная благодарность. Sergeil - Вы для меня человек просто незаменимый Улыбка Спасибо!!

Аватар пользователя sergeil

Re: Через ALSA звук не выводится

DRVTiny

Цитата:
Вот, ктстати, за это вообще отдельная благодарность

Ну, чем смог - тем и помог Улыбка
Интересно то, что вопрос по поводу midi очень редко задают. Складывается впечатление, что midi вообще никому не нужно. В свое время я достаточно долго "упражнялся", пытаясь настроить это через /etc/modprobe.conf, но результата так и не добился. Так что, через ... /etc/rc.d/rc.local.local. Не так изящно, как хотелось-бы, но работает...

Аватар пользователя woodoo

Re: Через ALSA звук не выводится

DRVTiny

Цитата:
Теперь всё работает (ALSA+OSS)

Для обоих адаптеров?

Аватар пользователя DRVTiny

Re: Через ALSA звук не выводится

Цитата:
Для обоих адаптеров?

Нет... вроде бы. Вообще не знаю, я же этим довольно примитивным CMI8738 всё равно не пользуюсь, так что...

RSS-материал