LINUX.ORG.RU

xanmod... рвет linux-rt в low-latency аудио задачах???

 , , , ,


3

5

Я в шоке…

Годами, буквально годами пытаюсь получить минимальную задержку при обработке аудио на ноутбуке с jack, а теперь и с pipewire.

Платформа - Sandy Bridge, встроенное аудио Realtek ALC272.

Всегда считал нормой для этого ноутбука буфер 48000 Гц / 256 семплов (5,3 мс задержка) (кто в теме то поймет что это). Тут на ЛОРе мне много раз писали что это совсем не круто. Да я и на слух слышу задержку при игре на гитаре. Это все на обычном ядре, дефолтном в дистрибутивах. При меньшем буфере стабильно не работает.

Периодически я решал озаботиться улучшением, первое что советуют везде - использовать linux_rt вместо обычного ядра. Это немного улучшало ситуацию, можно было получить вдвое меньшую задержку 48000/128 (2,7 мс). Но не очень стабильно. Это - тоже совсем не айс!

И вот, чисто случайно, без объявления войны, я ставлю NixOS и в нем ядро xanmod 5.14. Происходит какая-то мистика!

Я выставляю 48000 / 64 (это уже 1.3 миллисекунды задержки). Все гранитно стабильно!

Выставляю 48000 / 32 (тридцать два, Карл!) - работает! Иногда похрюкивает.

КАК???? Это вообще законно??

Вопрос у меня вот в чем - как именно в xanmod так выходит, какие опции, или модификации, могут повлиять на то что стало вот так?

ИТАК

Пожалуй подведу окончательные итоги.

  1. Практически все широко распространенные в сети рекомендации надо читать навыворот. Почему - отдельный вопрос.

  2. Лучше всего для обеспечения low-latency при работе с аудио подходит обычное, общего назначения ядро. Даже ванильное ядро с kernel.org может обеспечить экстремально низкую задержку на моем музейном железе.

  3. Ядро linux_rt подходит заметно хуже. Я не знаю почему. Видимо оно для совсем других задач, а то что оно работало со звуком лучше - дела давно минувших дней. Современные версии обычного ядра работают лучше.

  4. Рекомендации по настройке ядра, по CONFIG_HZ, PREEMPT - можно выполнять, можно нет. Низкая задержка достижима с любыми вариантами этих настроек.

  5. Желательно собирать ядро с минимальной конфигурацией. по-видимому я столкнулся с тем, что на конфигурации от Arch Linux на моем железе что-то лишнее мешало.

★★★★

Последнее исправление: James_Holden (всего исправлений: 3)

Годами, буквально годами пытаюсь получить минимальную задержку при обработке аудио на ноутбуке с jack, а теперь и с pipewire.

А не пробовал на рипер перейти? Там ни jack, ни pipewire не нужны - напрямую через alsa работает

annulen ★★★★★
()
Ответ на: комментарий от annulen

Пробовал в том числе, и ardour через alsa напрямую работает тоже - все то же самое.

James_Holden ★★★★
() автор топика
Ответ на: комментарий от pingvinek

И монопольно захватывает аудиоустройство так что другие приложения становятся немыми.

И это хорошо

annulen ★★★★★
()
Ответ на: комментарий от pingvinek

Линукс как он есть лол

А в других ОС типа как-то иначе? Везде DAW монопольно захватывает, ЕМНИП. В линуксе как раз с этим лучше.

James_Holden ★★★★
() автор топика
Ответ на: комментарий от James_Holden

А в других ОС типа как-то иначе?

Другой конфиг ядра и прочие другие настройки.

anonymous
()
Ответ на: комментарий от James_Holden

Везде DAW монопольно захватывает, ЕМНИП.

Щас запустил Sonar сквозь ASIO на десяточке, ютуба в лисе как гавкала, так и гавкает.

thesis ★★★★★
()
Ответ на: комментарий от James_Holden

А в других ОС типа как-то иначе? Везде DAW монопольно захватывает, ЕМНИП. В линуксе как раз с этим лучше.

Час назад играл через конвольвер в cakewalk, параллельно слушал ютуб в браузере.
Если два ASIO-приложения запустить, думаю, тоже работать будет, если каждому свои каналы отдать. Но надо пробовать. Венда.

ist76 ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.