albumtohandy - konvertiert flac to mp3 von einer Sammlung
SYNOPSIS
- albentohandy [-3] [-c] [-f] [-g <a|t>] [-h] [-i <inputfile>]
- [-m <destfolder>] [-r] [-o] [-w <workdir>]
+ albentohandy [-3] [-c] [-f] [-h] [-o]
OPTIONS
-3 convert to mp3
-c cover.jpg stehen lassen
-f convert to flac
-h show this help
- -i <file> input Datei default=albumlist
- -m <dest> kopiert das Arbeitsverzeichnis
- in das angegeben Zielverzeichnis
-o convert to opus
- -r löscht das Arbeitsverzeichnis
- wenn -m angegeben ist
EOF
}
find $WORKDIR -name 'cover.jpg' -exec rm {} \;
}
-CleanupWorkDir()
-{
- local readonly WORKDIR="$1"
-
- printf "cleanup working directory\n\n"
- rm --recursive $WORKDIR
-}
-
make_symlinks_to_work()
{
local albumlist="$1"
done
}
-CopyWorkDirToDestDir()
-{
- local readonly WORKDIR="$1"
- local readonly DESTDIR="$2"
-
- mkdir --parents $DESTDIR
- cp --recursive $WORKDIR/* $DESTDIR
-}
-
load_config()
{
[ -f "$HOME/.albentohandy.conf" ] \
|| return $?
}
-AdvancedFeatures()
-{
- # copy work directory to destination folder
- if [ $cptodest == true ]; then
- printf "Phase %02d of %02d:\n" $((curphase++)) $phase
- printf "copy %s/ to destination %s\n\n" $WORK $dest
- CopyWorkDirToDestDir "$WORK" "$dest"
- fi
-
- # delete the working directory
- if [ $cptodest == true ] && [ $removework == true ]; then
- CleanupWorkDir "$WORK"
- fi
-}
-
convert_process()
{
local format="$1"
|| return $?
case "$format" in
- "mp3")
- convert_flac_to_mp3 "$workdir"
- cleanup_flac "$workdir"
- cleanup_cover "$workdir"
- ;;
- "flac")
- picture_to_flac "$workdir"
- cleanup_cover "$workdir"
- ;;
- "opus")
- convert_flac_to_opus "$workdir"
- cleanup_flac "$workdir"
- cleanup_cover "$workdir"
- ;;
- *)
- convert_cover_to_metadata "$workdir"
- convert_flac_to_ogg "$workdir"
- cleanup_flac "$workdir"
- cleanup_cover "$workdir"
- ;;
+ "mp3") convert_flac_to_mp3 "$workdir" ;;
+ "flac") picture_to_flac "$workdir" ;;
+ "opus") convert_flac_to_opus "$workdir" ;;
+ *) convert_cover_to_metadata "$workdir" \
+ && convert_flac_to_ogg "$workdir" ;;
esac
- # WIP
- return
-
- if [ $mp3 == true ]; then
- printf "\nPhase %02d of %02d: flac -> mp3\n" \
- $((curphase++)) $phase
- ConvertFlacToMp3 "$WORK"
- elif [ $flac == true ]; then
- printf "\nPhase %02d of %02d: flac -> flac with cover\n" \
- $((curphase++)) $phase
- FlacApplyReplayGain "$WORK"
- PictureToFlac "$WORK"
- elif [ $opus == true ]; then
- printf "\nPhase %02d of %02d: flac -> opus\n" \
- $((curphase++)) $phase
- ConvertFlacToOpus "$WORK"
- else
- printf "\nPhase %02d of %02d: flac -> ogg\n" \
- $((curphase++)) $phase
- ConvertCoverToMeta "$WORK"
- ConvertFlacToOgg "$WORK"
- fi
-
- printf "\nPhase %02d of %02d: cleanup\n\n" $((curphase++)) $phase
- if [ $flac == false ]; then
- CleanupFlac "$WORK"
- fi
- CleanupCover "$WORK"
+ cleanup_cover "$workdir"
+ [ "$format" != "flac" ] && cleanup_flac "$workdir"
}
main()
|| return $?
cover=false
- removework=false
- cptodest=false
while getopts "3cfg:hi:m:orw:" optname; do
case "$optname" in
"c") cover=true ;;
"f") format="flac" ;;
"h") Usage && return 0 ;;
- "i") albumlist="$OPTARG" ;;
- "m") cptodest=true && dest="$OPTARG" && ((phase++)) ;;
"o") format="opus" ;;
- "r") removework=true ;;
esac
done
convert_process "$format" || return $$
- AdvancedFeatures
}
main $*