Как создать CUE-файл для FLAC

Образ аудиодиска в формате FLAC без CUE-файла воспроизводится как один сплошной трек — перемотка на нужную композицию невозможна, а плеер не показывает названия песен. Именно поэтому к монолитному FLAC-файлу нужен текстовый файл разметки CUE sheet, в котором прописаны границы треков, исполнитель и названия композиций.

Создать CUE для FLAC можно двумя способами: вручную в любом текстовом редакторе или автоматически через специальные программы. Ниже разберём оба варианта, типичные ошибки в синтаксисе и способы проверить результат перед использованием.

Что такое CUE-файл и зачем он нужен

CUE sheet — это обычный текстовый файл с расширением .cue, который описывает структуру аудиодиска. Внутри него указаны ссылки на звуковой файл, номера треков, временные метки начала каждой композиции и метаданные: исполнитель, альбом, названия песен.

Плееры вроде Foobar2000, AIMP или VLC читают CUE и «разрезают» монолитный FLAC на отдельные треки виртуально — сам звуковой файл при этом не изменяется. Без корректного CUE вы видите в плейлисте одну длинную запись длительностью в весь альбом.

Структура CUE строго регламентирована: каждая команда пишется с новой строки, порядок директив имеет значение. Ошибка даже в одном символе — и плеер не распознаёт файл или показывает треки с неверными границами.

Структура и синтаксис CUE-файла

Прежде чем создавать файл, полезно понять его основные директивы. Рассмотрим минимальный рабочий пример для FLAC-образа:

PERFORMER "Исполнитель"

TITLE "Название альбома"

FILE "album.flac" WAVE

TRACK 01 AUDIO

TITLE "Первая песня"

PERFORMER "Исполнитель"

INDEX 01 00:00:00

TRACK 02 AUDIO

TITLE "Вторая песня"

INDEX 01 04:32:15

Разберём ключевые строки:

  • 🎵 FILE — имя звукового файла и его тип. Для FLAC указывается WAVE, так как CUE-стандарт исторически не имеет отдельного типа для FLAC.
  • 📝 TRACK — номер трека и тип данных (для музыки всегда AUDIO).
  • ⏱️ INDEX 01 — точка начала трека в формате минуты:секунды:фреймы, где 75 фреймов равны одной секунде.
  • 🏷️ TITLE и PERFORMER — названия альбома, треков и имена исполнителей в кавычках.
  • 💿 REM — необязательные комментарии, например REM GENRE Rock или REM DATE 2020.

⚠️ Внимание: значение INDEX отсчитывается от начала звукового файла, а не от предыдущего трека. Распространённая ошибка — указать длительность песни вместо абсолютной позиции её начала.

Создание CUE вручную в текстовом редакторе

Ручной способ подходит, когда CUE утерян, а границы треков известны — например, их можно восстановить по таймингам из описания релиза или прослушиванием. Порядок действий следующий:

Откройте Блокнот в Windows или любой редактор вроде Notepad++. Создайте новый документ и внесите директивы по образцу из предыдущего раздела. Имя файла в строке FILE должно точно совпадать с именем вашего FLAC-файла, включая расширение и регистр символов.

Тайминги треков удобно снимать в аудиоредакторе Audacity: откройте FLAC, найдите начало каждой композиции по форме волны и переведите время в формат мм:сс:фреймы. Оставшиеся доли секунды умножьте на 75 и округлите — это будут фреймы.

Сохраните документ с расширением .cue в той же папке, где лежит FLAC. В Блокноте при сохранении выберите тип файла «Все файлы», иначе система добавит лишнее расширение .txt.

☑️ Проверка перед сохранением CUE

Выполнено: 0 / 5

⚠️ Внимание: сохраняйте CUE в кодировке ANSI или UTF-8 без BOM. Кириллица в UTF-16 некоторыми плеерами читается некорректно — вместо названий появляются иероглифы.

📊 Как вы чаще создаёте CUE для FLAC?
Вручную в текстовом редакторе
Через CUETools
Через foobar2000
Ищу готовый CUE в интернете

Автоматическое создание CUE программами

Если тайминги неизвестны, ручной метод не подойдёт — нужны инструменты, которые анализируют сам звуковой файл. Несколько проверенных вариантов:

  • 🛠️ CUETools — бесплатная утилита, умеющая восстанавливать разметку по базе AccurateRip и определять границы треков по паузам в записи.
  • 🎧 foobar2000 — при наличии готового CUE может пересохранить его с исправлениями; также конвертирует образ с разрезанием на отдельные файлы.
  • 📀 EAC (Exact Audio Copy) — при создании рипа с диска генерирует CUE автоматически; подходит, если есть оригинальный CD.
  • 🔍 Medieval CUE Splitter — в первую очередь режет образ на треки, но позволяет просматривать и редактировать разметку.

Для восстановления разметки по паузам в CUETools достаточно перетащить FLAC-файл в окно программы и выбрать режим анализа. Программа найдёт тихие участки между композициями и предложит вариант CUE, который останется проверить и сохранить.

Сравнение способов создания CUE

СпособТочность тайминговСложностьКогда применять
Ручной в редактореЗависит от источника тайминговСредняяГраницы треков известны
CUETools (анализ пауз)Высокая при наличии паузНизкаяСтудийные альбомы с тишиной между треками
EAC с оригинального CDМаксимальнаяСредняяЕсть физический диск
Готовый CUE из базыЗависит от совпадения изданияМинимальнаяРелиз совпадает с вашим рипом

Типичные ошибки и их исправление

Самая частая проблема — плеер открывает CUE, но не показывает треки или выдаёт ошибку. Проверьте в первую очередь строку FILE: путь должен вести к существующему файлу, а кавычки — быть закрытыми. Если FLAC и CUE лежат в одной папке, достаточно указать только имя файла без полного пути.

Вторая по распространённости причина сбоев — несовпадение таймингов CUE с реальной длительностью FLAC. Такое бывает, когда CUE взят от другого издания альбома: даже разница в несколько секунд смещает все границы треков. В этом случае разметку нужно пересчитывать заново.

Ещё одна тонкость — строка INDEX 00 (pregap). Она задаёт скрытый участок перед треком и встречается в рипах с EAC. При ручном создании CUE для обычного альбома достаточно одного INDEX 01 на трек.

Как проверить CUE без плеера

Откройте CUE-файл в foobar2000 через меню File → Open. Если синтаксис корректен, в плейлисте появятся отдельные треки с названиями. Ошибка открытия означает проблему в строке FILE или в структуре директив. Также можно воспользоваться функцией проверки в CUETools — она укажет конкретную строку с ошибкой.

Проверка результата и разрезание образа

Готовый CUE стоит проверить в деле: откройте его в плеере и убедитесь, что все треки отображаются с правильными названиями, а перемотка на середину любой композиции попадает именно в неё, а не в конец предыдущей. Прослушайте стыки треков — щелчки или обрезанные вступления говорят о смещённых таймингах.

Если цель — получить отдельные FLAC-файлы вместо связки «образ + CUE», используйте разрезание. В foobar2000 для этого нужно выделить все треки, вызвать контекстное меню и выбрать Convert, указав формат FLAC. В CUETools аналогичная операция выполняется выбором режима tracks в настройках вывода.

При разрезании исходный монолитный файл остаётся нетронутым — программы создают новые файлы. Сохраняйте оригинал до тех пор, пока не убедитесь, что все треки нарезаны корректно.

Часто задаваемые вопросы

Можно ли создать CUE, если FLAC уже разбит на отдельные треки?

Да, но это требуется редко — обычно для записи Audio-CD. Программы вроде ImgBurn или Burrrn умеют генерировать CUE из набора треков автоматически при подготовке проекта диска.

Почему плеер показывает вопросительные знаки вместо русских названий?

Причина почти всегда в кодировке файла. Пересохраните CUE в кодировке UTF-8 через Notepad++ (меню «Кодировки» → «Преобразовать в UTF-8») и проверьте результат.

Что означают фреймы в тайминге INDEX?

Формат времени в CUE — минуты:секунды:фреймы. Одна секунда содержит 75 фреймов, это стандарт Audio-CD. Значение фреймов не может превышать 74.

CUE от другого издания альбома подошёл, но границы треков съехали. Что делать?

Издания различаются по длительности пауз и вступлений, поэтому чужой CUE редко совпадает идеально. Надёжнее пересчитать тайминги через анализ пауз в CUETools или скорректировать INDEX вручную по форме волны в аудиоредакторе.

Обязательно ли указывать PERFORMER и TITLE для каждого трека?

Нет, это необязательные поля. Если исполнитель один на весь альбом, достаточно указать его один раз в шапке файла — плееры подставят значение ко всем трекам. Названия треков, однако, лучше заполнить, иначе в плейлисте будут пустые строки.