Можно ли изменять последовательности AudioKit по отдельности и воспроизводить как одну дорожку? - PullRequest
0 голосов
/ 03 июня 2018

Я хотел бы создать класс / struct / other, который будет содержать каждый такт песни, дополненный независимым темпом и количеством ударов, а затем воспроизвести всю песню обратно (с потенциальными обновлениями из пользовательского ввода).Я только знаю, как изменить эти переменные на треке AKSequencer в целом;Есть ли способ сохранить эти данные независимо, а затем воспроизвести их как единое целое?И соблюдать согласованность мер, чтобы не «прыгать» между ними?Спасибо!

1 Ответ

0 голосов
/ 04 июня 2018

AKSequencer не очень хорош в настройке длины цикла на лету, но вполне подходит для добавления или перезаписи содержимого дорожки во время работы секвенсора.Это включает в себя события темпа.

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

Когда ваш пользователь остановит последовательность, очистите дорожку (и), сбросьте темп, перемотайте последовательность и начните заново.

...