Выбрать следующий трек. Одного похожего темпа мало. Сет строится дугой: разогрев, подъём, пик, передышка, финал. Программа помнит, в какой точке сейчас вечер, и берёт трек с нужной энергией, который ложится по тональности на текущий.
Найти, где сводить. У каждого трека есть вступление, куплеты, припевы, затишья и концовка. Заходить надо на границе фразы, посреди припева нельзя. Поэтому трек размечается заранее: где что начинается.
Сделать переход. В коде есть набор рецептов: плавный уход, резкая склейка на дроп, подмена вокала, эхо на выходе. Какой из них взять, зависит от пары треков. Если для рецепта не хватает данных, скажем, вокал не отделён, программа его пропускает и берёт другой.