LINUX.ORG.RU

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

 , , ,


15

6

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

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

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

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

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

Обеспечение низких задержек при обработке звука

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

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

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

Важнейнше! Реальная, физическая величина задержки (roundtrip) может быть совсем иной, чем это показывает софт! Например, у меня в Ardour показывается величина задержки 1.3 мс, при этом реальная задержка может составлять, при разных настройках Pipewire, от 3.8 мс до 15 мс! Поэтому, крайне желательно измерять реальную задержку путем соединения входа и выхода звуковой карты кабелем, используя плагин LSP Latency Meter. Надо промерять задержку для каждой комбинации настроек, которые вы делаете, и ориентироваться на результаты измерений, а не на показания программ типа Ardour или QJackCtl.

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

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

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

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

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

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

  6. Если используется Pipewire, то прежде всего надо переключить профиль звуковой карты в Pro Audio. Сделать это можно при помощи Pavucontrol. Открываем вкладку Configuration, там сразу видны настройки выбора профиля для всех доступных карт в системе. Выбираем профиль Pro Audio. Этот профиль отключает все программные обвязки над физической картой (split configuration и подобное), и самое главное - он переключает Pipewire в режим работы, аналогичный JACK и ALSA приложениям. Именно такой режим лучше подходит для работы с экстремально низкими задержками!

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

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

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

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

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

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

metadata -n settings 0 clock.force-rate 96000
metadata -n settings 0 clock.force-quantum 128

Враги низкой задержки — найти и уничтожить!

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

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

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

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

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

Программная часть

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

В основном, для формирования звука нам понадобятся плагины. Есть несколько универсальных форматов плагинов, все эти плагины подходят к любому приложению-хосту, который поддерживает соответствующий стандарт. Основные форматы плагинов - это 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. Они есть, но их обзор уже за рамками этого руководства.

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

    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 ()
Последнее исправление: dataman (всего исправлений: 13)
Ответ на: комментарий от Turbid

Наверное
Лично для меня удобнее, когда решение более модульное, а кому то по душе «всё в одном». Я nux mg-30 использовал как плеер импульсов для лампового преампа. Сейчас в него ещё nam-профили добавили, можно эмуляцию модника завести. А можно на кухне с ноутом черновики записывать в наушниках. Удобно.

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

не надо вообще в комбики ничего втыкать, они не для этого сделаны, гитару воткнул в инпут и вперёд

4.2
В разрыв только делеи, реверы, хорусы
И то не всё так однозначно
Если это комбик, а не действующий макет
Да и то
Впрочем, правил - нет

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

всё в одном типа Nux Mighty-Air

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

главное освоить базу, а дальше уже сам поймёшь, что тебе нужно

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

И то не всё так однозначно

Впрочем, правил - нет

да да

z0idator
()

Удивительно вовремя этот материал попался мне на глаза. А может получится подсказать рецептик, как записывать sr300eb, со следующими вводными:

  1. Цель записи — контроль выполнения упражнений. Т.е. качество записи как таковое не сильно интересно, интересно смотреть на графики звука относительно метронома.
  2. Т.к. эффекты на басу не особо нужны, то и процессить не нужно, проще параллельно на комбик вывести.
  3. Чем дешевле и одновременно с этим быстрее собирается — тем лучше.

Я так понимаю, мне нужна относительно любая карта с параллельным выходом на наушники/комбик. Но я в них не разбираюсь ну просто от слова вообще. Что подскажете?

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

Не очень дешево, но в целом, эта штука не лишняя даже для не связанных с гитарой задач. Сто бед один ответ. Arturia Minifuse1, либо Scarlett Focusrite Solo.

Как делаю я в таком кейсе. Втыкаю гитару в гитарный вход, она пишется. При этом на карте включаю direct monitoring, звук с выхода для наушников подаю в аналоговую голову.

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

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

Директ-бокс
Линейный сигнал после него хоть в AC97 и замьютить в редакторе
Прямой - в комбик

Только надо будет проверить на сколько записанное в редакторе отстаёт/опережает клик
Возможны приколы

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

Arturia Minifuse1, либо Scarlett Focusrite Solo.

Ну кстати приемлемо по цене, я когда читал, думал будет х2 как минимум.

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

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

Тут как на это посмотреть, @ist76 хорошо советует, но карта - она много для чего полезна. А потом захочешь качественно записать, и вот все готово. Микрофон с фантомным питанием подключать - пожалуйста.

И вообще я всю музыку через нее слушаю, это намного лучше чем через встройку (по крайней мере мою), потому что у нее нормальный усилитель, который прокачивает любые наушники, имея очень высокие параметры.

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

Да я-то как раз поэтому и непротив. Просто мне в текущей ситуации учить играть сильно интереснее, чем возиться с качеством звука, поэтому мне нужен быстрый и по-возможности не оченб дорогой входной порог. Ну и компуктор у меня thinkpad x13 — вундервафли так и так не напроцессить :)

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

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

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

Вообще, с басом, с одной стороны, попроще - на басу можно играть без обработок и это вполне звучит.
Поэтому, любой usb-интерфейс с функцией директ-мониторинга (а сейчас они все такие, наверное) будет достаточным решением. Артурии, пресонусы, фокусрайты (если не паль), моту, нюкс сейчас выпустил и активно форсит. Слушать прямой сигнал во время игры, писать его в daw, смотреть что получилось - проблем не будет.
С другой стороны, с басом есть нюанс, я столкнулся, когда начал записывать: начинаешь наваливать «от души» и струны щёлкают по ладам, по датчикам, просто отдельные ноты слишком громко выстреливают и сигнал клиппует. Через некоторое время приучаешься «наваливать», но не от души, а примерно на две трети ))
А инструментальные входы у всех карт, похоже, какие-то вредители проектируют: на таких «стреляющих пиках» сигнал ведёт себя странно. И не совсем понятно, что со всем этим делать.
Но это так, отвлечённые наблюдения.

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

помню первые версии фокусрайтов не тянули выхлопные гитарные датчики, потом это исправили, а так да, надо встравивать в руки компрессор

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

Посмотрел спеки Scarlet mkIV - инструментальный максимум +12dBu
(А для Claret mkII, кстати +15)

У меня +14 и я, бывает, пробиваю дно. А большинство китайцев вообще ничего про это не пишут.
Собственно, производителей понять можно - целевая аудитория играет аккуратно. Плохо, что выбора никакого нет. Или хилые инструментальные входы для дома за недорого или плати многоденег.

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

хм, интересно, после второй (народной) версии перестал следить за фокусрайтами, взял себе моту м4, в спеках пишут +18 dBu, мне хватает

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

хилые инструментальные входы

14 dBu это 11 вольт размаха. «Хилые».

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

струны щёлкают по ладам, по датчикам

Строго говоря, одна из причин почему надо играть хоть во что-то включенным, а не вслепую — как раз вот эти моменты. Оно ж и на комбаре клипует, только не всегда заметно. В этом плане как раз таки бас и интересно писать в целях тренировки — требовательнее он к чистоте ручек и технике звукоизвлечения, чем гитара.

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

В аналоге это не баг, а фича: когда надо, играешь спокойно, когда пора дать року - даёшь року. Овердрайв всё съест, вместо клиппинга будет сатурация.
А на записи - беда. Пишешь весь трек с запасом - на тихих кусках шумно. Без запаса - на громких будет клиппинг. Писать спокойные моменты отдельно, энергичные отдельно - вообще порнография.
Приходится учиться дозировать. Тихо но не слишком, громко но не очень. Наверное, это полезно для чего-то. Не знаю.

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

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

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

так человек так и написал, сначала про овердрайв, потом про клипинг

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

ну меня прям очень порадовала, очень толковая и за (относительно) немного денег
до этого уже была старая ультралайт (первая с усб, вместо фаирваир) весьма недурная, так эта ещё приличнее звучит, входит в топы по измерениям audiosciencereview, драйвера надёжные, задержка минимальная, без дополнительного питания, единственный минус - нет софтварного микшера, все входы и выходы работают как есть

z0idator
()

Автору спасибо за отличную базу!

Как я уже писал выше, перенес эту статью в Arch Wiki с помощью ChatGPT. В итоге модераторы ее снесли, забанив меня за «LLM-генерированный контент». Это отдельная большая история. Хотя никакого запрета на сгенерированый LLM-контент не было, многие мои правки на Arch Wiki откатили, а меня забанили навсегда. Хотя статьи все были на 100% правильные. А от LLM там было только форматирование по-сути.

Тогда я взял этот текст, сильно расширил, добавил специфики дистрибутива и запилил полноценную статью в NixOS Wiki: https://wiki.nixos.org/wiki/Electric_guitar_interface_setup

Там, помимо теории: готовый сниппет configuration.nix (Pipewire, RTKit, пути к плагинам), таблица реально проверенного железа, экзотические костыли (DPC latency от прошивки Nvidia GSP, прерывания от Bluetooth) и пошаговый physical loopback тест для замера реальной задержки.

Чтобы собрать правки и дополнить список железа, закинул по посту в r/NixOS и r/linuxaudio. Если кто сидит на Никсе — может пригодится.

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

Так, ладно. Я неожиданно оценил суть проблемы.

В гостях у товарища воткнулся в какую-то карту, попробовал один риф послепить… Многое понял.

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

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

Все это выглядит круто, но к сожалению - к аудио, это имеет очень малое отношение. realtime в этом контексте, в котором это понятие обычно и употребляется - это не аудио задачи. Это либо серверные сетевые, либо embedded задачи по управлению автоматикой, электродвигателями. Аудио это затрагивает весьма косвенно.

То есть, главная мысль - есть понятие latency в аудио, и есть понятие latency в realtime операционных системах. Слово одно и то же, но смысл совсем разный, это два совершенно разных понятия, которые все путают.

В RT OS, latency это время реакции системы на сигнал. Задержка между поступлением сигнала прерывания, и запуском обработчика прерывания, либо окончанием работы обработчика прерывания. В linux-rt это измеряется в единицах микросекунд.

В аудио DSP сфере, latency это время, затрачиваемое на цифровую обработку сигнала. Интервал времени между вхождением сигнала в DSP систему, и появлением обработанного сигнала на выходе системы. Это совершенно другое понятие, нежели то что для RT OS. Типичные значения - 3-10 миллисекунд. Там было микро, а тут милли - в 1000 раз больше!

Теперь, если мы поняли что требования в аудио, грубо говоря, в 1000 раз более мягкие, чем в RTOS, то возникает вопрос, а чем нам тут поможет тюнинг по учебнику для linux-rt. А практически ничем.

Все эти настройки для linux-rt предполагают что УЖЕ, до начала еще этих настроек, жестко специализированная система, либо сервер либо embedded. На ней уже, изначально, нет всякой десктопной шняги типа DE, вяленого порождающего 2000 прерываний в секунду, wi-fi карты, у которой драйвер легко блокирует ядро на десятки миллисекунд, драйвера GPU который не отстает, и подобного. А аудио задачи, мы запускаем на десктопной машине, где все это присутствует в полной мере. Отсюда и проблемы!

И вот, если мы из системы выкинем все, абсолютно все, кроме крайне минимально необходимого для работы DAW - достижимая задержка даже на ванильном основном ядре linux, без rt патчей и без тюнинга, падает до уровня, ограниченного только тремя вещами - 1) производительностью процессора (CPU должен успевать все обсчитать, банально), 2) возможностями шины USB, если у нас внешняя звуковая карта. Передача по USB занимает время, неустранимое by design 3) Математически обусловленная задержка в цифровых фильтрах АЦП и ЦАП. Свойство звуковой карты, это нельзя изменить тюнингом ядра тем более никак.

И вот, из этих трех проблем, доминирует третья! Только фильтры в звуковой карте, одни только они, могут давать задержку порядка 3 миллисекунд. А latency в linux-rt системе тюнят до значения в 4 микро(!)секунды, например. Это вообще несопоставимые по масштабу цифры.

Итого.

На практике, тюнинг по аудио может заключаться в чем. Собираем минимальную графическую среду, которая может выполнять только одно - можно запустить DAW и в ней работать. Все остальное, нещадно убираем. Отключаем, насколько это возможно, управление тактовой частотой процессора, и любое энергосбережение. Сносим все драйверы, кроме связанных с аудио и чтобы видео минимально работало. Особенно беспроводную сеть - под корень. По сути все, это даст возможность выжать то, что позволяет само железо. Дальше, уже железо не даст понизить задержку. Все упрется в неустранимые задержки USB и ЦАП/АЦП.

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

На ней уже, изначально, нет всякой десктопной шняги типа DE, вяленого порождающего 2000 прерываний в секунду, wi-fi карты, у которой драйвер легко блокирует ядро на десятки миллисекунд, драйвера GPU который не отстает, и подобного. А аудио задачи, мы запускаем на десктопной машине, где все это присутствует в полной мере.

так изолированные ядра выпадают из системного шедулера.
на них повесить jackd или что там будет с них звук снимать.
и никакого USB, только PCIe/DBAR/SRVIO/NVME.
тут бы хорошо зашла бы 2-ух сокетная рабочая станция, чтобы изоляцию и ввод/вывод(nvme/pcie-audio) на 2-ой процессор посадить.

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

В конце концов, мы так изобретём гитарный процессор, которых на любом озоне на рубь - пучок (и у которых, один хрен задержка - вокруг 3мс)

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

Software Defined Open Source Guitar Audio Proccesor, с фильтрами и динамикой 😊

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

Теоретически наверное можно что-то получить, но это неадекватные затраты для такой задачи. Можно сваять специализированный dsp модуль за 50 баксов и сделать к нему интерфейс опенсорсный с теми же возможностями. А если подороже, то получить задержку <1 мс, что недостижимо для PC железа при всем желании. Никто не мешает все прошивки и фронтенды делать опенсорсными.

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

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

кстати да, вот если бы завтра Маричев и Ко открыли к своим пангеям исходники ну или хотя бы к их приложухам, цены бы на их приборы взлетели бы моментально

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

Ой ли? Neural Amp открытый, профили на китайских процессорах работают, значит портировать или переписать самостоятельно - вполне посильно, а свободного со всех сторон железного процессора что-то не видать (и не появится никогда, я полагаю).

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

Ага, вчера обратил внимание.

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

Возможно, оттого, что никто особо и не проектировал их, а просто делали в довесок к линейному. Неспроста на свете существуют микрофонные (и вообще инструментальные) предусилители.

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

Погодите! Смотреть это 40 минут внимательно, желание нулевое. Что там, как именно клипует? Он что, подвел уровень входа под максимум? А почему нельзя покрутить ручку, и опустить уровень до исчезновения клиппинга??

Или речь о том, что при любом положении ручки, все равно клипует сам входной каскад, сразу?

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

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

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

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

У него на минимальном уровне пики режутся. Что - не новость. На всём, кроме карт с +18 и +21dBu

Забавная новость, что на motu пики точёные срезанные на -6dB. Типа, они хедрум заявляют, а на самом деле врут.

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

Смотреть это 40 минут внимательно

Достаточно посмотреть с 6:05 до 6:20, причем внимательно - только последние 5 секунд.

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

мне кажется он там специально переусердствует немного, для наглядности, но не суть, ещё помимо всего прочего на моту м2/м4 реально есть какие-то проблемы со схемотехникой на входах и с предусилителем для наушников, на audiosciencereview.com выкладывали, и аж три версии контроллеров/цапов, причём не на все можно свежий фирмварь накатить, в общем сам чёрт ногу сломит лично я в свою м4 напрямую только динамический микрофоны тыкал, всё остальное через преамп/дибокс и доволен как слон, но надо будет заморочиться проверить напрямую ради интереса

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

А насколько это важно. По-моему только на кристалльном клине имеет значение. А на нем зачем шпарить на активных датчиках. У меня синглы не перегружают вход.

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

ну в видео так и говорится: зависит от датчиков и звукоизвлечения, но если что дибокс проблему решит в любом случае

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

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

Ну и кстати, про активные синглы, у меня сет emg-sa был - они хорошие. Очень.

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

Как минимум, проблему лишний раз озвучил. Тоже неплохо.
А то смотрел тут обзор нового Nux-овского аудио интерфейса. Там мальчик полчаса расписался, какой интерфейс замечательный для подкастов. Потом страт с озона воткнул, струны пальчиками погладил нежно, и говорит: «Вот видите, с гитарой тоже никаких проблем нет!». Угу. Плавали, знаем.

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

И тут, кстати, интересный вопрос ещё: а вот у процессоров как? Когда обсуждают, что у одного звук мыльный, у другого - пластмассовый. А может, это не алгоритмы на них дрянь, а на входе банальный клиппинг с искусственным убавлением гейна после клиппинга? Вот я бы - совершенно не удивился. Знакомая очень история, по совсем другой сфере.

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

согласен, вообще аудиоинтерфейсы вещь в себе, читаешь обзоры/отзывы вроде всё хорошо, приносишь домой или на площадку - начинаются проблемы, банально от драйверов и прошивок и заканчивая вот такими сложностями, всегда приходиться глубоко погружаться

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

А на записи - беда. Пишешь весь трек с запасом - на тихих кусках шумно. Без запаса - на громких будет клиппинг.

Гыгы. Почему я люблю старый Line 6 TonePort и старый PodFarm/Gearbox. Плевать, что 16 бит в железе, но хороший запас по входу в гнезде PAD и, сцуко, очень динамичный эмулятор решают. Жаль, в wine так и не смог заставить работать.

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

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

А если бас в Line-in?

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

Это же колхоз, импеданс не тот

Дибокс с аттенюатором и все.

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

Бас - очень отдельная история. У басистов в порядке вещей активы/набортный преамп. И всякие преампы в формате педальки. Я себе первым делом MXR M80 к басу прикупил, а он сразу и прямой сигнал умеет выдавать и балансный. Наверное, если припрёт, можно и в линию воткнуть на пассивах, но лично я такое не одобряю. С дибоксом точно лучше. Если не совсем плохой дибокс.

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