Your ffmpeg was probably not configured with
--enable-libvo-aacenc. However there are other, higher quality AAC encoders that can be used with ffmpeg.
ffmpeg -codecs will list all encoders that have been configured for each supported codec; look for the "aac" line and the encoders listed on that line. If you don't have any other AAC encoder you can always use the experimental AAC encoder that is built-in to ffmpeg (
-strict experimental -c:a aac), or build your own ffmpeg with your favorite AAC encoder. For guidance on selecting an AAC encoder, see the ffmpeg AAC Encoding Guide.
Update: As of FFmpeg 3.0 (Feb 2016), libvo-aac has been removed from FFmpeg because the built-in AAC encoder has superior quality and is no longer experimental. It is suggested to use the built-in encoder (
-c:a aac) or libfdk-aac (
-c:a libfdk_aac) instead.