Что такое задержка звука (Latency) и как с ней бороться

Чем плоха задержка?

Представим довольно распространенную и очевидную ситуацию. Вы играете дома в компьютер через Guitar Rig, например. Так вот, в этом случае мы имеем дело полной задержкой. И вот представьте себе, что задержка у нас больше 12 мс. В этом случае, мы чувствуем или даже слышим, что между тем, как мы дёрнули струну на гитаре и тем, как мы её услышали в наушниках, прошло какое-то время. Это, мягко говоря, некомфортно, особенно при переходе с полностью аналоговой аппаратуры. Впрочем, «порог комфорта» тут сугубо индивидуален – кому-то все хорошо и при 17 мс задержки, а кому-то некомфортно и при 10 мс.

Латенси или запаздывание звука

Задержка звука — это то время, которое требуется сигналу (например, гитарному соло), чтобы пройти от входа аудио-интерфейса или линейного входа звуковой карты, потом в DAW, и снова в интерфейс или на выход встроенной карты. Мы можем влиять лишь на один параметр в этой цепочке – входную задержку, то есть то время, которое нужно сигналу, чтобы попасть в DAW.

Именно тут в дело вступает драйвер, точнее его производительность. В любом изохронном драйвере (а именно такой используется, как в USB, так и в Fire Wire при передачи потоковой информации, например, аудио сигнала) есть два слоя. Второй слой обеспечивает буфер для Core Audio или ASIO приложений, например, DAW. И это именно тот слой, которым мы можем управлять.

Обычно, нам нельзя выставлять размер буфера во временной величине (например, 2,9 мс), вместо этого у нас есть список, привязанный к сэмплам, и мы можем выбирать числа из списка (например, 128 сэмплов). Всё это делает вычисление времени задержки более сложным. А большинство музыкантов скорее запомнят все тексты Rush, нежели то, что 512 сэмплов примерно равно 11-12 мс задержки на частоте дискретизации 44,1 кГц! (Чтобы получить миллисекунды из сэмплов нужно просто разделить число сэмплов на частоту дискретизации. Например, 512 сэмплов / 44100 Гц = 11,6 мс)

На операционной системе Mac OS размер буфера, который мы устанавливаем в настройках аудио редакторов относится сразу и к входному и выходному буферу. То есть, если вы выставили буфер в 128 сэмплов, то и входной и выходной буфер будут равны 128 сэмплов. Таким образом, в самом лучшем случае фактическая задержка будет в два раза больше, выставленного нами буфера.

Например на Windows, если в настройках ASIO вы выставили буфер в 128 сэмплов, то только выходная задержка может быть равной 256. В таком случае, может получиться так, что два буфера дадут общую задержку в 384 сэмпла. Что означает, что наши 2,9 мс (128 сэмплов) превратятся в 8,7 мс на частоте 44,1 кГц.

У аналого-цифровых и цифро-аналоговых преобразователей тоже есть своя задержка, т.к. они тоже имеют свой буфер. Эта задержка обычно составляет от 0,2 мс до 1,5 мс в зависимости от качества преобразователя. 1 мс – это не так много и вряд ли повлияет на качество испольнения, но это всё равно вносит вклад в общую задержку. Для нашего примера с буфером в 128 сэмплов, 0,5 мс на каждый преобразователь добавляют к общей задержке 1 мс, то есть из 8,7 мс мы получаем 9,7 мс. Но все равно, 9,7 – это всё еще ниже порога человеческого восприятия и не должно ни на что влиять.

Как с ней можно бороться

Способ 1. Драйвера

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

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

И все это достигается выставлением низкого количества семплов:

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

Такого же низкого показателя можно добиться и на Windows, но для этого вам понадобится купить аудио интерфейс, без него минимальная задержка будет составлять 11-14 мс (не буду особо вникать в десятые доли) и при этом уже возможны затруднения обработки сигнала, которые будут проявляться щелчками, тресками и прочими дефектами.

А теперь как же бороться. На Windows обязательно устанавливаем драйвер ASIO для использования встроенной звуковой карты, и драйвер производителя если у вас аудио интерфейс. Данные драйвера позволяют снизить значение задержки до менее ощутимых. В реальности можно нормально играть уже при задержке 11,6 мс, рекомендуют конечно ставить меньше, но по сути это большой роли не сыграет, так как ваши уши привыкнут к любой не значительной задержке при воспроизведении и вы ее перестанете слышать, а по концовке вам все равно прийдется это поправить в аудио редакторе, поэтому во многих случаях не так и важны эти 2-3 мс. Но многие видят в них огромный минус, так как после привыкания играть с запаздыванием звука уже становится сложно играть без него, например подключившись напрямую к усилителю.

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

Многие в сети пишут, что существуют медленные и быстрые драйвера. В реальности все намного проще и в драйвер аудио интерфейса вшит все тот же ASIO, который так же устанавливается на Windows. Различие влияющее на снижение задержки отнюдь не драйвер, а дополнительная мощность подключенного аудио интерфейса, который берет часть нагрузки с центрального процессора компьютера на себя, тем самым позволяя ЦП использовать больше свободных ресурсов для обработки.

Как же найти этот компромисс?

Обычно, латенси измеряется либо в миллисекундах (что более удобно), либо в сэмплах. Принципиальной разницы для нас это не имеет. Итак, ищем «золотую середину»:

• выставите в буфер в настройках драйверов аудио-карты или аудио-интерфейса равным 512 сэмлам;
• убедитесь, что вы можете играть без затыканий, треска и прерываний звука;
• постепенно уменьшайте буфер: до 256, 192, 128 и т.п. до тех пор, пока звук не испортится;
• теперь вы знаете предел, до которого можно уменьшать буфер. Увеличьте буфер, чтобы звук был снова в норме.

Тактика уменьшения задержку звука (latency):

• Для самой низкой задержки на Mac используйте интерфейс Core Audio. В Windows используйте ASIO интерфейс. (Многие программы в Windows позволяют использовать различные интерфейсы и протоколы: DirectX, MME и WDM, но всегда, если это возможно пользуйтесь ASIO. ASIO — значит минимальная задержка.)

• Чем быстрее компьютер, тем более низкую задержку можно получить.
• Если в какой-то программе можно получить более низкую задержку, чем в другой (ну, или так по крайней мере написано), не стоит этому доверять – используйте свои уши! В некоторых программах указывается только входная латенси, а ведь есть еще и задержка на выходе.
• Чем больше разных программ запущено на компьютере, тем сложнее получить низкую latency. Запуская амп-симулятор (Guitar Rig, Amplitube, etc…), как отдельную программу, можно получить более низкую задержку, чем при использовании того же амп-симулятора в качестве плагина к вашей любимой DAW, в которой может множество дорожек, на которые может быть навешано такое же множество виртуальных инструментов и плагинов.

При написании были использованы материалы: jablog.ru

Способ 2. Параллельное подключение усилителя.

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

Избавление от latency в аудиоредакторах после записи

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

Когда полезен высокий уровень запаздывания

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

Такое часто можно заметить при записи нескольких гитар да еще и с даблтреками. Наложение того же Rig 5 или Bias FX с включенным высоким качеством обработки на каждую гитару, наложение компрессоров и эквалайзера, миди барабанов и баса, а так же  эффектов на мастер шину создаст значительные трудности для воспроизведения. Оно может начать заикаться или же не воспроизводится вовсе. В этом случае для финишной обработки, когда нам важно слышать все инструменты вместе, стоит повысить количество сэмплов, чтобы разгрузить процессор.

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

Очень важно — не забудьте после редактирования, перед включением рендера, вернуть показатель семплов опять в минимальное значение!

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

Вас могут заинтересовать:

@DDR5.RU

@DDR5.RU

Комментарии не относящиеся к тематикам страниц, вводящие в заблуждение пользователей нашего ресурса, носящие рекламный и провокационный характер будут беспощадно удаляться!!! С уважением, администрация DDR5.RU...

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *