Автор - dmvn
Восстановление образа диска из потрекового релиза Бывает так, что раздаётся потрековый релиз, который был получен путём резки образа на треки, но при этом в раздаче имеется оригинальный CUE от образа диска. Ну а Вам, допустим, хочется иметь в коллекции именно точный образ диска, а не треки (то ли в силу привычки, то ли из принципа хранения релизов, скажем, в формате FLAC+CUE). Что же делать в таком случае?
а) В простых случаях образ можно получить следующим довольно простым образом -- просто склеиваем треки в 1 большой файл подряд, без всяких пауз. Получается один большой файл, к которому и прикручиваем CUE. Вот он и релиз. А, вы спросите, а как же клеить-то? Руками что ли? Да нет, не руками. Выделяете все треки в Foobar2000, правой кнопкой, выбираете Convert To->Convert to single file, формат ставим WAV, ну и пошло поехало -- получаем единый файл. Замечательно.
Однако на этом пути могут встречаться всякие неприятности. Самая большая неприятность -- это когда из треков были удалены паузы. Это очень плохо -- восстановить такие релизы наиболее сложно -- например, если нет CUE или LOG-а, в котором указана информация о паузах, то сделать вообще ничего нельзя. Но давайте не будем брать такие сложные случаи.
А как же понять, правильно оно склеилось или нет? А вот как. EAC при снятии образа пишет в LOG контрольную сумму. Поэтому мы можем посчитать контрольную сумму полученного нами образа и сравнить с тем, что получилось у EAC-а. Если совпадёт, то дело в шляпе -- значит мы склеили правильно. Как посчитать CRC, читайте по ссылке ниже.
Внимание: текст статьи возможно не адаптирован на рядового пользователя, так что если Вы чего-то не поняли, это не страшно. Как известно, если CUE-файл имеет вот такой вот вид
REM GENRE "Rock"
REM DATE 1997
REM DISCID 780A0E0A
REM COMMENT "ExactAudioCopy v0.95b4"
PERFORMER "Nautilus Pompilius"
TITLE "Яблокитай"
FILE "Nautilus.Pompilius.-.YAblokitaj.(1997).wav" WAVE
TRACK 01 AUDIO
TITLE "Люди на холме"
PERFORMER "Nautilus Pompilius"
INDEX 00 00:00:00
INDEX 01 00:00:55 <--- !!!
TRACK 02 AUDIO
TITLE "Во время дождя"
PERFORMER "Nautilus Pompilius"
INDEX 00 05:45:38
INDEX 01 05:46:56
TRACK 03 AUDIO
TITLE "Странники в ночи"
PERFORMER "Nautilus Pompilius"
INDEX 00 09:19:02
INDEX 01 09:20:20
то при порезке на треки по CUE-файлу с помощью фубара возникает такая проблема. Теряется прегэп перед первым треком (в нашем случае 00:00:00:55). Поэтому, если склеить треки обратно, то мы упустим в начале эту разницу, и, естественно, CRC образа уже получится совсем другая.
Так вот, имеется довольно простой способ восстановить этот прегэп (в дальнейшем сюды будет прилагаться маленькая программа, которая восстанавливает правильную длину первого трека (остальные треки вообще менять не нужно). Нужно всего лишь приклеить в начало первого трека тишину длиной 00:00:00:xx. Это можно сделать в любом звуковом редакторе. Единственный вопрос -- а в чём же эти самые xx измеряются?
Ответ: в фреймах. Фрейм -- это 588 сэмплов, или 1/75 доля секунды. Например, если у нас xx=55, то нужно добавить 55*588*4 байт тишины в начало первой дорожки. Берём Adobe Audition, генерируем столько тишины и вставляем в начало. Всё!
Но, конечно, это дело муторное, особенно если надо много файлов подряд править. Поэтому тут приложена маленькая программка, которая выполняет указанную операцию автоматически: вызывать из командной строки примерно так:
prefix32 srcfile.wav destfile.wav xx
Дополнительная информация: 1) очень подробное и хорошее руководство по синтаксису CUE-файлов было найдено мной вот тут:
http://digitalx.org/cuesheetsyntax.php 2) Заинтересованные в проверке того, насколько всё хорошо восстановилось, могут заглянуть сюда:
http://tapochek.net/viewtopic.php?t=20663 3) В отличие от ошибки в EAC при подсчёте CRC, данная особенность не является, скорее всего, ошибкой фубара, потому что он имеет обыкновение клеить прегэпы к концу трека, но приклеить прегэп
перед первым треком просто некуда.