Куб всегда писал и пишет ноты раньше. По крайней мере до 5.1 версии.
Проблемы тут 2 на самом деле.
1. Запись ноток раньше времени. это архитектурная особенность всех кубейсов до 5.1 включительно. По своему принципу кубейс записывает отпечатки миди максимально быстро, как только они поступят в программу посредством драйвера (direct music или windows API). Т.е вы нажали на клавишу - и максимально возможно быстро кубейс фиксирует эти данные. НО. вы слышите, то что вы слышите. и играете пальцами так - чтобы слышать в реальном времени свою игру ровно под метроном. Имея некоторую латенси в системе (латенси, выставленная в аудиокарте + латенси у некоторых ВСТ свои добавляются), чтобы попадать в метроном кубейса , вам приходится нажимать клавиши чуть раньше, чтобы компенсировать задержки и услышать звук одновременно с метрономом. Иначе играть просто не получится, разве что выключить звук синтезатора и попадать в метроном, ориентируясь на звук ударов пальцев о клавиши.
Т.е. для входящих мидиданных латенси системы НЕ КОМПЕНСИРУЕТСЯ. Обойти это можно только одним путем - используя наименьшее значение латенси в аудиокарте, не ставить плагинов вносящих большие задержки на мастер трек (т.к. это увеличит время задержки того что вы слышите еще больше).
2. Миди джиттер. Записать как можно быстрее, или внести большую задержку и записать точнее это всегда компромисс для программеров.
http://www.soundonsound.com/sos/dec07/articles/cubasetech_1207.htm
http://www.eigenzone.org/2012/12/04/midi-jitter
----------------------------
Если хочешь писать в МИДИ идеально то что слышишь - юзай эблтон. Он проходит тест на одновременную запись миди клипа и одновренной записи этого же на аудио дорогу. они вычитаются в противофазе в 0, так же вычитается потом оффлайн рендеринг этой дорожки и с миди и с записью. Рипер показывает тоже хорошие результаты (хотя на моей машине похуже, чем эблтон).
Ableton‘s approach to MIDI timing is based on two key assumptions:
In all cases, latency is preferable to jitter. Because latency is consistent and predictable, it can be dealt with much more easily by both computers and people.
If you are using playthrough while recording, you will want to record what you hear — even if, because of latency, this occurs slightly later than what you play .
Live addresses the problems inherent in recording, playback and playthrough so that MIDI timing will be responsive, accurate and consistently reliable. In order to record incoming events to the correct positions in the timeline of a Live Set, Live needs to know exactly when those events were received from the MIDI keyboard. But Live cannot receive them directly — they must first be processed by the MIDI interface‘s drivers and the operating system. To solve this problem, the interface drivers give each MIDI event a timestamp as they receive it, and those are passed to Live along with the event so that Live knows exactly when the events should be added to the clip.
During playthrough, a DAW must constantly deal with events that should be heard as soon as possible, but which inevitably occurred in the past due to inherent latency and system delays. So a choice must be made: should events be played at the moment they are received (which can result in jitter if that moment happens to occur when the system is busy) or should they be delayed (which adds latency)? Ableton‘s choice is to add latency, as we believe that it is easier for users to adjust to consistent latency than to random jitter.
Абсолютно соответствует органолептическим ощущениям )
When monitoring is enabled during recording, Live adds an additional delay to the timestamp of the event based on the buffer size of your audio hardware. This added latency makes it possible to record events to the clip at the time you hear them — not the time you play them.
---вот именно этого и нет в кубе. В рипере была функция записи миди с учетом латенси - убрали почему то в последних версиях.....
А танцы вокруг ignoreportfolter и enablemulated в т.ч и для верссии 5.1 актуальны, это не джиттер, это проблема путаницы в драйверах и она легко решаема.. вам нужно в корень папки Cubase 5 поместить файл ignoreportfilter и enableemulated , перезапустить куб и выбрать либо виндовые, либо директ-х драйвер для миди, а так же повыключать эмулированные входы для обоих протоколов и оставить только ОДИН включенный вариант. У кого то лучше на виндовых, у кого то на директ это зависит от кучи факторов - качество клока на материнке, аудиокарта, мидиклавиатура и тд.. Главное оставить ОДИН, чтобы куб не путался, не записывал двойные ноты и тд. от этого все глюки когда сваливаются ноты в 1 такт и тд. А опережение мидизаписи нельзя побороть в кубейсах до 5.1 включительно НИКАК. Поэтому я и перешел на эблтон и рипер. По поводу более старших кубейсов не скажу, говорят сделали галочку какую то в 7-ке по типу как reduce latency whеn monitoring в эблтоне. Если при этой опции выключается вся компенсация задержки, кроме играющего синтезатора, опережение ноток должно уменьшиться. по логике.