Please purchase a sound card and install it!"). Покопавшись в коде, я нашёл примерно такой фрагмент (вставил отладочную печать):
Код:
#define OK printf ("\E[32;40m\E[1m[OK]\n"); system ("tput sgr0")
#define FAIL {printf ("\E[31;40m\E[1m[]\n"); system ("tput sgr0"); continue;}
if ((fd = open(result.gl_pathv[i], O_RDWR, 0)) == -1) FAIL;
OK; printf ("Изучение поддерживаемых каналов...\t\t");
if (ioctl(fd, SOUND_MIXER_READ_DEVMASK, &mask_mixer) == -1) FAIL;
OK; printf ("Проверка наличия канала микрофона...\t\t");
if (!(mask_mixer & SOUND_MASK_MIC)) FAIL;
OK; printf ("Изучение списка каналов для приёма звука...\t");
if (ioctl(fd, SOUND_MIXER_READ_RECMASK, &mask_mixer) == -1) FAIL;
OK; printf ("Проверка возможностей записи микрофона...\t");
if (!(mask_mixer & SOUND_MASK_MIC)) FAIL; //Вот здесь ошибка
OK; printf ("Устройство добавлено в список подходящих");
Вывод этого куска кода в консоль:
Код:
Проверка возможностей микшера /dev/mixer... [Всего 5]
Права доступа к устройству... [OK]
Изучение поддерживаемых каналов... [OK]
Проверка наличия канала микрофона... [OK]
Изучение списка каналов для приёма звука... [OK]
Проверка возможностей записи микрофона... []
Последняя проверка не проходит, то есть доступ к микшеру есть, канал микрофона доступен, а возможность записи с микрофона отключена - если я правильно понял документацию.
В kmix я включил все найденные каналы записи, в draksound написано, что используется драйвер alsa, skype слышит звук нормально; в alsamixer 'capture facility' включена (нажатием по кнопке "пробел" - громкость 70%).
Я почитал справку в draksound и выполнил написанные там команды:
Код:
#lspcidrake -v | fgrep -i AUDIO
snd_hda_intel : Intel Corporation|82801H (ICH8 Family) HD Audio Controller (vendor:8086 device:284b subv:1043 subd:81
# grep sound-slot /etc/modprobe.conf
# /sbin/chkconfig --list sound
sound 0:выкл 1:выкл 2:вкл 3:вкл 4:вкл 5:вкл 6:выкл
# /sbin/chkconfig --list alsa
alsa 0:выкл 1:выкл 2:вкл 3:вкл 4:вкл 5:вкл 6:выкл
# aumix -q
vol 100, 100
line 58, 58
mic 54, 54
cd 66, 66
pcm2 100, 100
igain 70, 70
dig1 100, 100, P
phout 0, 0
Однако же ни microphone_config, ни "запись звука" в kde4 не могут считать что-либо с микрофона.
Ядро вот такое:
gluk47@teapot
$ uname -r
2.6.27.7-desktop-1mnb
Что можно сделать, чтобы микрофон подключить - вот так, через ioctl?