LINUX.ORG.RU

Гитара + Linux + СПО: быстрое руководство 2025

 , , ,


9

5

Рассмотрим сначала базовую задачу — как играть, при использовании преимущественно СПО. Про запись гитары, и про коммерческое ПО - возможно, будет отдельно.

Итак, у вас есть гитара, и вы хотите использовать компьютер как гитарный процессор для нее, вместо гитарного комбика. Что надо знать, актуальный список пунктов на 2025 год:

  1. Подключение гитары.

    1. Встроенная карта компьютера имеет только вход под электретный микрофон (самый дешевый «для скайпа»), и, если повезет, линейный вход. Ни то, ни другое не подходит для подключения гитары! Вы можете подключить гитару в эти входы, и что-то даже будет звучать, но звук будет сильно ухудшен по сравнению с нормальным подключением к гитарному (инструментальному) входу. Можно немного улучшить ситуацию, спаяв предусилитель, согласующий гитару и микрофонный вход. Гуглите: «истоковый повторитель для гитары», «DI-box для гитары».

    2. Для нормального подключения гитары, нужен аудио-интерфейс (дискретная звуковая карта) с инструментальным входом. С ним гитара будет работать как надо из коробки. Настоятельно рекомендуется этот вариант. На 2025 год, самые базовые и дешевые, но безусловно качественные варианты: Focusrite Scarlett Solo 4gen, Arturia MiniFuse1. Обе эти карты из коробки работают в Linux (воткнул и расчесывай гитару).

  2. Обеспечение низких задержек при обработке звука. Если вы хотите именно играть через компьютер, то нужно добиться минимальной задержки между входным и выходным сигналом звуковой карты. Основные положения, которые надо знать:

    1. Для игры на гитаре, при игре в наушниках через компьютер, необходима задержка не более 5 мс. Это соответствует задержке при игре через традиционный аналоговый комбик, который стоит в 1.5 метрах от вас. Более высокая величина задержки будет мешать попадать точно в ритм и ровно играть быстрые пассажи. Для начинающего гитариста, высокая задержка может стать сильным барьером к росту техники игры. К этому надо отнестись очень серьезно!

    2. Для Linux систем, задержка <5 мс является серьезным вызовом. Заставить систему работать с такой низкой задержкой не так просто, тут надо применить некоторые танцы с бубном! НО — возможно что у вас реально мощная производительная система, и задержка уровня 5 мс будет достигнута легко, в таком случае дальнейшие пункты вам могут показаться преувеличением. Сразу говорю, что пишу со слабой системы для слабых систем! Поехали:

    3. Многочисленные руководства по снижению задержки, которые можно найти в интернете, зачастую устарели на 20 лет, поэтому лучше к ним относиться скептически.

      1. Установка linux-rt ядра: оно предназначено для других задач, не для аудио с низкими задержками! На 2025 год, его использование кроме проблем ничего не даст. В то же время, обычное общего назначения ядро Linux, давно улучшено для аудио задач, и может давать очень низкие задержки аудио!

      2. Не все дистрибутивные ядра одинаково хороши! Например, штатное ядро Arch Linux у меня не может работать с приемлемым уровнем задержки. А ванильное ядро с kernel.org, без каких-либо дистрибутивных патчей - работает без нареканий. Поэтому требуется подбор ядра, для вашей системы! Я рекомендую пробовать сразу ванильное LTS ядро Linux, без дистрибутивных патчей. В Arch Linux в репозитории есть LTS ядро, оно практически ванильное и нам подходит. Также, хорошо себя показывает ядро Xanmod. Не RT!

      3. Широко распространено мнение, что для низких задержек обязательно надо ставить и использовать JACK или Pipewire. Это не всегда так. Pipewire и JACK это отдельные процессы от приложения, которое обрабатывает гитарный звук. Поэтому требуются дополнительные затраты на переключение контекста, если вы выводите звук через JACK либо Pipewire. Это, само по себе, явно не положительным образом сказывается на минимально достижимой задержке! Поэтому, для достижения максимально низкой задержки, надо не добавить, а исключить все дополнительные прослойки между приложением и звуковой картой! Приложение должно работать поверх чистой ALSA, но тут есть несколько нюансов.

        1. Есть Ardour и Reaper, и в них очень хорошо реализована работа поверх ALSA и JACK/Pipewire с экстремально низкими задержками. Лучше сразу пробовать работать в этих программах, и использовать этот результат как основу для сравнения с другими вариантами. С другими приложениями, минимально достижимая задержка может быть выше. Надо пробовать и сравнивать.

        2. Правильные настройки приложения-хоста для достижения минимальной задержки. Важно! Этот пункт сначала лучше пропустить, и проверить что будет без этих настроек. Если стабильная работа с частотой дискретизации 96000 Гц и буфером 64 семпла не достигается, можно пробовать сделать следующее:

          1. Надо правильно настроить Ardour. В его настройках, есть раздел Производительность, там надо включить: 1) использование только одного ядра процессора 2) Управление питанием: Lowest (prevent CPU sleep states) 3) Что делать с обработчиками: Использовать FlushToZero и DenormalsAreZero.

          2. Настройки Reaper. Открываем диалог Reaper Preferences. Находим в в дереве настроек Audio / Buffering. Настройка Allow live FX Multiprocessing On: 4 CPUs. Отключаем или уменьшаем количество CPU.

        3. При создании проекта в Ardour/Reaper, выбираем бэкенд ALSA, количество периодов — лучше 3, далее подбираем размер буфера, минимальный при котором будет без глюков воспроизводиться звук. Для игры на гитаре, нужно добиться хотя бы вариантов 96000 Гц / 128 семплов, 48000 Гц / 64 семпла. Лучше — вдвое меньше семплов.

        4. При работе Ardour или Reaper на ALSA, он полностью захватит звуковую карту и другие приложения ничего воспроизводить не смогут! С этим придется мириться и сложно бороться, потому что только исключив все побочное, можно добиться минимальной, экстремально низкой задержки. У проблемы есть два основных решения. 1) если у внешней аудиокарты есть несколько входов и аппаратный микшер, можно подать кабелем туда звук со встроенной аудио карты, работающей с высокой задержкой. 2) Можно использовать Pipewire (также JACK, но в 2025 году уже смысла для Ardour в нем нет). Вот именно для этого и начинает быть нужен Pipewire — если вам надо воспроизводить звук из другого приложения кроме Ardour, и при этом задержка должна оставаться минимально возможной!

        5. Если Ardour работает поверх Pipewire, он будет использовать все звуковые карты которые у вас есть! То есть, как внешнюю так и встроенную! А встроенная, мягко скажем, с низкими задержками может совсем плохо работать, и все порушит. Поэтому, может иметь смысл отключение встроенной аудио карты. Отключить ее можно через конфигурацию wireplumber, как это сделать в настоящий момент времени — лучше искать в Arch Wiki по Wireplumber, там есть пункт где написано как отключить карту. Отключаем встроенную карту, оставляем только внешнюю.

        6. Если Ardour запускать поверх Pipewire, он просто подхватит все дефолтные настройки сервера Pipewire (частота дискретизации, буфер). Зачастую, это не то что нужно, поэтому до запуска Ardour надо изменить параметры Pipewire командами (ставим частоту дискретизации 96000 Гц и буфер 128 семплов).

        pw-metadata -n settings 0 clock.force-rate 96000
        pw-metadata -n settings 0 clock.force-quantum 128
        
      4. Враги низкой задержки — найти и уничтожить! Список:

        1. Любые тяжелые приложения, прежде всего браузеры — сразу закрываем. Должно работать только системное окружение, Ardour, и плеер из которого воспроизводится минусовка. Конечно, очень хочется минусовку запускать прямо с Youtube, но - это сильный удар по задержке.

        2. Сеть и Wifi! Особенно вайфай. Сильно вредит. Отключаем его путем выгруза модуля ядра драйвера Wifi карты:

        sudo modprobe -r ath9k
        
        1. Энергосбережение. Отключаем все энергосбережение, до чего можно и железо дает дотянуться. Прежде всего вот так:
        sudo cpupower frequency-set -g performance
        

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

  1. Прежде всего, это руководство ориентировано на свободные программные решения. Они и будут описаны дальше. Но, как мы все понимаем, это одна из узкопрофессиональных не-программистских сфер, и здесь свободные решения зачастую сильно проигрывают коммерческим решениям, с точки зрения пользователя. Если для вас недостаточно перечисленных дальше свободных проектов, используйте проприетарные DAW и плагины, которых под Linux сейчас доступно большое количество. Их обзор выходит за рамки этого руководства (я сторонник использования СПО). Итак, что прежде всего стоит опробовать из СПО решений:

    1. В основном, для формирования звука нам понадобятся плагины. Есть несколько универсальных форматов плагинов, все эти плагины подходят к любому приложению-хосту, который поддерживает соответствующий стандарт. Основные форматы плагинов - это LADSPA, LV2, VST2, VST3. Часто, одни и те же плагины доступны сразу в нескольких форматах. Для использования плагинов, понадобится сначала выбрать приложение-хост, в которое плагины будут добавляться. Здесь есть два типа приложений-хостов:

      1. Педалборд, патчборд, модульный хост, модульный синтезатор, или модульная DAW. Может называться по-разному, для гитариста проще всего объяснить, что это эмулятор педалборда. То есть такое пространство, куда можно добавлять плагины-педали и соединять их кабелями любым нужным образом, а потом управлять по MIDI работой этих плагинов.

        1. Из свободных решений, ближе всего к такому - MOD Desktop. Отличный графический интерфейс, правда, это веб-интерфейс)) 200+ плагинов внутри. Есть гитарные нейро-усилители AIDA-X и NAM среди них. Также в принципе все эффекты, которые нужны для гитары.

        2. Можно использовать Carla, туда можно загружать плагины во всех основных форматах, но у нее нет удобного GUI для управления соединениями между плагинами, и есть проблемы с низким уровнем задержки.

        3. Можно использовать Bespoke, есть развитый GUI и удобный патчинг, правда у него направленность больше на модульный синтез.

      2. DAW (Digital Audio Workstation) общего назначения. С первого взгляда кажется, что это хуже и не так удобно, как использовать специализированные для живой игры программы-педалборды. Но у DAW есть серьезное преимущество - они имеют хорошие аудио-движки, оптимизированные для работы с экстремально низкими задержками. Они также поддерживают все основные форматы плагинов, и они поддерживают управление всем по MIDI. Основное отличие при работе с DAW - надо организовывать плагины не в виде свободного графа соединений, как в педалборде, а в виде последовательных цепочек на разных дорожках DAW. Также к преимуществам можно отнести, что в DAW вы сразу же можете и записывать гитару, а не только играть. В DAW легко воспроизводить минусовку, добавив ее в виде дорожки. Какие DAW рассмотреть для начала:

        1. Ardour - это лидер среди свободных DAW. Вызывает некоторые нарекания по сравнению с крутыми коммерческими DAW, прежде всего в задачах редактирования MIDI партий, но в качестве хоста плагинов для живой игры на гитаре, базовой записи и сведения результата - вполне годится (если вы не Abbey Road). Все остальные СПО DAW решения, пожалуй, будут еще хуже для этой задачи.

        2. Qtractor - вторая по «масштабу» свободная DAW. Точно так же может использоваться, но она имеет меньше возможностей и пользовательской базы, чем Ardour. Попробовать ее однозначно стоит тоже.

        3. Reaper - это коммерческая DAW, но мы ее тоже здесь упомянем, очень уж она хороша! Это очень легкая по размеру и потреблению ресурсов, но функционально развитая и удобная DAW. Как и Ardour, имеет развитые настройки движка для обеспечения минимальной задержки, работает как с ALSA, так и с JACK/Pipewire. Reaper лучше чем Ardour, но это не СПО и он стоит денег.

        4. Другие коммерческие DAW. Они есть, но их обзор уже за рамками этого руководства.

  2. Теперь рассмотрим наборы плагинов, которые можно использовать с перечисленными выше хостами. Снова делаем упор на СПО решения.

    1. Набор плагинов KPP (https://github.com/olegkapitonov/Kapitonov-Plugins-Pack). Есть в репах основных дистрибутивов. Это непосредственно базовые гитарные плагины, поддерживают профили гитарного усилителя, позволяющие одним плагином имитировать практически любую модель комбика с любым типом звучания. К ним есть приложение tubeAmp Designer там же, оно позволяет создавать профили, и даже обмерять тестовым сигналом усилители и копировать их звучание.

    2. Набор плагинов Guitarix LV2. Есть в репах дистрибутивов. Проект известнейший с большой историей. Есть отдельное приложение Guitarix, но я рекомендую использовать именно DAW систему (Ardour, Reaper) и плагины в ней, потому что DAW системы эффективнее работают со звуковой картой в вопросе минимальной задержки.

    3. Нейро-плагины. Есть как минимум три свободных проекта плагинов гитарного усилителя, с моделированием нейросетями. Это AIDA-X, SmartGuitarAmp, Chamelon.

    4. Общие наборы плагинов LV2, VST для Linux. Могут понадобиться для дополнительных эффектов/обработки.

    5. Свободные и проприетарные плагины можно искать здесь: https://linuxdaw.org/ https://linuxmusic.rocks/

    6. Хоть исходники и не доступны (я не нахожу), но очень интересный проект, задается схема гитарного усилителя, и она моделируется: https://nalexplugins.blogspot.com/

Список будет продолжаться, актуализироваться, исправляться…

★★★★

Проверено: CrX ()
Последнее исправление: James_Holden (всего исправлений: 11)
Ответ на: комментарий от James_Holden

Он не медленный, он быстрый, даже избыточно
Но вот начать мгновенно обсчитывать он не может, да
То есть вычислительная мощность у нас огромная, а вот лаг до того, как эта мощность выдаст результат - он тут как тут

ist76 ★★★★★
()

Дай бог здоровья за гайд. Как раз решил прикупить гитару и попробовать научиться играть.

Behem0th ★★★★★
()

надо применить некоторые танцы с бубном

Вот так и появляются руководства, к которым «лучше относиться скептически». Как выглядит вся цепочка обработки звука, что в ней является узким местом, от чего зависит и как это правильно померить - тема крайне интересная, но об этом ни слова. Только УМВР вот с такими магическими числами в настройках.

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

что в ней является узким местом, от чего зависит и как это правильно померить

Если лично ты это сейчас расскажешь, выпишем тебе генеральную благодарность и изложим в трех новых статьях.

Потому что после 8 лет плотного занятия этой темой, я не могу ответить на эти вопросы кроме как «да пес его знает».

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

Пришел кабель и я промерил задержки соединив вход и выход.

Результат… обескураживающий, и это просто рыдание…

Я не разобрался еще до конца, но что-то начало проясняться. Я начал понимать, почему у меня с диктофоном ничего не получалось толком. Я просто не мог поверить в то, что задержка настолько большая, как я ее вижу!

Итак, при 64/96000 задержка карты 7.4 мс, через тюбамп 8.5 мс. Практически такие цифры я видел на диктофоне. «Неучтенка» сверх буферов pipewire при этом составляет сумасшедшие 6 мс! Карл! Ну это слишком много…

Начал увеличивать буфер, и там вообще катастрофа. При 256/96000 задержка уже 17.9 мс, «неучтенка» выросла до 12 мс! Почему она растет?? Неизвестно, но это все крайне печально.

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

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

Пробовал играть на 64/48000 (портирую KPP на педалборд Mod Desktop, он меньше пока не умеет ставить) с задержкой около 15 мс. Ну что сказать. Играть - получается. Но когда я включил direct monitoring на карте, ощущения в пальцах это небо и земля.

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

Вот поэтому я всегда с огромным скепсисом относился к этим линуксоидно-гитаристским «у меня задержка 1.5 мс» и «при 10 мс невозможно нормально играть, я отчётливо слышу эту задержку». Это означает только, что задержки у оратора сильно больше, скорее всего, кратно, а смотрит он их в софте, что мало отражает действительность. На деле ЧЕСТНАЯ задержка в 10 мс не ощущается, она примерно как прямой мониторинг.

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

На деле ЧЕСТНАЯ задержка в 10 мс не ощущается, она примерно как прямой мониторинг.

Ну не совсем, я чувствую разницу между аналогом в наушники и моими 7.4 мс в наушники. Но это уже перестает быть критичным. На слух, при включении прямого мониторинга, я уже не слышу двойного щелчка при такой задержке, но пальцы чувствуют и передают привет. Просто уже не пламенный, как при 20 мс, а легкий будничный.

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

В цифре порядка 1.5 мс чтобы получить, надо DSP с кодеком, работающим на 192000. У меня DSP с кодеком, залоченным на 48000 и сами фильтры ЦАП дают около 4 мс. Плюс все остальное. А на компе это вообще ненаучная фантастика.

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

Печально, но ожидаемо
Говорят ещё, на thunderbolt-версиях задержка ниже, чем на тех же картах, но через usb
Мне кажется, в оффтопике та же ботва
Скорее всего, виновата архитектура в целом, а не софт

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

Софт тут вообще никак влиять не должен. Он может влиять на то, что ты можешь выставить 64/96000 или не можешь. Но если выставил, а оно тебе вот такое вот выдает - то все, приехали. Протирайте тряпочкой лампы, а это ну его в пень.

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

Софт тут вообще никак влиять не должен.

А вот смотри, результаты cat /proc/asound/card0/pcm0c/sub0/hw_params при работающем mod-desktop, размер буфера ему указан всегда 128.

  1. Втыкаю его в ALSA:
period_size: 128
buffer_size: 256
  1. Pipewire-JACK:
period_size: 64
buffer_size: 32768

А самое смешное то, что в первом случае оно пердит, а во втором - нет.

thesis ★★★★★
()
Последнее исправление: thesis (всего исправлений: 1)
Ответ на: комментарий от ist76

Мне кажется, в оффтопике та же ботва

Именно. На РММ есть несколько былинных тредов на эту тему.

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

Ну во-первых, mod desktop не умеет работать на alsa. Там написано как бы alsa, да, но при этом он запускает jack из своего бандла. У MOD сам хост умеет только jack api.

Поэтому, ты сравниваешь работу jack и pipewire, и конечно pipewire тут победит, потому что работает он существенно иначе.

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

Гы, точно. Я и не заметил. Замаскировались.

Меня еще такой момент раздражает: на моей звуковухе 2 входа, XLR и 1/4" jack. И они всегда работают одновременно, что как бы хорошо для спеть под гитарку, но требует двукратного размера буфера, если я правильно понимаю. Хз, как оно организовано в кишках.

thesis ★★★★★
()
Последнее исправление: thesis (всего исправлений: 1)
Ответ на: комментарий от James_Holden

А я говорил, и давно, что самое медленное и непреодолимое звено - это железо и драйвер.
Чисто умозрительно - звуковуха на PCI(E) с собственным драйвером должна быть быстрее, чем гоняющая данные через USB с громоздким драйвером usb-audio.
Но тут копроэкономика порешала времена меняются, PCIe карточек раз-два и обчёлся, а для PCI надо идти на жертвы.
Tunderbolt я ни разу не видел, но наверное - да, быстрее…

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

Только вот новых внутренних звуковых класса маленькой домашней студии на рынке - пара штук и обчёлся. Поневоле задумаешься об Аксе, если уж начинаешь смотреть в ту сторону.

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

Так я ж то же самое пишу. Разве что, «новую» «класса маленькой домашней студии» и с драйверами в онтопике - вообще не найти.

Что за «Аксе»?

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

Фрактал, Axe FX
Я сейчас посмотрел нынешние цены - 2mk2 в районе $1000
Чисто гитаристу, который не только играет, но и записывает, это очень разумный выбор. Входы специально под гитару заточены, перегрузить невозможно, реампинг если надо, дибоксы не нужны, никаких задержек, все в одной коробке. Модель старовата, но хуже она не стала.

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

В качестве отправной точки можно взять готовый дистр для аудио-процессинга (elk audio/ubuntu studio/что там ещё есть), на нём замерить baseline для своего железа. Если разница с десктопно-обывательским сетапом окажется значительной, то уже смотреть разницу и экспериментировать с переносом изменений в поисках компромисса. Как сократить разницу до минимума, не превращая основной десктоп в прошивку для комбика.

Myau ★★★★
()

3

1

1

1

В каком пту, тебя так научили ?

И вообще слишком много телодвижений как-то. Будто цель не на гитаре в комп побрынькать, а попердолится впустую с компом. Варик с интел маком, картой и пиратскими плагинами выглядит проще, быстрее и лучше по качеству на выходе.

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

Варик с интел маком, картой и пиратскими плагинами выглядит проще, быстрее и лучше по качеству

Ну так бон вояж, епта.

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

Варик с интел маком, картой и пиратскими плагинами

А в каком ПТУ тебя читать не научили? Читай тему и сам текст, потом пиши всякую ерунду.

Про свой мак, можешь смело пойти на мак орг ру и там писать статьи про пиратские плагины, какие ты захочешь. Никто не запрещает тебе. Что тут забыл?

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

Если разница с десктопно-обывательским сетапом окажется значительной, то уже смотреть разницу и экспериментировать с переносом изменений в поисках компромисса

Да. Вот я написал про необходимые изменения в статье, по результатам таких и многих других экспериментов на протяжении многих лет. Но тебе это чем-то не понравилось, и ты предложил повторить все то же еще раз, а вдруг те же действия приведут к чему-то другому.

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

Ну есть такие плагины, которые явно разорвут свободные ампсимы в хлам. Я надеюсь, ну мне в рекламе так сказали )))

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

У коммерческих разработчиков точно больше возможностей в плане доступа к оригинальным изделиям, это факт
Мы снять студию, привезти туда фуру голов и кабинетов и снимать отпечатки не можем
Также, у них больше разработчиков, возможны контакты с производителями железок, возможно драйверов, возможно daw
И есть плагины, написанные под свое железо, это шах и мат
Но я не думаю что «разорвут» прям

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

Потому что для протулза основная платформа - мак, или потому что под маком софтплагины работают лучше чем под немаком?

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

Ты знаешь наверное или додумки сыча, который ни разу на студии звукозаписи не был? Я регулярно бываю на самых разных московских студиях, от бомжатников для рэпчины до Останкино, везде винда. Маки на студиях только на зарубежном ютубе видел.

slepoy_pew
()
Ответ на: комментарий от ist76

ААаааааааа как же я ору

Ааааааааа

Это все. Пацаны, заказывайте БелАз с пеплом на мой адрес! Сыпать мне на голову. Это конец. Отменяйте очистку ламп от пыли!

Короче, еще вчера я заподозрил что это какая-то ерунда, ну не может быть такая большая неучтенка на пустом месте. Сегодня все изучил более пристально и… это софт! Это вредил софт! Как же я был не прав.

В общем. У pipewire есть «профили» звуковой карты (эта фича унаследована от pulseaudio). Профили для профессиональных внешних карт, делают такую вещь как split configuration - то есть моя звуковая карта в графе pipewire и в списке устройств видна как несколько разных устройств со своими входами-выходами.

Так вот, тут оказалось, что видимо эта split configuration, которая делается оберткой из плагинов alsa поверх физической звуковухи - нехило так вносит бешеную задержку! Которую я вчера и наблюдал! Может быть и даже не в этом дело, пока до конца не понятно, но могу сказать одно - виноват pipewire! Он вносит задержку НАМНОГО большую чем должна быть!

А теперь - магический луч из жезла маны ударяет прямо в сердце оплота тьмы! Сейчас все зло будет побеждено! Вот этот момент!

Победить эту проблему можно очень просто - есть профиль Pro Audio! Да, я настолько дебил, что его название мне ни о чем не говорило ))) Я просто не думал что все так запущено в этих наших линуксах! Что все настолько не очевидно.

Так вот, переключение звуковухи на профиль Pro Audio снижает реальную roundtrip задержку практически втрое! При тех же параметрах частота/буфер!

Конкретно:

с дефолтным профилем MiniFuse 1 результат таков: при 64/48000 задержка 15 мс.

с профилем Pro Audio - при 64/48000 задержка 4.8 мс! Да!! У меня работает Mod Desktop теперь стабильно с задержкой 4.8 мс по измерениям!

При 64/96000 задержка составляет 3.7 мс! Но слышны призвуки, возможно, если что-то более агрессивно настроить, то сможет работать даже так. Просто у меня машина очень слабая, на нормальной эта карта давала бы вот столько!

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

Почему я говорю что это НЕ ОЧЕВИДНО и я не мог до этого сразу допереть.

Реальная задержка то никак не видна, ее можно только кабелем замерить. Я, как и все, ориентируюсь по тому, что пишет софт.

И вот, я включаю pipewire и могу выставить параметры 64/96000 без треска. А потом включаю alsa/jack и могу выставить только 128/96000! Я же не видел при этом, что вдвое больший буфер у alsa, дает меньшую РЕАЛЬНУЮ задержку! И делал совершенно неверный вывод, что с pipewire задержка меньше!

Кошмар

Вот и ответ на вопрос, который мучает меня уже несколько лет. Почему с pipewire я могу выставить намного меньший буфер. Потому что это - показометр ни о чем не говорящий, который я принимал за реальность.

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

Самый общий способ - в pavucontrol. Запускаем pavucontrol, там переключаемся на вкладку Configuration, на ней можно выбрать профиль. Всегда будет «нормальный» дефолтный профиль, один как минимум, и Pro Audio.

Тонкость тут в том, что при выборе профиля Pro Audio, убираются все программные обвязки над картой, и pipewire переходит совсем в другой режим шедулинга - по прерыванию с карты, а не по таймеру. Такой режим характерен для ALSA и JACK.

Также, профиль можно сменить в KDE виджете регулятора громкости, если щелкнуть кнопку «три полоски» справа от названия карты.

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

Вообще у них написано, что если использовать pipewire вместо jack, то надо включать Pro Audio чтобы получить задержку как с jack.

Но тут есть контр-интуитивность - с большой вероятностью, придется выставить больший буфер, но реальная задержка должна стать меньше.

James_Holden ★★★★
() автор топика
Для того чтобы оставить комментарий войдите или зарегистрируйтесь.