11 марта 2010 г.

Резка аудио (flac+cue) на треки

Давеча возникла необходимость порезать flac+cue. Суть в том, что на торрентах часто выкладывают музыку целыми альбомами, не заморачиваясь всякими там разбиениями на треки - тупо один большой на весь диск flac (аудио-формат без потери качества звука) и файл образа диска (cue) с информацией об отдельных дорожках. Далеко не все плееры такую хрень интерпретируют корректно. Вот вроде по словам очевидцев, foobar показывает и играет потреково, у меня же amarok показывает это целым куском, но с метками между треками на прогресс-баре, впрочем, переключаться между треками у меня всё равно не получилось, а всё остальное просто проигрывает это одним файлом и даже не показывает, где начинается новая дорожка. Да и дело даже не в плеерах, а просто я сама не могу спокойно жить, когда файлы у меня не организованы и не раскиданы как лично мне нужно (ладно, вру, до наведения порядка у меня обычно руки так и не доходят, поэтому всё равно половина лежит в бардаке, но сути моих пожеланий это не меняет).

Рецептов в сети куча, и зачастую они включают ещё и перекодирование в mp3 или ogg. Но меня размер файла как-то не особо смутил, поэтому решила пока просто порезать, оставив хорошее качество. Короче, делается всё в три простых движения:

1. Установить пакеты: cuetools, shntool, flac, lame. (Кажется, flac можно специально не ставить, он потянется зависимостью при установке cuetools, но на всякий случай пусть так.):

sudo aptitude install cuetools shntool flac lame

2. Команда для резки на треки:

cuebreakpoints file.cue | shnsplit -o flac file.flac

Понятно, что вместо file.cue и file.flac надо подставить имена конкретных файлов. Ну и команду надо выполнять, предварительно зайдя в папку, где оба этих файла лежат, либо прописывая полные пути к ним.

3. Команда для простановки тегов в файлы из cue:
cuetag file.cue split-track*.flac

Опять же вместо file.cue - имя конкретного файла, выполняется всё в той же папке.

Команда cuetag работает с форматами flac, mp3 и ogg. В именах файлов не должно быть пробелов. По-умолчанию имена получившихся файлов будут вида split-track01.flac. Можно задать другие ещё при резке, но по мне легче потом переименовать файлы другими средствами, тем более теги, как показывает опыт, всё равно придётся исправлять, и зачастую кардинально.

8 комментариев:

  1. Спасибо, очень пригодилось

    ОтветитьУдалить
  2. жаль что нет специальной программы для такой операции.

    ОтветитьУдалить
  3. А это пакеты + команды, а не полностью графический интерфейс

    ОтветитьУдалить
  4. Так и надо говорить тогда - "программа с графическим интерфейсом" мол нужна, а то любая команда - это уже программа :)
    Написать должно быть несложно для того, кто умеет. Но вряд ли кто-то такой ерундой заниматься будет, когда есть пара простых команд.
    А вообще, мне кажется, даже мне под силу сделать скрипт для наутилуса, например.

    ОтветитьУдалить
  5. >>Так и надо говорить тогда - "программа с графическим интерфейсом" мол нужна, а то любая команда - это уже программа :)

    Лол. Никто в жизни не говорит: программа с графическим интерфейсом" для дефрагментации(разметки диска, резки файлов по cue). Все просто говорят программа для дефрагментации (разметки диска, резки файлов по cue). А любая команда еще не программа, а средство обращения к ней.

    >>Написать должно быть несложно для того, кто умеет. Но вряд ли кто-то такой ерундой заниматься будет, когда есть пара простых команд.

    Ошибаетесь, еще как будет. Более того, такую программу я уже нашел.

    ОтветитьУдалить
  6. и о чём спор? о том, кто как говорит?

    ну нашёл, молодец. в чём смысл коммента щас был?

    ОтветитьУдалить
  7. у меня ошибку выдает,
    shnsplit: error: m:ss.ff format can only be used with CD-quality files
    =(((

    ОтветитьУдалить