LINUX.ORG.RU

Компенсация задержки JACK в WineASIO

 ,


0

1

Доброго времени суток! Я пользуюсь Reaper под Wine, пробрасывая его в JACK через WineASIO. Есть у меня проблема с компенсацией задержки, в Reaper в Options → Audio → Recording стоит галочка: “Use audio driver reported latency”, но компенсации задержки после записи дубля всё-равно не происходит, хоть и в правом-верхнем углу показано, что 512spls ~10/10ms ASIO. Ну способ прост, — выставить смещение вручную, учитывая конкретную величину буфера. Я при старте jackd вижу:

period = 512 frames (10.7 ms)
, умножаю это число на 2 (потому что слышу метроном с задержкой вывода, и записываю партию с задержкой ввода), и получаю 21.4, если смещаю дубль на это значение — всё попадает в метроном, но тут методом тыка выяснил вот что, это касается только количества семплов, но есть еще такая штука как кол-во периодов на буффер:
-n, --nperiods int
              Specify  the  number  of  periods  in the hardware buffer.  The
              default is 2.
Я попробовал задать вместо 2-ух значение 64, при запуске всё-тоже значение 10.7, но при записи, даже после смещения, — дубль дико отстаёт, а это говорит о том, что это значение задержки вовсе не учитывается. Подскажите пожалуйста, как получать это значение, чтобы учитывать его при компенсации задержки? И подскажите как получить более точное значение задержки кол-ва семплов — 10.7 тут всего 1 цифра после плавающей точки, 10.7*2=21.4, а qjackctl даёт 21.3, значит значение 10.7 не точное.

Благодарю!



Последнее исправление: unclechu (всего исправлений: 2)

Проверил, qJackCtl высчитывает всю задержку, включая кол-во периодов на буффер. Каким-то образом он её получает.

unclechu
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.