А с чем там был вопрос? Я кое-что накопал, пока программировал-скриптил кастомную прослойку между Кубейсом и Novation Remote SL mkii 49 с использованием Bome MIDI Translator Pro с выводом информации на экран Новейшна, и для вывода как раз требовалось оптимизировать кол-во и размер SysEx сообщений в секунду.
Задержку исключительно MIDI без учёта ASIO можно высчитать, взяв "длину" конкретного MIDI-сигнала в битах и поделив её на секундную пропускную способность MIDI-интерфейса в битах. На примере сообщения Note on/off, которое имеет следующий синтаксис:
первые 4 бита должны иметь значение либо 8, либо 9 - note off/on соответственно
вторые 4 бита отвечают за номер канала, коих 16 (как раз 2^4 = 16)
следующие 8 битов отвечают за высоту ноты
ещё последующие 8 битов отвечают за velocity
4+4+8+8 = 24 бита (3 байта)
24 бита этого сообщения делим на 31250 битов, где второе число является пропускной способностью MIDI-интерфейса в секунду
24/31250 = 0,768мс, т.е. меньше миллисекунды для одной ноты.
Отсюда и при желании можно вычислить "точность" обработки во времени MIDI-нот.
Вот только вопрос - зачем вам всё это? Задержки ASIO гарантированно окажутся гораздо более заметными по времени, нежели задержки самог
о MIDI. Задержкой от нажатия клавиш до посыла сигнала по MIDI, как и задержкой по принятии сигнала и его дохождения до мозгов аудио-интерфейса, можно смело пренебречь - оно, во-первых, мизерно, во-вторых, незамеряемо, в третьих, везде будет разное и в отличие от размера буфера ASIO влияет настолько ничтожно, что брать их во внимание вообще нет никакой надобности.
Я тут сверху видел, что вы критиковали кого-то за деление задержки вдвое, и если я вас правильно понял - вы неправы. В случае игры виртуальными инструментами посредством MIDI-клавиатуры можно действительно смело игнорировать задержку АЦП (на вход), поскольку в процессе обработки MIDI-сигнала оно не участвует, и такая задержка в среднем в зависимости от аудиоинтерфейса, тракта и драйверов аудио-интерфейса будет в среднем в два раза ниже, чем задержка в круг вход+выход (round-trip-latency).
P. S. Да, находятся, пардон, дрочеры, которые считают MIDI говном, потому что ввиду вышеуказанных особенностей MIDI не способен идеально принять одновременно два MIDI-сообщения, но, во-первых, живая игра на MIDI-клавиатуре по неровностям окажется заметно более вольготной, нежели мизерная задержечка, а во-вторых, для работы дома можно надавать таким людям квантайзом по жопе... )