Tiesto - Club Life 001-250 — примерные CUE-файлы
================================================

Что внутри
----------
cue\                     250 файлов .cue (выпуски 001-250, пропусков нет)
apply_cue.ps1            скрипт для Windows: разложит .cue рядом с mp3,
                         подставит настоящие имена файлов и подгонит
                         тайм-коды под реальную длительность
clublife_tracklists.csv  сводная таблица: выпуск; дата; № трека; секция;
                         трек; примерное время начала (разделитель — ;)


ВАЖНО: тайминги ПРИМЕРНЫЕ
-------------------------
Порядок треков настоящий (источник: MixesDB), время начала рассчитано.
У Club Life структура эфира жёсткая, и расчёт её повторяет:

  Hour 1                        — первая половина файла
  Hour 2                        — начало второго часа (иногда пустой блок)
  15 Minutes Of Fame - <гость>  — ровно 15 минут (1/8 двухчасового эфира)
  Back With Tiesto              — остаток второго часа

Внутри каждого блока треки распределены равномерно. Практическая точность
обычно ±2-4 минуты; граница часа и начало гостевого сета попадают точнее,
потому что заданы структурой, а не средним.

В файлах заложена номинальная длительность 119:00 (строка REM BASEDURATION).
Если ваши рипы другой длины — запустите apply_cue.ps1, он пересчитает
пропорционально. Если у вас только первый час выпуска, расчёт не подойдёт:
модель исходит из полного двухчасового эфира.


Как разложить рядом с mp3 (Windows)
-----------------------------------
1. Скопируйте папку cue и файл apply_cue.ps1 туда, где лежат mp3.
2. Сначала вхолостую, чтобы увидеть сопоставление и длительности:

      powershell -ExecutionPolicy Bypass -File .\apply_cue.ps1 -WhatIfOnly

3. Если всё верно — без ключа:

      powershell -ExecutionPolicy Bypass -File .\apply_cue.ps1

Скрипт находит номер выпуска в имени mp3 (понимает «Club Life 18»,
«Club_Life_018», «CLUBLIFE 007» и подобное), читает реальную длительность
средствами Windows, пересчитывает тайм-коды, подставляет имя файла в строку
FILE и сохраняет <имя mp3>.cue рядом с mp3 в UTF-8.

Сообщения скрипта на английском и он весь в ASCII: Windows PowerShell 5.1
читает .ps1 в системной кодировке, и кириллица внутри ломает разбор файла.
Тот же скрипт годится и для коллекции ASOT.


Известные оговорки
------------------
* Неопознанные треки идут как PERFORMER "ID".
* Секции подписаны строками REM SECTION — плееры их игнорируют, но в
  текстовом виде видно границы блоков эфира.
* Формат CUE допускает максимум 99 треков; где их больше, лишние отброшены
  (об этом есть строка REM NOTE). Для Club Life таких выпусков нет.

Источник треклистов: MixesDB (www.mixesdb.com), категория «Club Life».
