November 2019

S M T W T F S
      12
34 5 678 9
10111213141516
17181920212223
24252627282930

Style Credit

Expand Cut Tags

No cut tags
Tuesday, August 30th, 2005 05:10 pm
Debian testing. Ядро 2.6.8. ALSA. xmms запускается, файлы играет. Громкость можно менять. В KDEшном миксере тоже можно.
А родные алсовские amixer и alsamixer не работают. Говорят
amixer: Mixer attach default error: No such file or directory
alsamixer: function snd_ctl_open failed for default: No such file or directory

Чего им не хватает для полного счастья?

Upd: им не хватало /dev/snd/control*
Спасибо [livejournal.com profile] drf_ckoff за наводку. Но я так и не понял, кто должен был эти девайсы создавать, и почему этот кто-то этого не сделал. В MAKEDEV их нет, dpkg_reconfigure libasound2 и alsa-utils их не создают. alsa-config тоже.
Tuesday, August 30th, 2005 04:27 pm (UTC)

crw-rw---- 1 root audio 14, 0 Dec 19 2003 /dev/mixer0
crw-rw---- 1 root audio 14, 16 Dec 19 2003 /dev/mixer1
crw-rw---- 1 root audio 14, 32 Dec 19 2003 /dev/mixer2
crw-rw---- 1 root audio 14, 48 Dec 19 2003 /dev/mixer3

исти?
xmms может и сам звук делать тише/громче. Точнее так: xmms делает звук тише/громче по средством внутреннего софтового усилителя. У меня на машине ползунок в xmms на громкость не влияет, т.к. я использую hardware mixer. Это я к чему: оно у тебя миксер открыть не может :(
У меня SoundBlaster и егойный драйвер сам поддерживает миксер. У тебя железка какая?
Tuesday, August 30th, 2005 04:57 pm (UTC)
crw-rw---- 1 root audio 14, 0 Aug 28 11:19 /dev/mixer
crw-rw---- 1 root audio 14, 16 Aug 28 11:19 /dev/mixer1
crw-rw---- 1 root audio 14, 32 Aug 28 11:19 /dev/mixer2
crw-rw---- 1 root audio 14, 48 Aug 28 11:19 /dev/mixer3

не, когда я менял громкость, это отражалось в ползунке в KDEшном миксере. В смысле, это было не софтовое усиление.

0000:00:1f.5 Multimedia audio controller: Intel Corp. 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Audio Controller (rev 03)
Tuesday, August 30th, 2005 04:34 pm (UTC)
1) Проверить права на /dev/mixer*, /dev/dsp* и /dev/snd*
2) проверить правильность /etc/asound*
Tuesday, August 30th, 2005 04:59 pm (UTC)
crw-rw---- 1 root audio 14, 3 Aug 28 11:19 /dev/dsp
crw-rw---- 1 root audio 14, 19 Aug 28 11:19 /dev/dsp1
crw-rw---- 1 root audio 14, 35 Aug 28 11:19 /dev/dsp2
crw-rw---- 1 root audio 14, 51 Aug 28 11:19 /dev/dsp3
crw-rw---- 1 root audio 14, 0 Aug 28 11:19 /dev/mixer
crw-rw---- 1 root audio 14, 16 Aug 28 11:19 /dev/mixer1
crw-rw---- 1 root audio 14, 32 Aug 28 11:19 /dev/mixer2
crw-rw---- 1 root audio 14, 48 Aug 28 11:19 /dev/mixer3
crw-rw---- 1 root audio 14, 6 Aug 28 11:19 /dev/sndstat

запускал от рута.

/etc/asound* отсутствует
Tuesday, August 30th, 2005 05:36 pm (UTC)
alsaconf пущщал?
что написано в /etc/modprobe.d/sound и /etc/modprobe.d/alsa?
Tuesday, August 30th, 2005 06:09 pm (UTC)
пущал. он совершенно правильно нашел intel 8x0 и нарисовал в /etc/modprobe.d/sound
alias snd-card-0 snd-intel8x0
options snd-intel8x0 index=0
и они грузятся и работают. Кроме миксера :)
Tuesday, August 30th, 2005 07:03 pm (UTC)
у меня в конфиге для и8х0 в качестве миксера, если я ничего не путаю, стоял oss-ны миксер
приползу на работу завтра - гляну
может сохранился
Tuesday, August 30th, 2005 05:30 pm (UTC)
Запустить strace и посмотреть?
Tuesday, August 30th, 2005 06:01 pm (UTC)
stat64("/usr/share/alsa/alsa.conf", {st_mode=S_IFREG|0644, st_size=7467, ...}) = 0
open("/usr/share/alsa/alsa.conf", O_RDONLY) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=7467, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40018000
read(3, "#\n# ALSA library configuration "..., 4096) = 4096
read(3, "if cards.pcm.iec958\npcm.modem ca"..., 4096) = 3371
read(3, "", 4096) = 0
read(3, "", 4096) = 0
close(3) = 0
munmap(0x40018000, 4096) = 0
futex(0x401021b4, FUTEX_WAKE, 2147483647) = 0
access("/etc/asound.conf", R_OK) = -1 ENOENT (No such file or directory)
access("/root/.asoundrc", R_OK) = -1 ENOENT (No such file or directory)
open("/dev/snd/controlC0", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/dev/aloadC0", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/dev/snd/controlC0", O_RDWR) = -1 ENOENT (No such file or directory)
open("/dev/snd/controlC0", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/dev/aloadC0", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/dev/snd/controlC0", O_RDWR) = -1 ENOENT (No such file or directory)
write(2, "amixer: ", 8amixer: ) = 8
write(2, "Mixer attach default error: No s"..., 53Mixer attach default error: No such file or directory) = 53
write(2, "\n", 1
) = 1
exit_group(1) = ?


Wednesday, August 31st, 2005 06:22 am (UTC)
по-моему, у тебя aload должен создаваться при старте.
Wednesday, August 31st, 2005 10:50 am (UTC)
кто такой aload?
В MAKEDEV такого не наблюдается
Wednesday, August 31st, 2005 11:51 am (UTC)
создал aloadC[0-3] и aloadSEQ. Результат неожиданный - миксеры не заработали, зато KDEшный artsd при старте ругается, что не может инициализировать звуковую карту. Но при этом звуки нормально воспроизводятся..
Tuesday, August 30th, 2005 05:51 pm (UTC)
Интересно, а в линуксе нет такого же счастья как Русиновичевские regmon и filemon?
Tuesday, August 30th, 2005 06:02 pm (UTC)
зачем? там есть strace
Tuesday, August 30th, 2005 06:13 pm (UTC)
Ну как бы пофиг как называется :) Главное, что есть :)
Tuesday, August 30th, 2005 06:04 pm (UTC)
strace + grep, плюс иногда gdb - гораздо большее счастье :)

вон, выше вывод strace... Но к пользованию strace нужно вырабатывать навык - не всегда удается, по больше части всё работает сразу :)
Wednesday, August 31st, 2005 08:06 am (UTC)
Почитал, и невольно задумался.
Сам люблю Линукс, но зачем вот так добровольно трахаться?..

Это потом уже мозгом понимаешь, что может оно иногда и в кайф. А поначалу -- чистые эмоции.
Wednesday, August 31st, 2005 09:19 am (UTC)
Дык в том-то и дело, что раньше оно нормально работало. Я переполз с OSS на ALSA несколько лет назад, и никогда никаких проблем не было. А тут такая странность. И что смешно, не работают как раз родные алсовские утилиты, а сторонние вполне себе работают :)
Wednesday, August 31st, 2005 08:20 am (UTC)
alsa-tools или alsa-utils или как там оно у вас зовется - "не той системы". в смысле пользуются alsalib от более древней alsa чем та, что в ядре.
Wednesday, August 31st, 2005 10:27 am (UTC)
Ядро 2.6.8, alsa-utils 1.0.9a-4, libasound2 1.0.9-3. По-моему, они сильно других версий и не бывают. 0.9 не считается.
Wednesday, August 31st, 2005 10:34 am (UTC)
cat /proc/asound/version
alsamixer --version
Wednesday, August 31st, 2005 10:48 am (UTC)
#cat /proc/asound/version
Advanced Linux Sound Architecture Driver Version 1.0.4 (Mon May 17 14:31:44 2004 UTC).
Compiled on Aug 28 2005 for kernel 2.6.8

# alsamixer --version
alsamixer: invalid option -- -
AlsaMixer v1.0.9a
Wednesday, August 31st, 2005 10:51 am (UTC)
Ну вот - по ходу alsalib новей чем надо.
Wednesday, August 31st, 2005 11:12 am (UTC)
А это ничего, что на домашней машине ровно те же версии миксера с библиотеками на таком же Debian testing нормально работают? Разница только в том, что ядро я там собирал в мае, и карта там другая - древний SB16.
Не, похоже, собака где-то в другом месте порылась :(
Wednesday, August 31st, 2005 11:15 am (UTC)
Посмотрел на вывод strace.
open("/dev/snd/controlC0", O_RDONLY) = -1 ENOENT (No such file or directory)
Вот тут и порылась.
Wednesday, August 31st, 2005 11:56 am (UTC)
Шаман, однако :)
Скопировал всю пачку snd/*, и оно заработало. Спасибо.
Остался только вопрос, кто должен был создавать эти девайсы, и почему он их не создал.
Wednesday, August 31st, 2005 11:57 am (UTC)
Ну не знаю, как у вас в дебиане, а у нас:
rpm -qf /dev/snd
dev-3.3.1-alt13
Wednesday, August 31st, 2005 12:06 pm (UTC)
вообще-то,
dpkg -S /dev/snd
но оно ничего не находит. Возможно, они были созданы при скриптом из какого-то пакета при его установке.