nixos-config/nixos/assets/shrink_exports

58 lines
1.1 KiB
Bash
Executable File

#!/usr/bin/env bash
set -e
PROJECTS_FOLDER=~/music-projects/Rendered-Projects
GARBADGE_FOLDER=/share
# file separator (needed to handle files with spaces)
IFS="
"
function info_log(){
echo -n ">>> [ "
echo -n $@
echo " ]"
}
function run_ffmpeg(){
local input=$1
local output=$2
info_log "ffmpeg : ${output}"
ffmpeg \
-i "${input}" \
-f mp3 \
-codec:a libmp3lame \
-qscale:a 5 \
-ar 44100 \
-loglevel error \
-af loudnorm \
"${output}"
}
function delete(){
local input=$1
if [[ -e "${input}" ]]
then
info_log "move : ${input} to ${GARBADGE_FOLDER}"
mv "${input}" "${GARBADGE_FOLDER}/$(basename ${input})"
#info_log "delete : ${input}"
#rm "${input}"
fi
}
for file in `ls ${PROJECTS_FOLDER} | grep wav$`
do
filename=`basename ${file} .wav`
mp3="${filename}.mp3"
info_log ${filename}
delete "${PROJECTS_FOLDER}/${mp3}"
run_ffmpeg "${PROJECTS_FOLDER}/${file}" "${PROJECTS_FOLDER}/${mp3}"
delete "${PROJECTS_FOLDER}/${file}"
done