Skip to content

Instantly share code, notes, and snippets.

@dagbrown
Created July 13, 2010 01:10
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save dagbrown/473311 to your computer and use it in GitHub Desktop.
Save dagbrown/473311 to your computer and use it in GitHub Desktop.
#!/usr/bin/zsh
DELETE_WAV=true
while true
do
case "$1" in
-r)
shift;
RATE=$1
shift;
;;
-d)
DELETE=true
shift;
;;
*)
break
;;
esac
done
for file in "$@"
do
OGGFILE="$file"
WAVFILE="${OGGFILE%.ogg}".wav
AACFILE="${OGGFILE%.ogg}".m4a
FAACFLAGS=$(ogginfo "$OGGFILE" | grep '^[ ][ ]*[A-Z][A-Z]*=' | sed -e 's/^.//' -e 's/\([A-Z][A-Z]*\)=\(.*\)$/--\1 "\2"/' -e 's/ARTIST/artist/' -e 's/ALBUM/album/' -e 's/DATE/year/' -e 's/TRACKNUMBER/track/' -e 's/TITLE/title/' -e '/--COUNTRY/d' | tr '\n' ' ')
echo "FAACFLAGS=$FAACFLAGS"
if [ ! -f "${WAVFILE}" ]; then
oggdec "$OGGFILE"
fi
eval faac -w "$FAACFLAGS" \""$WAVFILE"\"
$DELETE_WAV && rm "$WAVFILE"
done
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment