Avantes notes

  • Увеличить размер шрифта
  • Размер шрифта по умолчанию
  • Уменьшить размер шрифта

Lossless, разбивка image+cue на треки в linux

Печать
Преобразование image и cue во .flac с разбитием на треки в Gentoo linux
Иногда возникает необходимость перекодирования .ape в хорошо поддерживаемый .flac с потрековым разбиением. Нам понадобится shntool с флагами mac и flac.
View source
# emerge -av shntool
Calculating dependencies... done!
[ebuild  N     ] media-sound/shntool-3.0.10-r1  USE="flac mac alac -shorten -sox -wavpack" 211 kB
 
Total: 1 package (1 new), Size of downloads: 211 kB
Команда перекодирования:
View source
$ shntool split ape_file.ape -f cue_file.cue -o flac -t "%n - %t"
Где: ape_file.ape - разрезаем, извлекая данные о длительности треков и их названиях из файла cue_file.cue, выходные данные в формате flac. Полученные файлы именовать по маске "Номер дорожки - Название дорожки".
Данной командой можно резать как ape + cue, так и flac + cue-файлы. Кроме ключей названия %n и %t так же можно использовать ключ %p, который задает исполнителя.
Для ленивых(себя в первую очередь) написал bash скрипт который избавляет вас от ввода имен файлов в консоль. Кроме установленного shntool, как описано выше, нам понадобятся еще app-i18n/enca(для перекодировки cue из cp1251 в utf8, чтобы названия треков отображались правильно) и gnome-extra/zenity(утилита, которая позволяет выводить на экран диалоговые окна GTK+ из командной строки и скриптов командной оболочки)
flac-cut
View source
  1. #!/bin/bash
  2. #############################################
  3. #############################################
  4. #####    Flac-cut v 0.2 04/12/2013    #####
  5. #####    Sadychenko Nikolay 2013        #####
  6. #####    avante@skylot.ru        #####
  7. #####    http://skylot.ru        #####
  8. #############################################
  9. #############################################
  10.  
  11. zen_mess ( )
  12. {
  13. zenity --$2 --title="$3" \
  14. --text="$1"
  15. }
  16. input_test ( )
  17. {
  18.     case $1 in
  19.      1)
  20.      zen_mess "Файл(каталог) не выбран, работа прервана" "error" "Ошибка"
  21.      exit 1 ;;
  22.      -1)
  23.      zen_mess "Неизвестная ошибка, работа прервана" "error" "Ошибка"
  24.      exit 2 ;;
  25.     esac
  26. }
  27. find /usr/bin/shntool 1>/dev/null 2>/dev/null
  28. if [ $? -ne 0 ]
  29. then
  30.     zen_mess "Не установлен пакет shntool.\n Выполните: emerge -av media-sound/shntool" "error" "Ошибка"
  31.     exit 1
  32. fi
  33.  
  34. FLAC=`zenity --file-selection --title="Select ape or flac File"`
  35. input_test $?
  36. CUE=`echo "${FLAC}" | sed 's/.ape/.cue/gi' | sed 's/.flac/.cue/gi'`
  37. if ! [ -f "${CUE}" ]; then
  38.     zen_mess "${CUE} not found, try selecting in dialog" "warning" "Файл не найден"
  39.     CUE=`zenity --file-selection --title="Select cue File"`
  40.     input_test $?
  41. fi
  42. DIR=`zenity --file-selection --directory --title="Select folder"`
  43. input_test $?
  44. #Если не нужна перекодировка, то закомментить строку ниже
  45. enconv "${CUE}" -x utf8
  46.  
  47. shntool split "${FLAC}" -f "${CUE}" -d "${DIR}" -O always -P none -o flac -t "%n - %t" 2>&1 | stdbuf -i0 -o0 -e0 sed 's/^.*--> /# /g' | zenity --progress --auto-close --pulsate --no-cancel --title="Разбивка ${FLAC##*/}" --text="Подготовка..."
  48.  
  49. if [ "$?" = -1 ] ; then
  50.         zen_mess "К сожалению, произошла ошибка, разделение провалено." "error" "Ошибка разделения образа"
  51.         exit 1
  52.     else
  53.         zen_mess "Разделение произведено успешно!\n Приятного прослушивания." "info" "Разбивка образа ${FLAC##*/}"
  54.         exit 0
  55.     fi
  56.  
  57.  
  58. exit $?

Теги восстанавливаются, просто и быстро при помощи media-sound/easytag
Вложения:
Скачать файл (flac-cut.tar.gz)flac-cut.sh[flac-cut v0.2]1 Kb