Як виявилося тема ця не нова. Найпростіший шлях такий. Встановлюємо:
Але є певна проблема, у отриманих файлах відсутня інформація про виконавця, альбом, тощо. Це не зовсім зручно, якщо збираємося додати ці файли у сучасні медіаплеєри, які вміють читати ці метадані.
Покроково.
Кількість композицій:
Метадані по композиції №1:Далі, припустимо у нас є наступні файли:sudo aptitude install cuetools shntool flac
Тоді розбити оригінальний flac на окремі композиції можна так:$ ls -1 Океан\ Ельзи\ -\ Без\ меж.* Океан Ельзи - Без меж.cue Океан Ельзи - Без меж.flac
Після чого отримуємо наступний список файлів:$ cuebreakpoints Океан\ Ельзи\ -\ Без\ меж.cue | \ shnsplit -o flac Океан\ Ельзи\ -\ Без\ меж.flac
Окремий файл - окрема композиція.$ ls -1 split-track* split-track01.flac split-track02.flac split-track03.flac split-track04.flac split-track05.flac split-track06.flac split-track07.flac split-track08.flac split-track09.flac split-track10.flac split-track11.flac
Але є певна проблема, у отриманих файлах відсутня інформація про виконавця, альбом, тощо. Це не зовсім зручно, якщо збираємося додати ці файли у сучасні медіаплеєри, які вміють читати ці метадані.
Покроково.
Кількість композицій:
$ cueprint -d '%N' Океан\ Ельзи\ -\ Без\ меж.cue 11
або у заданому форматі:$ cueprint -n 1 Океан\ Ельзи\ -\ Без\ меж.cue | iconv -f cp1251 Track 1 Information arranger: composer: genre: ISRC: message: track number: 1 perfomer: Океан Ельзи title: Віддай мені (свою любов) ISRC (CD-TEXT):
$ cueprint -n 1 -t \ 'ARRANGER=%A\nCOMPOSER=%C\nGENRE=%G\nMESSAGE=%M\nTRACKNUMBER=%n\nARTIST=%p\nTITLE=%t\nALBUM=%T\n' \ Океан\ Ельзи\ -\ Без\ меж.cue | \ iconv -f cp1251 ARRANGER= COMPOSER= GENRE= MESSAGE= TRACKNUMBER=1 ARTIST=Океан Ельзи TITLE=Віддай мені (свою любов) ALBUM=Без меж
Всі ці моменти можна об'єднати у скрипт. Проект можна завантажити звідси splitflac.
UPDATE:
Був отримав помилку:
shnsplit: error: m:ss.ff format can only be used with CD-quality files
Таблетка:
cuebreakpoints *.cue | sed s/$/0/ | shnsplit -t %n -o flac *.flac