Guest User

Untitled

a guest
Jan 11th, 2018
88
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.96 KB | None | 0 0
  1. #!/bin/bash
  2.  
  3. folder=$1; shift
  4.  
  5. if test "$folder" == "" ; then
  6. echo "Please provide a folder containing music to re-encode."
  7. exit 1
  8. fi
  9.  
  10. old_codec=${1:-alac}
  11. new_codec=${2:-aac}
  12.  
  13. destdir=$(dirname "$folder")/Encoded
  14.  
  15. echo "Writing re-encoded files to $destdir"
  16. echo
  17.  
  18. find "$folder" -type f -not -name .\* | while read file; do
  19. #echo "$file"
  20. outfile=${file/#$folder/$destdir}
  21.  
  22. if [ ! -f "$outfile" ]; then
  23. streams=$(ffprobe -loglevel quiet -show_streams "$file")
  24. if test "$?" == "1"; then
  25. echo "ffprobe error $file: $streams"
  26. else
  27. echo "$streams" | grep -q -e "codec_name=$old_codec";
  28. if test "$?" == "0"; then
  29. dir=$(dirname "$outfile")
  30. [[ -d "$dir" ]] || mkdir -p "$dir";
  31. echo "encoding $file"
  32. ffmpeg -nostdin -loglevel error -y -i "$file" -strict experimental -vn -sn -c:a "$new_codec" "$outfile";
  33. fi
  34. fi
  35. fi
  36. done
Add Comment
Please, Sign In to add comment