,-------------[Sun, Oct 11, 2009 at 16:25 +0300, Feata`lion Nyere``:] |никто в общем-то больше и не умеет, на сколько я знаю, я перегонял во flac. | |2009/10/11 Mikhail Ramendik <m...@ramendik.ru> | | Всем привет! | | Что-то у меня ничего, кроме mplayer/smplayer, не играет ape. Ни | kaffeine, ни vlc, ни даже монстр amarok. | | Это так должно быть или надо что-то установить? | | (Lenny) | | -- | Yours, Mikhail Ramendik | | | | |-- |Rgds, |----Feata`lion
я тоже) даже вот себе приделал для разгребания завалов музыки: <вложение> -- __________ mpd status: [playing] L.A. Guns - Until I Get You ************************************** * jabber: devil_ins...@jabber.ru * * Registered linux user #450844 * **************************************
#!/bin/sh #script for converting any other lossless formats to flac and split long audio track song by song #with autodetecting needful .cue (hi, musiccooders!) and converting it in comp's locale. #(c) Devil_InSide <devil_ins...@mail.ru> #v 0.1 ##we need some progs declare -a progs_we_need=(shntool mac wvunpack flac oggenc enca lltag) # NUMCUE=`ls -1 "$DIR"/* | grep \.cue$ | wc -l 2> /dev/null` num_cue () { echo num_cue dir "$DIR" if ! ls -1 "$DIR"/*.[Cc][Uu][Ee] 2> /dev/null; then NUMCUE=0 else if [ -d "$DIR" ]; then NUMCUE=0 for wv_cue in "$DIR"/*.[Cc][Uu][Ee] ; do NUMCUE=`expr $NUMCUE + 1` done fi fi } f_tag () { lltag -F %n---%a---%A---%t---%d --rename %a/[%d]-%A/[%n]-%t --rename-sep _ --yes "$1" } f_split () { FILE="$1" DIR=`dirname "$FILE"` NAME=`basename "$FILE" "$EXT"` echo f_split file "$FILE" echo f_split dir "$DIR" echo f_split name "$NAME" if [ ! -d "$DIR"/"$NAME" ]; then mkdir "$DIR"/"$NAME" fi if ! grep DATE "$CUE_FILE" ; then date_tag=1970 else date_tag=`grep DATE "$CUE_FILE" | sed 's/REM\ DATE\ //g' | tr -d [:cntrl:]` fi RSLT_DIR="$DIR"/"$NAME" shnsplit -f "$CUE_FILE" -d "$RSLT_DIR" -t "%n---%p---%a---%t"---$date_tag -o flac "$FILE" -P spin &&\ mv "$FILE" "$FILE".bak &&\ mv "$CUE_FILE" "$CUE_FILE".bak } get_ext () { EXT=`echo $( basename "$1" ) | sed -e 's/^.*\.//g'` } test_m_cue () { for i in "$DIR"/*.[Cc][Uu][Ee] ; do grep "$NAME" "$i" 2> /dev/null if [ $? -eq 0 ];then echo "$i" CUE_FILE="$i" else echo "хуй в" "$i" enca -c "$i" 2>/dev/null grep "$NAME" "$i" 2> /dev/null if [ $? -ne 0 ]; then tmp_cue="$DIR"/`basename "$i" cue` echo tmp-cue is "$tmp_cue" if [ "$NAME" != "$tmp_cue" ]; then CUE_FILE="$i" echo 3d cuefile is "$i" fi echo хуй второй раз в "$i" else CUE_FILE="$i" fi fi done } wv_extract () { FILE="$1" wvunpack -cc -o "$DIR"/"$NAME"-new -d -y "$FILE" CUE_FILE="$DIR"/"$NAME"-new.cue FILE="$DIR"/"$NAME"-new.wav } for n in ${progs_we_ne...@]}; do if ! which $n > /dev/null; then echo Install program $n\! exit 13 fi done for i in "$@" ; do if [ -f "$i" ]; then DIR=`dirname "$i"` FILE="$i" NAME=`basename "$i" "$EXT"` elif [ -d "$i" ];then DIR="$i" else : fi num_cue "$FILE" echo numcue is $NUMCUE echo dir is "$DIR" #if ! ls "$DIR"/*.[Cc][Uu][Ee] 2> /dev/null ; then # exit 14 #fi get_ext "$FILE" case "$EXT" in iso|ISO|wv|WV ) wv_extract "$FILE" &&\ get_ext "$FILE" &&\ #test_m_cue "$FILE" && \ f_split "$FILE" cur_dir=`pwd` cd "$RSLT_DIR" rename 'y/\ /_/' * for f in *.flac; do f_tag "$f" done cd "$cur_dir" NUMCUE=0 ;; ape|APE|flac|FLAC|wav|WAV) : if [ $NUMCUE -lt 1 ]; then exit 1 else : fi test_m_cue "$FILE" &&\ f_split "$FILE" cur_dir=`pwd` cd "$RSLT_DIR" rename 'y/\ /_/' * for f in *.flac; do f_tag "$f" done cd "$cur_dir" echo file is "$FILE" #echo last operation is $? echo cue_file "$CUE_FILE" NUMCUE=0 ;; *) echo not in ext : ;; esac done exit 0