Зацикливание мелодии

При проигрывании файлов для музыкального сопроцессора количество повторов мелодии и точка цикла для этого определяется двумя параметрами настроек элемента списка – Время и Цикл (за исключением файлов ZXAY, OUT, PSG и EPSG). При этом поле Время содержит количество VBL (прерываний), в течение которых будет исполняться модуль с учётом всех повторов. Файлы OUT, ZXAY, PSG и EPSG в данной версии Ay_Emul всегда зацикливаются на начало.

Предположим, Ay_Emul автоматически определил продолжительность и точку цикла данного модуля и занёс их в поля Время и Цикл соответственно. Тогда это будет реальная длина модуля. При этих данных модуль будет проигран один раз от начала до конца.

Если вы вручную введёте значение поля Время, то возможны два варианта. Если введённая величина меньше реальной длины, то модуль проиграется один раз от начала и не будет доигран до конца. Если введённая величина больше реальной длины, то модуль будет проигран от начала до конца, и будет повторяться с точки цикла до тех пор, пока не будет поиграно указанное число VBL (прерываний) в поле Время.

Если вы вручную введёте точку цикла, то следует иметь в виду, что это значение реально используется только для проигрывания YM и VTX файлов. Для остальных типов оно носит справочный характер (при автоматическом заполнении), поскольку для зацикливания прочих модулей Ay_Emul использует зацикливание на указанную в модуле позицию, а для файлов AY, AYM и SNDH точка цикла форматом не предусмотрена (всё решает встроенный в эти файлы родной плеер).

Если зафиксировать кнопку Loop главного окна, мелодия будет повторяться бесконечное число раз, при этом по истечении времени, указанного в поле Время, индикатор Progress главного окна переполнится и остановится, хотя индикатор Time будет работать и дальше, показывая действительно проигранное время. Если файл после зацикливания просто повторяется, то индикатор Progress переместится в соответствующую позицию.

В данной версии зацикливание аудиодорожек компакт-дисков не производится, т.е. кнопка Loop главного окна игнорируется.

Есть свои нюансы и при зацикливании модулей в TS-паре. В общем случае может оказаться, что внутри TS-контейнера находятся модули разной длительности (в настройках элемента плейлиста можно увидеть длительность только первого модуля, если хотите увидеть данные для второго модуля, можно сохранить плейлист и открыть AYL-файл в каком-либо просмотрщике текстовых файлов). Если кнопка Loop на главном окне не нажата, более короткий модуль может доиграть до конца и замолчать, в то время как второй будет продолжать проигрываться. Чтобы этого избежать, можно либо включить зацикливание этой кнопкой, либо выбрать опцию Циклить меньший в TS-паре в окне Инструменты.