Виртуальные сэмплеры и latency

supersonic

Well-Known Member
17 Июл 2004
1.981
820
113
Москва
www.jamendo.com
Вот заметил такую странность. В прикрепленном файле элементарный тест. Два сэмпла, закрытый хэт/открытый хэт в одной группе с числом голосов равным 1. Ну, так всегда делают, чтобы при нажатии на клавишу с закрытым хэтом обрубался звучащий открытый. Так вот звучит это по- разному при разных значениях латенси. Откройте файл mix.wav и посмотрите на форму волны, там первая половина задержка 10 ms, вторая - 50 ms. Откуда берутся дырки?

Проверял на разных сэпмлерах, Halion, Kontakt, LM-4, в разных хостах Cubase, Logic, Samplitude, на разных звуковухах Echo Mia, Emu 1212, встроенная в чипсете - эффект есть везде, вот только в оффлайн миксдайн в Кубейсе не всегда попадает.

И еще замечал такую же хрень на sampler-based vst синтезаторах типа Трилоджи, Атмосферы, Ультрафокуса. Если инструмент одноголосый, то на больших значениях латенси тоже возникает подобный эффект, на слух, как будто чуть мимо чуть-доли играет.

Кто-нибудь объяснит?

[ADDED=supersonic]1123084352[/ADDED]
Вот эта хрень на картинке...
 
supersonic:
то на больших значениях латенси тоже возникает подобный эффект
собственно это и ответ, видимо не все инструменты её умеют правильно компенсировать в realtime, у меня например в трилоджи после выставлении латенси больше ~30ms звук начинает похоже спотыкаться, а до 20ms всё компенсирует ровненько в 0.
 
От латенси всегда будет зависеть... Дело в том, что параметр латенси (касательно аудио приложений) означает насколько приложение может задержать вывод звукового потока на аудио устройство... Собственно почему на тормозноватых компах и плохеньких звуковухах при установке минимальных значений латенси появляется треск - машинка слаба, какойнить злостный встшник долго парится над образованием звука, на дешевенькой аудяхе микширование звука не аппаратное, а опять-же программное (дополнительные загрузы проца и ожидание формирования звукового потока) и собственно приложение пытается выдать порцию аудио потока которое еще не готово, вот и затыки... Кол-во "сэмплов" (он же буффер) так-же как и латенси, подготовка аудио потока для вывода происходит порциями, т.е. кол-во "сэмплов" означает какого размера порции будет готовить аудио приложение для выдачи на аудяху, чем меньше буфер, тем чаще дергается оный буфер для выдачи новой порции... Вобщем если не лезть в дебри программирования, то скажу что это глюк известный, так к сожалению устроена схематика формирования звука...
З.Ы. Может и не дал такого ответа которого хотелось supersonic'у, но думаю остальные почерпнут интересную инфу если они когда нить задумавылись над этим..
 
Все инструменты от Spectrasonics ( Trilogy, Atmosphere,
Stulus ) имеют зависимость от величины latency звуковой карты. Компенсировать надо вручную, после того как партия записана. Чем больше latency тем больше компенсация.
 
Originally posted by MikeloVV
, чем меньше буфер, тем чаще дергается оный буфер для выдачи новой порции... Вобщем если не лезть в дебри программирования, то скажу что это глюк известный, так к сожалению устроена схематика формирования звука...

Так видишь ли здесь все наоборот, глюк появляется при УВЕЛИЧЕНИИ размера буфера. Казалось бы должно стабильней играть, ан нет.
 
Originally posted by Electric
Все инструменты от Spectrasonics ( Trilogy, Atmosphere,
Stulus ) имеют зависимость от величины latency звуковой карты. Компенсировать надо вручную, после того как партия записана. Чем больше latency тем больше компенсация.

Че-то я не понял, ЧТО и КАК надо компенсировать? И что именно в них зависит от величины латенции?
 
Скорее всего предлагается сдвигать в партии евенты note on чуть вперед ( то бишь чтоб чуть раньше срабатывало) и тем компенсировать задержку начала воспроизведения... А по поводу глюков, дык все прально, просто я не до конца высказался :) Вобщем забей и придется жить как жилось :(
 
supersonic
Объяснение таково. Разные инструменты жрут по разному, и соответственно одним хватает одного значения латенси, другим - другое. Куб делает так, что все инструменты синхронизируются и сдвигаются на одинаковое количество миллисекунд. Получается такая штука: миди-сообщение идёт в секвенсор, а аудио - на 30 миллисекунд позже. при этом у миди-потока никаких задержек нет и они идут в то время, в которое мы нажали на клавишу или секвенсор послал сигнал на ВСТ инструмент. Получается что звук опаздывает на 30 мс, затем в инструмент поступает миди-сообщение о нажатой ноте (закрытый хет), и он мгновенно затыкает открытый хет. А так как аудиопоток опаздывает на 30 мс, то открытый хет начинает играть тольуо после 30 мс после "затыкания" закрытого. Вроде понятно объяснил? То есть всё из-за различий по времени аудио и миди
 
AlexReed:
миди-сообщение идёт в секвенсор, а аудио - на 30 миллисекунд позже
смысл компенсации в том, чтобы миди сообщение доходит до виртуального инструмента тоже на 30ms позже (попробуй выстави например 500ms и нажми клавишу, на клаве виртуального инструмента клавиша нажмётся только через 500ms после тебя)
AlexReed:
Вроде понятно объяснил? То есть всё из-за различий по времени аудио и миди
да нет, это персональные баги некоторых инструментов по компенсации, в частности спектрасоников, у меня хоть 1000ms в проекте латенси поставь - всё равно почти все синты играют ровно, а вот трилоджи начинает играть куда попало но только не в ритм, причём не опаздывает а именно меняет длительность и ритмическую фактуру своей партии, на ровных картошкаках какието синкопы появляются и т.п. хрень.

з.ы. хотя для меня этот вопрос как то не актуален, больше 12ms латенси вообще никогда не использую, а в этих пределах у всех синтюков компенсация хлорошо работает, и живой лабе не мешает.
 
p00h
"а вот трилоджи начинает играть куда попало"
Ууу. Эт стандартно. Самое интересное вот что. Если отметить трек , в катором лабает трилогия, то все ок. Лабает нормально. Стоит отметить любой другой трек и все. Разъезжается, причем как то хитро. Не опаздывает, именно такое впечатление что квантайз вдруг разъехался как попало. Такое дело у меня в ЛАП-е.
 
Странно, у меня в трилоджи всё нормально, никогда нареканий не было...
p00h
Ну это скорее были мои логические доводы. Только так я мог объяснить сий глюк...
 
Ну если это глюк конкретного софта... Тогда есть ли сэмплер от него свободный?

Я на ДСП картах работаю, а у них драйвера оптимизированы под размер буфера 1024 сэмпла. Если меньше - процессор грузят нещадно. Так, приноровился, аранжировку делать при 50 мс, а на сведении ставить меньше, трещит все, но в оффлайн миксдауне все в порядке. Но это конечно не дело, элементарный "ум-ц ум-ц" нормально забить невозможно. А с триложди вобще беда. Получается, что либо все вкривь и в кось играет при большой задержке, либо все трещит при маленькой... Эхх! :frown:
 
supersonic:
Я на ДСП картах работаю, а у них драйвера оптимизированы под размер буфера 1024 сэмпла. Если меньше - процессор грузят нещадно.
а что за DSP карты? что то буфер уж очень здоровый, для realtime вообще ИМХО не катит :frown:
 
supersonic
а ты случаем их родной delay compensator не пользуешь?
 
Originally posted by P00H
supersonic
а ты случаем их родной delay compensator не пользуешь?

Да нет, это было актуально во времена SX1, когда задержки автоматически не компенсировались. И вообще проблема не в ДСП-картах. Просто я объяснил, почему не могу меньшую величину буфера использовать. Проблема именно в какой-то нестыковки одноголосых инструментов в сэмплерах с величиной asio-буфера. Я и на других машинах проверял, где никаких ДСП карт нет.

[ADDED=supersonic]1123235911[/ADDED]
Вот еще. Покрутил щас Контакт. Там если в закладке Source включить Rls. Trigger, то хэт коцает в зависит от latency, а если он выключен - все нормально, какую величину буфера не выбираешь, играет идеально.

Специалисты по Контакту, что это за release trigger и на что он влияет?
 
Originally posted by supersonic
Так видишь ли здесь все наоборот, глюк появляется при УВЕЛИЧЕНИИ размера буфера. Казалось бы должно стабильней играть, ан нет.

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

Сейчас просматривают