shlemisto |
|
Темы:
12
Сообщения:
118
Участник с: 13 декабря 2008
|
Итак, чем режете .cue? Я виндовыми прогами, но, имхо, не выход :-\ .ape, он подтормаживает audacious, надо перегонять во .flac… чем? ffmpeg -i - конвертирует,НО(!), длина трека становится 0:00, из-за чего трек не перематывается :-\ или тут такая последовательность нужна ape>wav>flac? может, какие другие параметры при ffmpeg использовать? (маны смотрел, пробовал, но что-то никак ??? ) soundkonverter - ape не воспринимает :-\ soundсonverter - не хочет конвертировать :-\ и ещё всякие проги его не “берут”, как бороться с cue и ape? UPD^ так-с, значит, ape>wav проходит нормально, длина трека “работает”, а вот wav>flac никак, время, как и в случае ape>flac, не “работает” :-\ ??? |
stanislaw |
|
Темы:
4
Сообщения:
151
Участник с: 13 декабря 2008
|
Гугл знает ответ на ваш вопрос. ;) А вообще у меня такой скрипт: #!/bin/bash (($# > 0)) || { echo "Error: CUE file not specified"; exit 1; } DIR_NAME=$(dirname "$1") [ -d "$DIR_NAME" ] || { echo "Error: Dir \"$DIR_NAME\" not found"; exit 2; } pushd "$DIR_NAME" > /dev/null CUE_FILE=$(basename "$1") PRFX_NAME=${CUE_FILE%.[cC][uU][eE]} FLA_FILE=$(find . -type f -iname "$PRFX_NAME.flac") APE_FILE=$(find . -type f -iname "$PRFX_NAME.ape") WAV_FILE=$(find . -type f -iname "$PRFX_NAME.wav") [ -n "$FLA_FILE" -a -z "$APE_FILE" -a -z "$WAV_FILE" -o -z "$FLA_FILE" -a -n "$APE_FILE" -a -z "$WAV_FILE" -o -z "$FLA_FILE" -a -z "$APE_FILE" -a -n "$WAV_FILE" ] || { echo "Error: there is not one of FLAC/APE/WAV input files"; exit 3; } [ -n "$CUE_FILE" -a -s "$CUE_FILE" ] || { echo "Error: CUE file \"$CUE_FILE\" not found"; exit 4; } [ -n "$FLA_FILE" -a -s "$FLA_FILE" -o -z "$FLA_FILE" ] || { echo "Error: FLAC file \"$FLA_FILE\" not found"; exit 5; } [ -n "$APE_FILE" -a -s "$APE_FILE" -o -z "$APE_FILE" ] || { echo "Error: APE file \"$APE_FILE\" not found"; exit 6; } [ -n "$WAV_FILE" -a -s "$WAV_FILE" -o -z "$WAV_FILE" ] || { echo "Error: WAV file \"$WAV_FILE\" not found"; exit 7; } # prepare CUE to embed into FLAC (optional) #recode 1251..utf8 < "$CUE_FILE" > tmp.cue enconv < "$CUE_FILE" > tmp.cue # convert [{ape,flac} -> ]wav -> flac, splitting result according to CUE on tracks NN.flac where NN is [0-9]+ if [ -n "$FLA_FILE" ]; then shnsplit -i flac -o 'flac flac -V -8 -o %f -' -t %n "$FLA_FILE" < tmp.cue elif [ -n "$APE_FILE" ]; then shnsplit -i ape -o 'flac flac -V -8 -o %f -' -t %n "$APE_FILE" < tmp.cue elif [ -n "$WAV_FILE" ]; then shnsplit -i wav -o 'flac flac -V -8 -o %f -' -t %n "$WAV_FILE" < tmp.cue fi # embed tags into tracks, rename tracks for (( i=1 ; i <= $(cueprint -d '%N' tmp.cue) ; ++i )) ; do NN=$(printf '%02d' $i) [ -s "$NN.flac" ] && { # prepare track tags, filter out empty tags, embed the rest cueprint -n $i -t 'TRACKNUMBER=%n\nARTIST=%p\nTITLE=%t\nALBUM=%T\n' tmp.cue | egrep -v '=$' | metaflac --import-tags-from=- $NN.flac # rename NN.flac to "NN - TrackTitle.flac" mv $NN.flac "$NN. `cueprint -n $i -t %t tmp.cue`.flac" } done rm tmp.cue popd > /dev/null |
shlemisto |
|
Темы:
12
Сообщения:
118
Участник с: 13 декабря 2008
|
stanislawВот это и натолкнуло на путь праведный ;) Вобщем нашёл выход, он в 2 этапа, 1) нашёл скрипт ape>flac. УРА, теперь продолжительность трека не 0:00 :D (но нужно вот это, иначе никак) Ах да, вот и скрипт #!/bin/sh # # @(#) ape2flac 0.1b 23/01/2007 by BaBL # Checking for mac & flac # Checking for input directory # # @(#) ape2flac 0.1a 14/01/2007 by BaBL # Fixed a bug identifying filenames with more then one "." symbol # # @(#) ape2flac 0.1 26/09/2003 by Peo Karlsson # # Recursively convert APE-files to FLAC. # Directory recursion adapted from the 'tree' script by Jordi Sanfeliu (see below). # # # @(#) tree 1.1 30/11/1995 by Jordi Sanfeliu ([email protected]) # # Initial version: 1.0 30/11/95 # Next version : 1.1 24/02/97 Now, with symbolic links # # which extension to look for when browsing the tree myext="ape" declare -a prog_needed=(mac flac) search () { xx=0 for dir in * do if [ -f "$dir" ]; then ext=`echo "$dir" | sed -ne 's!^.*\.!!p' | tr '[:upper:]' '[:lower:]'` &> /dev/null base=`echo "$dir" | sed -e 's!\.[^.]*$!!'` &> /dev/null if [ "$ext" = "$myext" ]; then echo -n "."; mac "$dir" - -d | flac - -o "$base.flac" &> /dev/null rm -f "$dir" &> /dev/null xx=`expr $xx + 1` numfiles=`expr $numfiles + 1` fi else if [ $xx > 0 ]; then echo " -> [$xx files converted]" xx=0 fi fi if [ -d "$dir" ]; then zz=0 while [ $zz != $deep ] do echo -n "| " zz=`expr $zz + 1` done if [ -L "$dir" ]; then echo -n "+---$dir" `ls -l $dir | sed 's/^.*'$dir' //'` else echo -n "+---$dir" if cd "$dir"; then deep=`expr $deep + 1` search numdirs=`expr $numdirs + 1` fi fi fi done cd .. if [ "$deep" ]; then swfi=1 fi deep=`expr $deep - 1` } if [ $# = 0 ]; then cd `pwd` elif [ -e "$1" ]; then cd $1 else echo "Path \"$1\" not found" exit 0 fi for i in ${prog_needed[@]} do echo -n "Checking for $i..... " if which "$i" &> /dev/null; then echo "Yes" else echo "No" echo "Programm $i is not installed. Please install $i first" exit 0 fi done echo echo "ape2flac 0.1b" echo echo "bash script to convert files compressed by Monkey's Audio into FLAC files." echo echo "Converting all files in directory = `pwd` and recurse indefinitely." echo swfi=0 deep=0 numdirs=0 numfiles=0 zz=0 xx=0 while [ "$swfi" != 1 ] do search done echo echo "Summary:" echo echo "Total directories = $numdirs" echo "Total files converted = $numfiles" echo exit 0 2)редактирую cue и режу, но виндовой прогой (и так сойдёт :) ) (программа свободная, если что ;) ) А вообще у меня такой скрипт:чёрт, в репах пакетов нет, придётся тарболлами :-\ Ладно, я не ищу лёгких путей, мне “мой” вариант тоже нравится ;D UPD Вот, имхо, полезная ссылка http://forum.ubuntu.ru/index.php?topic= … 3#msg72573 и вообще там много полезной инфы, всё-таки одно из самых больших сообществ :) |
stanislaw |
|
Темы:
4
Сообщения:
151
Участник с: 13 декабря 2008
|
Всё нужное я нашёл в оф.репах и AUR. |
shlemisto |
|
Темы:
12
Сообщения:
118
Участник с: 13 декабря 2008
|
stanislawэто да, есть такое а я простой, думал через pacman получу всё готовенькое, а нет, придётся поработать, но всё равно спасибо stanislaw |
stanislaw |
|
Темы:
4
Сообщения:
151
Участник с: 13 декабря 2008
|
shlemistostanislawэто да, есть такое Поставь yaourt, и жизнь станет намного легче. ;) |
kolebas |
|
Темы:
10
Сообщения:
94
Участник с: 15 октября 2008
|
Друзья, а помогите сделать скрипт - надо рекурсивно обойти все каталоги в коллекции и с помощью cuetag проставить теги в файлах , конвертированных во flac из ape. Одиночно теги проставляются командой cuetag.sh *.cue *.flac . Я понимаю, что надо использовать find и exec, но что то никак не выходит каменный цветок. |
iriver550 |
|
Темы:
4
Сообщения:
78
Участник с: 03 января 2009
|
зачем Вам грабли? есть гуевая прога-gcue2tracks. Вам надо только кодек поставить для чтения ape. в aur ищите. все что нужно было за последние 2 недели сконвертить - выполнилось без проблем. |
kolebas |
|
Темы:
10
Сообщения:
94
Участник с: 15 октября 2008
|
iriver550гуй - это не Ъ ))) , да и задача стоит просто проставить теги,РЕКУРСИВНО, на треки мне резать не надо, кодеков хватает, да и скриптов в гугле тоже, но именно такого не нашел , а тут просто по ходу выяснилось, что много музычки пережатой во флек без тегов - не аккуратненько |
iriver550 |
|
Темы:
4
Сообщения:
78
Участник с: 03 января 2009
|
теги предпочитаю при помощи easytag проставлять. если flac или ape есть большой шанс с cddb подтянуть тэги. |