Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/bin/bash
- folder=$1; shift
- if test "$folder" == "" ; then
- echo "Please provide a folder containing music to re-encode."
- exit 1
- fi
- old_codec=${1:-alac}
- new_codec=${2:-aac}
- destdir=$(dirname "$folder")/Encoded
- echo "Writing re-encoded files to $destdir"
- echo
- find "$folder" -type f -not -name .\* | while read file; do
- #echo "$file"
- outfile=${file/#$folder/$destdir}
- if [ ! -f "$outfile" ]; then
- streams=$(ffprobe -loglevel quiet -show_streams "$file")
- if test "$?" == "1"; then
- echo "ffprobe error $file: $streams"
- else
- echo "$streams" | grep -q -e "codec_name=$old_codec";
- if test "$?" == "0"; then
- dir=$(dirname "$outfile")
- [[ -d "$dir" ]] || mkdir -p "$dir";
- echo "encoding $file"
- ffmpeg -nostdin -loglevel error -y -i "$file" -strict experimental -vn -sn -c:a "$new_codec" "$outfile";
- fi
- fi
- fi
- done
Add Comment
Please, Sign In to add comment