Объёмы жёстких дисков растут, но коллекции фильмов я не собираю, а следовательно, забивать эти объёмы практически нечем. Зато люблю послушать музыку в хорошем качестве. Поэтому уже давно обратил своё внимание на lossless форматы аудио.
Сжатие без потерь (англ. Lossless data compression) — метод сжатия информации, при использовании которого закодированная информация может быть восстановлена с точностью до бита. При этом оригинальные данные полностью восстанавливаются из сжатого состояния. Этот тип сжатия принципиально отличается от сжатия данных с потерями. Для каждого из типов цифровой информации, как правило, существуют свои оптимальные алгоритмы сжатия без потерь.
Но вот незадача… Если заниматься рипом самому, то разумеется, всё делается как тебе же и удобно… Но если скачать уже готовый рип, то он далеко не всегда соответствует личным предпочтениям. В частности, я предпочитаю альбомы, разрезанные на треки, но в сеть обычно выкладываются цельные рипы с cue-файлом. Так как же разрезать такой рип на треки? Этим мы и займёмся под управлением Fedora 12.
Дано: Альбом любимого музыканта, одним файлом в lossless формате (ape, flac, wv, wav) и cue файл.
Задача: Разрезать альбом на треки.
Решение:
- Для установки нам потребуется репозиторий RPM Fusion.
- Для решения это задачи нам понадобятся shnsplit (из пакета shntool) и cuebreakpoints (из пакета cuetools). Установим их:
$ sudo yum install shntool cuetools
- Следующим шагом установим поддержку необходимых нам форматов:
$ sudo yum install mac flac wavpack
- С помощью shnsplit мы будем разрезать файл, но для этого нам нужен правильно сформированные вывод cue файла. И тут нам на помощь придёт cuebreakpoints. А подружить их можно следующим образом:
$ cuebreakpoints example.cue | shnsplit -o flac example.flac
В данном примере файл example.flac будет разрезан на треки в соответствии с данными из файла example.cue. Ключ -o flac задаёт формат для сохранения результата.
- По умолчанию выходные файлы будут иметь имена split-track01, split-track02, split-track03 и так далее. Более подробно о возможностях программы можно узнать в справке:
$ shnsplit -h
- При таком подходе у нас не будут сохранены теги, содержащие более подробную информацию о композиции. Но это легко исправить с помощь cuetag, входящей в состав того же cuetools:
$ cuetag.sh example.cue split-track01.flac split-track02.flac split-track03.flac
или по маске
$ cuetag.sh example.cue split-track*.flac
- Копируем полученные файлы в нашу коллекцию и наслаждаемся результатом 🙂