Здравствуйте.Решил установить FreeBSD 7.2 в качестве десктопа. Возникли проблемы
со звуком. Проблема заключается в следующем:При воспроизведении музыки через mpg123 в консоли (без иксов и kde)
звук идет тихо с искажениями и только из правой колонки. Кроме того
создается впечатление что правый и левый канал накладываются др.
на друга (хотя не уверен). На фоне звука слышен тихий писк, который
прекращается при окончании воспроизведения.При загрузке kde 4.2.2 проблема сохраняется, причем если пытаться регулировать
громкость в миксере (перемещая ползунок Front) то звук то резко пропадает,
то резко появляется причем его громкость (в моменты появления) не зависит
от положения ползунка (мин./макс.). Это выглядит точь-вточь как
в старом механическом регуляторе грамкости в котором пропадает контакт :)При попытке регулировать громкость ползунком PCM (другими не пробовал) звук
пропадает ВООБЩЕ. И вернуть его можно только перезагрузкой системы.Система определяет звуковую карту как:
#cat /dev/sndstat
FreeBSD Audio Driver (newpcm: 32bit 2007061600/i386)
Installed devices:
pcm0: <HDA Analog Devices AD1986A PCM #0 Analog> at cad 0 nid 1 on hdac0 kld
snd_hda [MPSAFE] (1p:4v/1r:4v channels duplex default)
pcm1: <HDA Analog Devices AD1986A PCM #1 Digital> at cad 0 nid 1 on hdac0 kld
snd_hda [MPSAFE] (1p:1v/0r:0v channels)Раньше у меня на этой же машине (то же железо) стоял DesktopBSD 1.6 и там звук
работал нормально. Устройство определялось как:cat /dev/sndstat
FreeBSD Audio Driver (newpcm)
Installed devices:
pcm0: <VIA VT8251/8237A High Definition Audio Controller> at memory 0xbfffc000
irq 17 kld snd_hda [20071129_0050] (1p/1r/4v channels duplex default)У меня 2 вопроса:
Вопрос 1.
Как мне исправить ситуацию и заставить звук работать нормально? Работал ведь
звук на старой системе!Вопрос 2.
Насколько я понимаю каждый драйвер (snd_hda.ko, snd_cs4281.ko, snd_ds1.ko и
т.д.) поддерживает несколько моделей звуковых карт.
Если предположить что новая система неправильно определяет модель звуковой
карты (и на старой и на новой системе загружался драйвер snd_hda но название
устройств - разные - см. выше) то есть ли возможность определить список
устройств поддерживаемых драйвером snd_hda и ПРИНУДИТЕЛЬНО задать свою
модель звуковой карты а не ту которая определяется автоматически? Как например
это делается в случае с неправильным определением видеокарты?В файлах настройки прописаны сл. инструкции:
/boot/loader.conf :
...
snd_driver_load="YES"
.../etc/sysctl.conf
...
hw.snd.maxautovchans=4
hw.snd.pcm0.vchans=4
...Листинг для новой системы (где проблемы со звуком):
**********************************************************************
sysctl -a | grep sndhw.snd.latency_profile: 1
hw.snd.latency: 5
hw.snd.report_soft_formats: 1
hw.snd.compat_linux_mmap: 0
hw.snd.feeder_buffersize: 16384
hw.snd.feeder_rate_round: 25
hw.snd.feeder_rate_max: 2016000
hw.snd.feeder_rate_min: 1
hw.snd.verbose: 1
hw.snd.maxautovchans: 16
hw.snd.default_unit: 0
hw.snd.version: 2007061600/i386
hw.snd.default_auto: 0
**********************************************************************
sysctl -a | grep pcmdev.pcm.0.чsc: HDA Analog Devices AD1986A PCM #0 Analog
dev.pcm.0.%driver: pcm
dev.pcm.0.%parent: hdac0
dev.pcm.0.play.vchans: 4
dev.pcm.0.play.vchanrate: 48000
dev.pcm.0.play.vchanformat: s16le
dev.pcm.0.rec.vchans: 4
dev.pcm.0.rec.vchanrate: 48000
dev.pcm.0.rec.vchanformat: s16le
dev.pcm.0.buffersize: 16384
dev.pcm.1.чsc: HDA Analog Devices AD1986A PCM #1 Digital
dev.pcm.1.%driver: pcm
dev.pcm.1.%parent: hdac0
dev.pcm.1.play.vchans: 1
dev.pcm.1.play.vchanrate: 48000
dev.pcm.1.play.vchanformat: s16le
dev.pcm.1.buffersize: 16384
**********************************************************************
cat /dev/sndstatFreeBSD Audio Driver (newpcm: 32bit 2007061600/i386)
Installed devices:
pcm0: <HDA Analog Devices AD1986A PCM #0 Analog> at cad 0 nid 1 on
hdac0 kld snd_hda [MPSAFE] (1p:4v/1r:4v channels duplex default)
pcm1: <HDA Analog Devices AD1986A PCM #1 Digital> at cad 0 nid 1 on
hdac0 kld snd_hda [MPSAFE] (1p:1v/0r:0v channels)
**********************************************************************
mixerMixer vol is currently set to 100:100
Mixer pcm is currently set to 75:75
Mixer speaker is currently set to 75:75
Mixer mic is currently set to 0:0
Mixer rec is currently set to 0:0
Mixer ogain is currently set to 50:50
Recording source: mic
**********************************************************************
pciconf -vlc
...
hdac0@pci0:128:1:0: class=0x040300 card=0x81b31043 chip=0x32881106
rev=0x10 hdr=0x00
vendor = 'VIA Technologies Inc'
device = '??? VIA VT8251/8237A High Definition Audio Controller -
HDA Codec Realtek ALC660'
class = multimedia
subclass = HDA
cap 01[50] = powerspec 2 supports D0 D3 current D0
cap 05[60] = MSI supports 1 message, 64 bit
cap 10[70] = PCI-Express 1 type 0
...
**********************************************************************Распечатка для старой системы (где все работало нормально):
**********************************************************************
sysctl -a | grep sndhw.snd.report_soft_formats: 1
hw.snd.targetirqrate: 32
hw.snd.compat_linux_mmap: 0
hw.snd.verbose: 1
hw.snd.maxautovchans: 4
hw.snd.unit: 0
hw.snd.pcm0.buffersize: 16384
hw.snd.pcm0.vchans: 4
**********************************************************************
sysctl -a | grep pcmhw.snd.pcm0.buffersize: 16384
hw.snd.pcm0.vchans: 4
dev.pcm.0.чsc: VIA VT8251/8237A High Definition Audio Controller
dev.pcm.0.%driver: pcm
dev.pcm.0.%location: slot=1 function=0 handle=\_SB_.PCI1.AZAC
dev.pcm.0.%pnpinfo: vendor=0x1106 device=0x3288 subvendor=0x1043
subdevice=0x81b3 class=0x040300
dev.pcm.0.%parent: pci128
dev.pcm.0.wake: 0
dev.pcm.0.polling: 0
dev.pcm.0.polling_interval: 250
**********************************************************************
cat /dev/sndstatFreeBSD Audio Driver (newpcm)
Installed devices:
pcm0: <VIA VT8251/8237A High Definition Audio Controller> at memory
0xbfffc000 irq 17 kld snd_hda [20071129_0050] (1p/1r/4v channels
duplex default)
**********************************************************************
mixerMixer vol is currently set to 100:100
Mixer pcm is currently set to 52:52
Mixer speaker is currently set to 75:75
Mixer mic is currently set to 0:0
Mixer cd is currently set to 75:75
Mixer rec is currently set to 0:0
Recording source: mic
**********************************************************************
pciconf -vlc
...
pcm0@pci128:1:0: class=0x040300 card=0x81b31043 chip=0x32881106
rev=0x10 hdr=0x00
vendor = 'VIA Technologies Inc'
device = '??? VIA VT8251/8237A High Definition Audio Controller -
HDA Codec Realtek ALC660'
class = multimedia
cap 01[50] = powerspec 2 supports D0 D3 current D0
cap 05[60] = MSI supports 1 message, 64 bit
cap 10[70] = PCI-Express 1 type 0
...
**********************************************************************
Такая же проблема была, читал man snd_hda, добился только того что пропал свист в левом канале, звук шел через правый. Потом нашел кое чего вот тут http://www.lissyara.su/?id=1703, но руки так и не дошли, в идоге я скопировал 2 файлика из ядра 7.0 -
snd_hda.ko
snd_hda.ko.symbolsи в итоге у меня все заработало =)
>Такая же проблема была, читал man snd_hda, добился только того что пропал
>свист в левом канале, звук шел через правый. Потом нашел кое
>чего вот тут http://www.lissyara.su/?id=1703, но руки так и не дошли, в
>идоге я скопировал 2 файлика из ядра 7.0 -
>snd_hda.ko
>snd_hda.ko.symbols
>
>и в итоге у меня все заработало =)Гм.. да, я тоже так пытался обмануть систему - тупо копировал файл snd_hda.ko от старой системы (freebsd 6.3) в каталог /boot/kernel новой системы (freebsd 7.2). Но не помогло.
Правда файл snd_hda.ko.symbols скопировать не догадался.По поводу ссылки http://www.lissyara.su/?id=1703. Не понятна ситуация с наушниками. Если я правильно понял - там проблема в том что при втыкании наушников динамики продолжают играть. Странно но мне казалось что за это отвечает телефонный разъем. Когда втыкаешь в него штепсель то там просто контакты переключаются и отключают динамики. Механически. По идее драйвер тут совершенно не причем. Или я не прав? Во всяком случае в моем переносном
приемнике так и сделано: слушаешь динамики. Воткнул телефоны в разъем - динамики
отключились (переключился контакт). Выдернул телефоны - опять подключились динамики.Правда не знаю, как сейчас это делается в ноутбуках - может там все подругому уже.
Но по данной ссылке проблема другая - не та что у меня. У меня звук работает но криво - один канал, писк, не регулируется миксером (сразу пропадает звук). Если это глюк драйвера, то может быть есть возможность его (драйвер) как нибудь пропатчить.
Пересобирать ядро системы по возможности не хотелось бы.
>Такая же проблема была, читал man snd_hda, добился только того что пропал
>свист в левом канале, звук шел через правый. Потом нашел кое
>чего вот тут http://www.lissyara.su/?id=1703, но руки так и не дошли, в
>идоге я скопировал 2 файлика из ядра 7.0 -
>snd_hda.ko
>snd_hda.ko.symbols
>
>и в итоге у меня все заработало =)Насчет файлов из ядра 7.0 - надо попробовать. Только не могу найти (на установочном диске)
файла snd_hda.ko.symbols. Откуда ты его брал?
О! нашел! Файл snd_hda.ko.symbols лежал в установленной системе 7.0 в каталоге
/boot/kernel вместе с файлом snd_hda.ko.Буду пробовать.
УРАААААААА!!! Заработало!Точно! Я взял файлы snd_hda.ko и snd_hda.ko.symbols от freebsd 7.0 и поставил их
вместо родных (на freebsd 7.2) и звук заработал! Отлично!Огромное спасибо! Эх, вот все бы проблемы во фряхе решались так же просто по-виндузячьи ! :)
>УРАААААААА!!! Заработало!
>
>Точно! Я взял файлы snd_hda.ko и snd_hda.ko.symbols от freebsd 7.0 и поставил
>их вместо родных (на freebsd 7.2) и звук заработал! Отлично!А я грешил на KDE4, который свежеустановил.
Что-то у команды разработчиков не ладится со звуком. У меня уже год лежит архив со звуковыми модулами ядра, которые пришлось самому пропатчить под ноут (pavilion).Распаковал, бутнул и вот он чистый звук.
Опеннет как всегда спас.
Господа, может кто-нибудь выложить эти 2 файла куда-нибудь. Ставить 7.0 не хочется. Да и траффика мало.
Выложил пропатченные мной модули для hp pavilion:
http://freebsd.od.ua/download/snd_hda.ko
http://freebsd.od.ua/download/snd_hda.ko.symbols
или
http://freebsd.od.ua/download/snd_module_freebsd70.tar.bz2
Ставим восьмеру и радуемся прежнему писку...
Заменой файликов не лечиться :(Таки надо ковырять глубже. Видимо за нас этого никто не сделает.
Так что ставьте будем бумать вместе как его перебороть ;)
>Ставим восьмеру и радуемся прежнему писку...
>Заменой файликов не лечиться :(
>
>Таки надо ковырять глубже. Видимо за нас этого никто не сделает.
>Так что ставьте будем бумать вместе как его перебороть ;)Ребята, замена файликами лечится. Тока если файлы от 7.0, в версиях ниже не катит.
Спасибо за ссылку земляку :)http://freebsd.od.ua/download/snd_module_freebsd70.tar.bz2
Первые две не работают, а эта то, что надо.
Качайте и ковыряйте.P.S. К слову сказать. Где то было написано что в 7.2 проблема с snd_ich, поставил фрю 7.2 работает все, без руковмешательства.
> Ставим восьмеру и радуемся прежнему писку...
> Заменой файликов не лечиться :(
> Таки надо ковырять глубже. Видимо за нас этого никто не сделает.
> Так что ставьте будем бумать вместе как его перебороть ;)Скажу даже больше: при замене файлов, их система не может рапознать (наверное старая версия), а поменяв еще и модуль sound.so - систмема просто падает :(
Александр Мотин посоветовал проникнуться маном по snd_hda.
Для тех кто понимает русский выложил перевод - http://lib.misto.kiev.ua/MAMBURUNIX/snd_hda.txtПонемногу приходит просветление
ТС, спасибо за созданную тему>Александр Мотин посоветовал проникнуться маном по snd_hda.
>Для тех кто понимает русский выложил перевод - http://lib.misto.kiev.ua/MAMBURUNIX/snd_hda.txt
>
>Понемногу приходит просветлениеmambur, извините, у вас получилось убрать это искажение как написано в первом посте?
так а вчем проболема искажения? я что-то не понял...
FreeBSD x0.org.ua 8.0-CURRENT FreeBSD 8.0-CURRENT #1: Fri Jun 19 03:10:26 EEST 2009cat /dev/sndstat
FreeBSD Audio Driver (newpcm: 32bit 2007061600/i386)
Installed devices:
pcm0: <Intel ICH5 (82801EB)> at io 0xfc001000, 0xfc002000 irq 17 bufsz 16384 [MPSAFE] (1p:2v/1r:1v channels duplex default)
При последнем обновлении мира(8.0-STABLE) проблема с писком ликвидировалась на домашней машинке. И звук исчез абсолютно (при том же обновлении) на рабочей машинке.
и мой драйвер Intel ICH5 все таки snd_ich(4)
>и мой драйвер Intel ICH5 все таки snd_ich(4)mambur, вы имеете ввиду что у Вас не получилось сделать исправить это?
та я вот тоже думаю что со звуком на FreeBSD что-то проблематично накрутили, надо наверное FreeBSD 6.2 поставить :)
>mambur, вы имеете ввиду что у Вас не получилось сделать исправить это?Исправили коммитеры драйвера, поэтому мне не пришлось ковыряться в нем самостоятельно.
>та я вот тоже думаю что со звуком на FreeBSD что-то проблематично
>накрутили, надо наверное FreeBSD 6.2 поставить :)Автор snd_hda рассказывал, что очень много плюшек смог нарисовать в драйвере, чего не позволяла старая архитектура. Вот только надо разобраться в новых механизмах, а это время на изучение манов и время для экспериментов.
тут вот написано что они переписали подсистемы еще в FreeBSD 8.0 CURRENT
http://people.freebsd.org/~ariff/SOUND_4.TXT.html
вот: http://www.linux.org.ru/news/bsd/3769495/page1там очень много настроек появилось, а как это все настроить теперь - сабака его знает :)