AKSequencer не очень хорош в настройке длины цикла на лету, но вполне подходит для добавления или перезаписи содержимого дорожки во время работы секвенсора.Это включает в себя события темпа.
Почему бы вам не установить произвольно длинную длину и не соединить воедино ваши MIDI-события после измерения без зацикливания?Следите за тем, сколько ударов было написано до сих пор, и просто продолжайте добавлять после этого.Делать это во время работы секвенсора не должно быть проблем.Вы даже можете автоматизировать запись следующего бара, запустив функцию обратного вызова в конце каждого показателя, заставляя его записывать следующий сегмент (который можно выбрать или «настроить» во время выполнения).Вы можете запланировать события темпа с помощью addTempoEventAt()
, с начальной точкой для следующего сегмента.
Когда ваш пользователь остановит последовательность, очистите дорожку (и), сбросьте темп, перемотайте последовательность и начните заново.