From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: From: Sergey Stepanov To: hardware@altlinux.ru Subject: Re[2]: [Hardware] =?koi8-r?Q?=EB=C1=CB=20=D7=CB=CC=C0=DE=C9=D4=D8=20=DA=C1=D0=C9=D3=D8=20=D3=20=CD=C9=CB=D2=CF=C6=CF=CE=C1=3F?= Mime-Version: 1.0 X-Mailer: mPOP Web-Mail 2.19 X-Originating-IP: unknown via proxy [195.68.167.125] Date: Fri, 23 Dec 2005 17:15:16 +0300 In-Reply-To: <43AAD9BA.10505@mail.ru> Content-Type: text/plain; charset=koi8-r Content-Transfer-Encoding: 8bit Message-Id: Cc: X-BeenThere: hardware@lists.altlinux.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: hardware@altlinux.ru, Sergey Stepanov List-Id: ALT Linux hardware support List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 23 Dec 2005 14:15:32 -0000 Archived-At: List-Archive: List-Post: Господа, проблема разрешилась, но добавилась новая! Итак, по порядку. Заработала нормальная запись звука с микрофона. Исходное - имеем встроенную звуковушку AC97 VIA82xx, надо заставить работать воспроизведение и запись. 1. При установке ALT Master 2.4, автоматически ставятся драйвера ALSA. По человечески они не работают, звук заикается, звуковушка проигрывает маленькие кусочки звука по нескольку раз. При этом в файле /ect/modules.conf прописаны следующие строчки above snd-via82xx snd-pcm-oss above snd-pcm-oss snd-mixer-oss alias char-major-116 snd alias char-major-14 soundcore 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-via82xx alias sound-slot-0 snd-via82xx Попытки настроить вручную, путем добавлением различных строчек в стиле option ... dxs_support, ни к чему хорошему не приводят. 2. Переключение на драйвера OSS, сразу решает проблемму воспроизведения. Переключение на OSS произвести просто. Надо заменить строчки инициализации ALSA драйвера в /etc/modules.conf, на строчки инициализации OSS драйвера: above via82cxxx_audio snd-pcm-oss above snd-pcm-oss snd-mixer-oss alias sound-slot-0 via82cxxx_audio Сразу начинает нормально работать воспроизведение звука, и о дальнейшей настройке можно забыть, если к тому же нормально работает и запись с микрофона/линейного входа. Мне с этим делом не повезло. При записи с микрофона, я нормально слышу себя в наушниках, но вот записываемый сигнал представляет собой низкочастотный гул, именуемый в просторечьи "пердёж". 3. Проблемму я никогда бы не решил, еслиб не знакомый гуру, который рассказал, что у него была подобная проблема. ALSA, как он думал, с его карточкой нормально не работала, в OSS работало только воспроизведение. А решилось все программой alsaconf, которая сама ставит ALSA драйвера, и делает нужные правильные настройки. Но программа эта не идет в комплекте с драйверами, ее надо откудато брать, он уже не помнит откуда, но помнит что просто так ее не запустить, потому что эта программа устанавливается в какой-то левый каталог. Я попробовал #alsaconf - мимо, в стандартных путях ее нет. #/sbin/alsaconf - мимо. Включил поиск, и нашел ее как #/usr/sbin/alsaconf. Запустил программу, она изменила /etc/modules.conf, и все заработало! Заработало воспроизведение - без заикания, и заработала запись. В /etc/modules.conf строчки иниализации стали такими above via82cxxx_audio snd-pcm-oss above snd-pcm-oss snd-mixer-oss alias char-major-116 snd alias char-major-14 soundcore 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-via82xx alias sound-slot-0 snd-via82xx Кстати, я тут вижу несоответствие - прогамма alsaconf настроила OSS драйвера! Разница между пунктами 1 и 3 - только в первой строчке. Обратите внимание, используется драйвер via82cxxx_audio, а это, насколько я понимаю, - драйвер OSS... (Кто-нибудь, объясните, какие драйвера у меня сейчас нстроены?!) Самое интересное, что это работает. Ура. Однако теперь появилась другая проблема. Теперь у меня наблюдается большая латентность звука. Латентность раза в три длинее, чем при настройке OSS (пункт 2). (Вкратце, латентность - это дискретность длины звука. Другими словами, если звук оказался короче, чем длина некоторого буфера, то звуковая подсистема будет считать, что звук закончился не в момент его физического окончания, а в момент, когда закончится буфер. Поэтому, если взять программу, которая проигравает друг за другом короткие звуки - запускает проигрывание следующего звука при обнаружении окончания предыдущего, то между звуками мы услышим паузы. Чем латентность выше - тем паузы больше). Вопрос - как уменьшить латентность? Где и как это можно настроить? Вопрос не праздный - если я не настрою нормальную латентность, придется снова перейти на OSS (веду разработку, и должен слышать, как программа работает с маленькой латентностью), а на OSS с микрофоном не поработаешь и прощай Skype. :) Со всяческими пожеланиями, Сергей. http://xi.net.ru