How to decode AAC (.m4a) audio files into WAV?

How would you convert (decode) AAC files into WAV format? (Or, if you prefer, how to decode & re-encode them into MP3 or Ogg Vorbis? But WAV is sufficient as I already have good tools for WAV ➔ MP3/Ogg conversion.)

I'm mostly interested in Mac or Linux solutions, but feel free to mention Windows ones too.

(Use case: I have some voice memos ("Apple lossless audio file"), recorded with iPhone, that I'd like to share in a format that's more common than AAC.)


Solution 1:

The easiest way to do this is probably with iTunes. In your preferences, go to Import Settings and choose "Import Using" to WAV encoder. Then you can right-click on any AAC song and choose "Create WAV version." You should be able to select a bunch of files at once and do this to them in bulk.

Nota bene: Don't forget to switch your import settings back to AAC when you're done, presuming you still want to be using it.

Solution 2:

On Ubuntu, I use avconv on the command line:

avconv -i input.m4a output.wav

You can also use FFmpeg with the same syntax, simply replacing avconv with ffmpeg.


This can do every M4A in a directory, combined with a for loop:

Linux:

for f in *.m4a; do avconv -i "$f" "${f/%m4a/wav}"; done

Windows (directly in the command prompt):

FOR %G IN (*.m4a) DO avconv -i "%G" "%~nG.wav"

Windows (in a batch file):

FOR %%G IN (*.m4a) DO avconv -i "%%G" "%%~nG.wav"


If you want a GUI, you may consider WinFF, which is a GUI for FFmpeg.