Подмотка (англ. preroll) — это композиция, автоматически вставляемая в плейлист перед композицией, которая была выбрана в соответствие с его настройками. Подмотка используется для акцентирования внимания на конкретных композициях (например, если у исполнителя скоро концерт).
Есть два способа настройки подмотки. Они сводятся к определению меток, по которым выбирается случайный файл, который и является подмоткой (подробности описаны в подразделах). Оба метода используются всегда: сначала собираются метки для плейлиста, затем - метки для текущей композиции, по ним выбирается случайная композиция, которая и является подмоткой.
Подмотка на уровне плейлиста создаётся с помощью свойстве preroll плейлиста. В этом свойстве указывается список меток, по которым выбирается подмотка. Пример настройки плейлиста:
- name: heavy_music labels: [music, +heavy] preroll: [heavy-preroll] delay: 30
В такой конфигурации в плейлист попадут композиции с метками "music" и "heavy", а перед ними будет каждый раз звучать случайная композиция с меткой "heavy-preroll".
Подмотка на уровне меток используется в случаях, когда она нужна в нескольких или во всех плейлистах сразу, но не обязательно для всех композиций. С помощью этой функции можно, в частности, создать подмотку для отдельной композиции (например, для результата работы команды speak).
Для выбора подмотки этого уровня ко всем меткам композиции добавляется суффикс "-preroll" и выбирается случайный файл с одной из полученных меток. Например, если из плейлиста была выбрана композиция с метками "rock", "female" и "vocals", подмотка будет выбираться по меткам "rock-preroll", "female-preroll" и "vocals-preroll" (достаточно одной из них).