unixforum.org

у меня сгорело гнездо выхода звука. поэтому не долго думая (в windows) я включаю RTHDCPL.exe и меняю программно линейных вход на звук. и звук заработал (конешно при каждой загрузке приходиться эту процедуру делать ыыы)
ну вот подошла очередь для линукса и тут ступор. шо делать и как делать не знаю. может кто-то знает? подскажите пожалуйста как это все организовать.
Realtek ALC883 @ Intel 82801GB ICH7 — High Definition Audio Controller [A-1]

Спасибо сказали:
kreator Сообщения: 384 ОС: LFS
Re: как поменять местами гнезда программно?
Сообщение kreator » 13.03.2009 01:34
Нужно изменить конфиг alsa. Подробности — http://alsa.opensrc.org/index.php/.asoundrc (Default PCM device)
Спасибо сказали:
Sergic Сообщения: 26 ОС: Win Xp Sp3, open SUSE 11.1
Re: как поменять местами гнезда программно?
Сообщение Sergic » 13.03.2009 13:24
читал читал. но понял, что если я возьмусь за это, будет беда. и даже не знаю, с чего начать
ну это сделаю
The .asoundrc file is typically installed in a user’s home directory ($HOME/.asoundrc)
а дальше без понятия, какую конфигурацию туда втулять
в очередной раз вижу, что линукс для простых пользователей пока ещё отдален.
есть может gui программы для настройки конфигурации?

Спасибо сказали:
kreator Сообщения: 384 ОС: LFS
Re: как поменять местами гнезда программно?
Сообщение kreator » 14.03.2009 02:51
Default PCM device
Using aplay -L you can get a List of existing PCM output devices. If you want the default to be, for example, a USB Device instead of the onboard sound, you can place a pcm.!default line in the .asoundrc Say aplay -L lists something like
front:CARD=External,DEV=0
SB Live! 24-bit External, USB Audio
Front speakers
you can put the following line in your .asoundrc
As a result, most if not all applications will now use this device for output unless specified otherwise. The same applies for self-defined devices, as shown below.
1. Пишем в консоли aplay -L
2. Смотрим в какое устройство мы хотим выводить звук.
3. Создаем в домашней директории файл .asoundrc, в котором пишем куда выводить звук по умолчанию.
Например:
pcm.!default rear
Спасибо сказали:
Sergic Сообщения: 26 ОС: Win Xp Sp3, open SUSE 11.1
Re: как поменять местами гнезда программно?
Сообщение Sergic » 17.03.2009 12:04
нашел в инете вот это
pcm.f2r type plug
slave.pcm surround51:nForce2 # slave.channels 6
ttable 0.2 1 #front left to rear left
1.3 1 #front right to rear right
>
>
можете расписать за что каждая строка отвечает?
короче методом тыка тыкал в aplay -d hw:0,0 test.wav и т.п. и писал в asoundrc
pcm.!default front:Intel (только в этом варианте звук выводился но на стандартное гнездо звука)
pcm.!default surround41:Intel
surround50 .
но в line in не поступало сигнала
короче я понимаю так
допустим создаем виртульные девайс ppc
в конце файла пишем
pcm.!default ppc
а с начала начинаем мутить как бы звук перекинуть на линейный вход.
pcm.ppc type plug
slave.pcm front:Intel
.
так вот как обозначить этот линейный вход? а как запихнуть в линейный вход звук?
я просто начинаю сооброжать но толком ешо не расчехлился

Спасибо сказали:
kreator Сообщения: 384 ОС: LFS
Re: как поменять местами гнезда программно?
Сообщение kreator » 19.03.2009 02:46
pcm.f2r < type plug slave.pcm surround51:nForce2 # >
Это для многоканального звука. Для стерео всё гораздо проще. Должна была подойти строчка, которую я привел как пример.
Для начала нужно найти устройство в которое хотим вывести звук:
aplay -d rear test.wav
aplay -d center_lfe test.wav
aplay -d side test.wav
aplay -d hw:0,1 test.wav
aplay -d hw:0,2 test.wav
aplay -d hw:0,3 test.wav
Если глухо, подымаем в alsamixer всё что можем
Если и это не помагло, нужен вывод aplay -L
Спасибо сказали:
Sergic Сообщения: 26 ОС: Win Xp Sp3, open SUSE 11.1
Re: как поменять местами гнезда программно?
Сообщение Sergic » 21.03.2009 13:35
ниче не выводит. одно помогло — указал в системе мол у меня 4,0 канальная, тода и вывело на линейный вход звук.

Спасибо сказали:
nickback Сообщения: 2 ОС: Debian lenny
Re: как поменять местами гнезда программно?
Сообщение nickback » 30.07.2009 02:35
Доброго времени суток.
у меня проблема.. не работает гнездо для выхода звука.. не хочется ковырятся в материнке.. надо програмно поменять гнездо выхода..
помогите кто чем может все перечисленные способы не помогли.
Для начала нужно найти устройство в которое хотим вывести звук:
aplay -d rear test.wav
aplay -d center_lfe test.wav
aplay -d side test.wav
aplay -d hw:0,1 test.wav
aplay -d hw:0,2 test.wav
aplay -d hw:0,3 test.wav
Если глухо, подымаем в alsamixer всё что можем smile.gif
Если и это не помагло, нужен вывод aplay -L
нету ни звука..
переключение на 4 канальный звук не помогает..
default:CARD=CK804
NVidia CK804, NVidia CK804
Default Audio Device
front:CARD=CK804,DEV=0
NVidia CK804, NVidia CK804
Front speakers
surround40:CARD=CK804,DEV=0
NVidia CK804, NVidia CK804
4.0 Surround output to Front and Rear speakers
surround41:CARD=CK804,DEV=0
NVidia CK804, NVidia CK804
4.1 Surround output to Front, Rear and Subwoofer speakers
surround50:CARD=CK804,DEV=0
NVidia CK804, NVidia CK804
5.0 Surround output to Front, Center and Rear speakers
surround51:CARD=CK804,DEV=0
NVidia CK804, NVidia CK804
5.1 Surround output to Front, Center, Rear and Subwoofer speakers
null
Discard all samples (playback) or generate zero samples (capture)
default:CARD=Camera
USB 2.0 Camera, USB Audio
Default Audio Device
front:CARD=Camera,DEV=0
USB 2.0 Camera, USB Audio
Front speakers
surround40:CARD=Camera,DEV=0
USB 2.0 Camera, USB Audio
4.0 Surround output to Front and Rear speakers
surround41:CARD=Camera,DEV=0
USB 2.0 Camera, USB Audio
4.1 Surround output to Front, Rear and Subwoofer speakers
surround50:CARD=Camera,DEV=0
USB 2.0 Camera, USB Audio
5.0 Surround output to Front, Center and Rear speakers
surround51:CARD=Camera,DEV=0
USB 2.0 Camera, USB Audio
5.1 Surround output to Front, Center, Rear and Subwoofer speakers
surround71:CARD=Camera,DEV=0
USB 2.0 Camera, USB Audio
7.1 Surround output to Front, Center, Side, Rear and Woofer speakers
iec958:CARD=Camera,DEV=0
USB 2.0 Camera, USB Audio
IEC958 (S/PDIF) Digital Audio Output
default:CARD=UART
MPU-401 UART
Default Audio Device
в Виндовсе работает а в Дебиане не могу поменять
Does ALSA buffer size have a hardware-defined upper limit?
I have a Raspberry Pi with an i2s MEMS mic attached. I’m recording audio from it, using the SOX library, and trying to increase my ALSA buffer_size. My ALSA buffer_size is currently 65536, but I want to increase this. Is there any theoretical limit to the buffer size? How large can it be? Thanks!
user2989813
asked Mar 24, 2017 at 21:14
user2989813 user2989813
283 1 1 gold badge 5 5 silver badges 17 17 bronze badges
1 Answer 1
The theoretical limit is 2^32 frames. But the practical limit is whatever your hardware actually supports.
To read the current maximum buffer size, call snd_pcm_hw_params_get_buffer_size_max() («current» because it might be constrained by other hardware parameters, such as the sample rate or number of channels).
answered Mar 24, 2017 at 21:37
176k 17 17 gold badges 223 223 silver badges 264 264 bronze badges
- audio
- raspberry-pi
- mp3
- alsa
-
The Overflow Blog
Related
Hot Network Questions
Subscribe to RSS
Question feed
To subscribe to this RSS feed, copy and paste this URL into your RSS reader.
Site design / logo © 2024 Stack Exchange Inc; user contributions licensed under CC BY-SA . rev 2024.1.3.2953
By clicking “Accept all cookies”, you agree Stack Exchange can store cookies on your device and disclose information in accordance with our Cookie Policy.
arch, alsa, нет звука на displayPort’е
сейчас по новой накатил рач, и вот что имею (c воткнутым displayPort’ом):
$ aplay -L null Discard all samples (playback) or generate zero samples (capture) default:CARD=PCH HDA Intel PCH, ALC887-VD Analog Default Audio Device sysdefault:CARD=PCH HDA Intel PCH, ALC887-VD Analog Default Audio Device front:CARD=PCH,DEV=0 HDA Intel PCH, ALC887-VD Analog Front output / input surround21:CARD=PCH,DEV=0 HDA Intel PCH, ALC887-VD Analog 2.1 Surround output to Front and Subwoofer speakers surround40:CARD=PCH,DEV=0 HDA Intel PCH, ALC887-VD Analog 4.0 Surround output to Front and Rear speakers surround41:CARD=PCH,DEV=0 HDA Intel PCH, ALC887-VD Analog 4.1 Surround output to Front, Rear and Subwoofer speakers surround50:CARD=PCH,DEV=0 HDA Intel PCH, ALC887-VD Analog 5.0 Surround output to Front, Center and Rear speakers surround51:CARD=PCH,DEV=0 HDA Intel PCH, ALC887-VD Analog 5.1 Surround output to Front, Center, Rear and Subwoofer speakers surround71:CARD=PCH,DEV=0 HDA Intel PCH, ALC887-VD Analog 7.1 Surround output to Front, Center, Side, Rear and Woofer speakers hdmi:CARD=HDMI,DEV=0 HDA ATI HDMI, HDMI 0 HDMI Audio Output hdmi:CARD=HDMI,DEV=1 HDA ATI HDMI, HDMI 1 HDMI Audio Output hdmi:CARD=HDMI,DEV=2 HDA ATI HDMI, HDMI 2 HDMI Audio Output hdmi:CARD=HDMI,DEV=3 HDA ATI HDMI, HDMI 3 HDMI Audio Output hdmi:CARD=HDMI,DEV=4 HDA ATI HDMI, HDMI 4 HDMI Audio Output
$ aplay -l **** List of PLAYBACK Hardware Devices **** card 0: PCH [HDA Intel PCH], device 0: ALC887-VD Analog [ALC887-VD Analog] Subdevices: 1/1 Subdevice #0: subdevice #0 card 1: HDMI [HDA ATI HDMI], device 3: HDMI 0 [HDMI 0] Subdevices: 1/1 Subdevice #0: subdevice #0 card 1: HDMI [HDA ATI HDMI], device 7: HDMI 1 [HDMI 1] Subdevices: 1/1 Subdevice #0: subdevice #0 card 1: HDMI [HDA ATI HDMI], device 8: HDMI 2 [HDMI 2] Subdevices: 1/1 Subdevice #0: subdevice #0 card 1: HDMI [HDA ATI HDMI], device 9: HDMI 3 [HDMI 3] Subdevices: 1/1 Subdevice #0: subdevice #0 card 1: HDMI [HDA ATI HDMI], device 10: HDMI 4 [HDMI 4] Subdevices: 1/1 Subdevice #0: subdevice #0
/etc/asound.conf — нету ~/.asound.conf — тоже
в alsamixer’е, что странно, при смене аудиокарты на default:1 HDA ATI HDMI (второй выбор — default:0 Realtec ALC887-VD) столбики неактивны. Ну т.е. совсем. По умолчанию они были замутены, но после unmute’а по центру просто OO в квадратиках. Выше должны быть столбики, но их нет
ещё что-то не так со speaker-test’ом. Говорит, что память выделить не может
$ speaker-test -c2 -Dhdmi:CARD=HDMI,DEV=0 speaker-test 1.2.5.1 Playback device is hdmi:CARD=HDMI,DEV=0 Stream parameters are 48000Hz, S16_LE, 2 channels Using 16 octaves of pink noise Rate set to 48000Hz (requested 48000Hz) Buffer size range from 64 to 8544000 Period size range from 32 to 4272000 Using max buffer size 8544000 Periods = 4 Unable to set hw params for playback: Cannot allocate memory Setting of hwparams failed: Cannot allocate memory
видюха у меня rx460, с дровами не колдовал, ставился по минимуму
Настройка e-mu 0204 usb в ubuntu GNU/linux
Пару дней назад купил я себе внешнюю звуковую карту e-mu 0204. Купил с рук, за 2 т.р. Владелец был счастлив, я то же. Оба думали, что надули друг друга. Стоит железка в магазине 4,5 т.р. Принес домой подрубил, звук сказочный. Но, обнаружился косяк. В непредсказуемые моменты времени слышны были тихие пощелкивания и перерывы звука. У меня отличные наушники ATH-SJ55. Соответствуют карточке по уровню, непонятно почему это вдруг началось. Разбираемся как исправить. Да, сразу отмечу, все эти проблемы описаны в инструкции. Так что весь ор вокруг карточки говорит лишь о том, что орущие просто ее не открывали. Инструкции у меня в комплекте не было, я в интернете ее позже нашел. Все настройки в статье все равно понадобятся.
Я конечно слышал о проблемах с картой и попробовал применить описанный в куче мест способ проигрывания звукового файла с тишиной что бы занять канал и вроде как щелчки должны исчезнуть так как «карта перестанет переходить в режим энергосбережения». Что я только не начитался, даже то, что ей питания не хватает и надо внешний usb хаб купить с отдельным блоком питания. Все это не помогло (хаб не пробовал, да и в позже прочитанной инструкции они прямо противопоказаны).
Залез в настройки pulseaudio. В железке есть аппаратный буфер, куда кладутся данные после оцифровки. Звуковой системе компа надо в него класть звук, вообще через него идет общение звуковухи и компа что бы звук не прерывался (туда то и надо смотреть).
Если на компе неверно настроены параметры работы с буфером, будут щелчки. Это я выяснил путем ковыряния настроек и чтения форумов с расчетом значения этих параметров. Второй из здесь описанных вариантов настройки возможно подойдет и для винды, так как есть сборка jackd для нее, кажется. Хотя в винде можно наверное и по другому настроить. На линуксе все проще. Сначала добавим себя в группу audio:
usermod -a -G audio theusername
Оно надо что бы добавить пользователя theusername в группу audio так как без этого сервер jackd и pulsaudio не сумеет выделять память и стартовать в режиме реального времени в случае настройки с ним. Далее настройки могут разниться.
Вариант первый, простой:
Я сломал всю башку прежде чем сумел настроить все это в линуксе и вообще понять в чем дело, сначала уже расстраиваться начал. Кстати, первым, попробуйте выбрать более простой ресемплер и больше ничего. Все проблемы с артефактами в звуке упираются в производительность компа и к звуковухе не имеют ровно никакого отношения. Самый простой способ сделать так что бы комп поспевал генерить звук это как раз сменить ресемплер на более простой. Хотя, что стоило производителю включить в комплект инструкцию? Может быть она и была, я с рук интерфейс брал. Тем, кто захочет настроить, смотреть в /etc/pulse/daemon.conf
#будет работать только если вы в группу audio себя добавили.Причем сначала стоит просто попробовать только этот параметр, высока #вероятность, что все просто заработает. realtime-scheduling = yes #можно и другие значения попробовать realtime-priority = 10 #запрещаем закрывать демон, если он не используется allow-exit = no exit-idle-time = -1 #тут можно и что то поменьше или получше, зависит от машины, у меня i7 четырех ядерный, он не заметит, а слабая машина ляжет #причем если я ставил src-sinc-best-quality то требовались долгие манипуляции с настройками и все равно ничего толком не помогало #то есть это главный параметр! resample-method = src-sinc-medium-quality #битность общения с звуковухой default-sample-format = s24le #в пульсе ресамплинг проходит весь звук, так как источники имеют зачастую разную частоту дискретизации и по другому никак микшер не сделать #я поставил максимум частоты default-sample-rate = 192000 alternate-sample-rate = 192000 #Эти параметры можно крутить именно о их настройки написано на вышеприведенном форуме, но поставив более простой метод ресемплинга, мне это не понадобилось (в начале все же крутил, потом закомментировал) ;default-fragments = 4 ;default-fragment-size-msec = 3
Еще возможно надо залазить в: /etc/pulse/default.pa
И там поставить:
load-module module-udev-detect use_ucm=0 tsched=0
load-module module-udev-detect use_ucm=0
После установки более простого метода ресемплера, мне эти настройки не понадобились. Сначала стоит попробовать без этого параметра, так как работать скорее всего будет и без него, зато без него нагрузка на процессор даже на самом лучшем ресемплере будет невысокой. Собственно низкой нагрузкой на процессор и хорош этот вариант настройки в целом. Вместе с tsched=0 все работает стабильнее, при этом надо понимать, что при этом параметре возрастет нагрузка на процессор от pulseaudio. Это, кстати, убьет все преимущества пульсы перед алсой, но настраивать алсу мне лень, а щелчки без пульсы те же.
Щелчки останутся только при старте компа (когда карта включается), небольшие, да еще при подключении очередного клиента к звуковухе. Описывать настройку pulseaudio для слабого компа я тут не стану, суть в том, что ресемплер надо попроще поставить и приоритет pulseaudio поднять. Нужно отметить, что этот метод настройки сильно зависит от производительности компа. Если у вас на процессоре плавает частота (ondemand планировщик) то иногда производительности может не хватать и будут артефакты в звуке. Есть и более интересный способ настройки, по моим наблюдениям он намного стабильнее и качественнее.
Вариант второй, кошерный:
В /etc/pulse/daemon.conf
#с этим методом спокойно и без косяков работает самый классный ресемплер resample-method = src-sinc-best-quality default-sample-format = s24le #в пульсе ресамплинг проходит весь звук, так как источники имеют зачастую разную частоту дискретизации и по другому никак микшер не сделать #но я поставил максимум частоты default-sample-rate = 192000 alternate-sample-rate = 192000
Остальное по умолчанию. Даже tsched=0 не ставим! Пользователям skype у которых он хрипит при старте, думаю то же это решение подойдет. Проблема в skype в том, что частота дискретизации файла, который он проигрывает на старте, не совпадает с частотой ресемплера, вот и хрипит и на многих карточках. Наша же карточка то претендует на начальный уровень профессиональных, так что вообще то логично, что она рассчитана на профессиональный софт. В общем, едем дальше.
Ставите jackd, в нем настраиваете количество выборок в буфере 1024 и количество периодов на буфер 2 (можно покрутить и другие варианты этих значений если щелкает, так как буфер настраивается в зависимости от конкретного компа и его возможностей). Минимальное количество выборок 128 для данной карты, а количество периодов на буфер 2, можно поэкспериментировать.
В зависимости о того запустите ли вы jackd в режиме реального времени или нет, буфер может быть разный. По сути это те же параметры буфера, что и в pulseaudio, только в их исходном виде, а не расчетные. Ориентироваться в верности можно на сообщения о рассинхронизации, их надо что бы было 0, хотя в режиме реального времени на этот и так не слишком надежный показатель ориентироваться вообще нельзя, остается просто на слух. Это в qjackctl в окне сообщений найдете, вкладка статус, ее то же надо установить, так же эти числа есть и в окне статуса в главной панели.
Так же обратите внимание на режим запуска jackd, в реальном времени или нет, стоит попробовать оба и посмотреть как будет вести себя звук под нагрузкой компа. Если выставите режим реального времени, не забудьте поставить для pulseaudio то же режим реального времени (в том же daemon.conf):
realtime-scheduling = yes realtime-priority = 5

Только приоритет пульсы должен быть меньше чем у jackd. По умолчанию jackd запускается с приоритетом 10.
В общем окно настроек у меня выглядит так:
Обратите внимание на параметр «Тайм аут», если вас раздражают небольшие артефакты при повторном подключении клиентов (например если звука долго не было, а потом вы включили музыку), то можно там выставить время пока jackd будет держать канал. Например минуту. Это приведет к постоянной загрузке процессора, зато окажет тот же эффект, что и проигрывание файла с тишиной. Но, это если артефакты вообще останутся после настройки. Я сравнивал, встроенная карточка на моем ноуте работает точно так же, немного дергаясь при переключении мелодий в проигрывателе, что вполне логично, так просто слышится резкое прекращение звука или начало нового не с нулевой громкости (без fade in/out). Так что не стоит предъявлять невероятных требований там, где это не нужно.
Потом pulseaudio заставляете выводить через jackd звук, путем добавления команды, которая выполняется после старта jackd.
Команда
pacmd set-default-sink jack_out
Это то же в параметрах qjackctl задается. Теперь pulsaudio работает микшером и результат выводит в jackd, который напрямую льет звук в alsa драйвер и через него в железку.
В конечном итоге я просто взял qjackctl да поставил в автозагрузку, настроив все параметры в ней. В отличии от pulseaudio параметры работы с буфером понятны и расчетов не требуют, а так же очевидно влияют на работу.
Щелчки исчезнут, звук будет чистый, шелковистый. Причем всегда, во всяком случае я пока не слышал больше щелчков ни под нагрузкой, нигде, даже при воспроизведении нескольких звуковых источников из разных мест и подключении разных клиентов к звуковухе.
UPD №1: Так же я крутил latency I/O, но вразумительных результатов не получил, помимо этого указав конкретно, что надо два канала вывода. Я подробно не лез, вроде бы latency I/O задает некоторый учет задержек внутри самой звуковухи, туда можно загнать и значительно большие значения. Но, это уже просто ковыряние настроек из любопытства. Оказалось, что хорошая звуковуха и наушники, имеют свои недостатки, я теперь слышу даже совсем мелкие косяки в звуке, а звуковая паранойя, заработанная за день разбирательств с настройками, приводит к тому, что непонятно, то ли это в самой исходной записи косяк, то ли буфер подкрутить. Хотя качество звука превосходное все время.
UPD №2: Нашел отличный обзор карточки. В нем есть параметры буферов и задержек для нее. Что может послужить основой для более точной настройки.
RightMark Audio Analyzer 6.2.3 PRO
Device: ASIO E-MU 0204 | USB
Features:
Input channels: 2
Output channels: 4
Input latency: 440
Output latency: 440
Min buffer size: 88
Max buffer size: 22000
Preferred buffer size: 440
Granularity: 44
Features:
Input channels: 2
Output channels: 2
Input latency: 2138
Output latency: 2714
Min buffer size: 384
Max buffer size: 96000
Preferred buffer size: 1920
Granularity: 192
Features:
Input channels: 4
Output channels: 4
Input latency: 22083
Output latency: 22216
Min buffer size: 88
Max buffer size: 22000
Preferred buffer size: 22000
Granularity: 44
Обратите внимания на размеры буфера! Вот почему у 0202, 0404 проблем нет, а у 0204 есть! В случае с 0404 буфер такой же как у 0204, но она сообщает «Preferred buffer size: 22000» то есть сама говорит, по протоколу, что буфер надо пользовать на всю катушку сразу, потому настройка не требуется. Вот поэтому и требуется настройка 0204, на мой любительский взгляд, так как она говорит софту на компе «Preferred buffer size: 440». Но, опять же, зато гляньте на latancy, она зависит от параметров буфера, так что 0404 такую задержку имеет потому, что буфер 22000 предлагает, а предлагает она его для перестраховки, так как профи перенастроит по своему если надо. Настройка вполне себе приводит карту в отличное состояние. У производителей других карт (и этой серии в том числе) расчет был вероятно такой «выставим буфер на максимум, если задержки пользователь не заметит, отлично, зато буфера хватит, если заметит, сам знает где настроить, раз заметил». Расчет, как выясняется, верный.
UPD №3: Найдена великолепная статья с раскладыванием всего по полкам, что связано с буферами. Да, и не забывайте, ресемплер тратит ресурсы процессора, значит от того какой тип ресемплера вы выберете будет зависеть максимальная нагрузка на проц, если вы переборщите, то при ресемплинге нескольких источников, проца не хватит и будут рассинхронизации, а значит щелчки. В общем меру надо знать.
UPD №4: ВНИМАНИЕ. Я нашел простое решение! Читать инструкцию 🙂 В ней написано про эти буфера и про гул, что возникает у некоторых (там есть специальные переключатели на дне что бы гул убирать). В общем не знаешь, что делать, читай инструкцию! 🙂 У меня в комплекте ее не было, вот и возился, иначе сразу бы прочел. А те, кто орет о недостатках просто ее не читали. 🙂 Правда, надо признать, софт под винды для карточки вероятно так себе, судя по отзывам, я сам его не видел.
UPD №5: Для пользователей линукс дополнительно сообщу, что можно настроить все в чистой алсе и еще ссылка. Так как 0404 и 0204 очень похожи, скорее всего инструкция подойдет и в данном случае, но, я не проверял, как я и говорил, возится мне лень. Плюс к всему, я не спец так что могу ошибиться, судя по тому, что нагрузка на процессор при моих настройках меняется в зависимости от того какая частота дискретизации у исходного звукового файла, значит передискретизацию записи в 192000 не проходят и звук выводится в таком виде на карту. Это значит, что инструкция по вышеприведенным ссылкам и вывод через чистую alsa не так и совершенны по сравнению с выводом с помощью pulseaudio+jackd+alsa. Несовершенны с очки зрения простоты настройки конечно. Но, вам решать. Правда надо отметить, что с момента написания инструкции по этим ссылкам alsa совершенствовалась и у меня устройство вообще автоматом просто заработало, только с щелчками. Так что настроить dmix и буфера скорее всего несложно и просто в alsa.
UPD №6:
Найден самый простой способ настройки из всех вышеперечисленных. Достаточно поставить частоту дискретизации 88200 и все пашет при обычной pulseaudio. Частота выставляется в вышеприведенных настройках… если вас конечно такая устроит. Меня устроила, чем проще, тем лучше.
UPD №7:
В убунте 14.04 проблем больше просто нет. Но. Я использую нормализацию звука, может быть дело в этом. Потому оставлю здесь метод нормализации звука в Pulseaudio:
Ставите пакеты с ladspa плагинами. Какой конретно я не знаю, я просто поставил все по поиску, они маленькие и ставятся в одну папку.
Добавляем в конец файла /etc/pulse/default.pa несколько строк
1. load-module module-ladspa-sink sink_name=ladspa_output.dysonCompress master=0 sink_properties=device.description=«Compress» plugin=dyson_compress_1403 label=dysonCompress control=-9.0,1,0.5,0.7
Эта строка загружает модуль нормализации звука. Нормализация не позволяет громкости звука прыгать резко и как следствие меня бесить 🙂
2. set-default-sink 2
Номер 2 у меня потому, что мне надо включить нужную звуковуху по умолчанию, что бы руками это не делать.
3. set-sink-volume 2 40000
Настраиваем громкость на серединку, опять же что бы не подпрыгивать когда первый звук в наушниках зазвучит.
В результате может поэтому, может потому, что софт дорос, никаких косяков в работе звуковухи нет даже без других настроек, да и нормализация скорее всего не нужна, но мне удобно с ней.