AAC: Advanced Audio Coding — El Formato Detrás de Cada MP4 e iPhone
AAC (Advanced Audio Coding) es el códec de audio incrustado en prácticamente cada vídeo que has visto online y cada canción almacenada en un iPhone. Es el formato de audio predeterminado en contenedores MP4, el estándar para iTunes/Apple Music, YouTube, Instagram, TikTok y plataformas de streaming globalmente.
¿Qué Es AAC?
AAC fue desarrollado como sucesor de MP3 por una colaboración conjunta de Fraunhofer, AT&T Bell Labs, Dolby Laboratories, Sony y Nokia. Fue estandarizado como ISO/IEC 13818-7 (MPEG-2 AAC, 1997) y mejorado como ISO/IEC 14496-3 (MPEG-4 Audio, 1999). Apple lo adoptó como estándar de iTunes en 2003.
A igualdad de tasa de bits, AAC ofrece notablemente mejor calidad que MP3, especialmente:
- A tasas bajas (64–96 kb/s): AAC es dramáticamente más claro
- Imagen estéreo: AAC usa el estéreo conjunto más eficazmente
- Altas frecuencias: el banco de filtros de AAC preserva mejor las frecuencias por encima de 15 kHz
Perfiles AAC
| Perfil | Nombre completo | Rango de tasa | Mejor para |
|---|---|---|---|
| AAC-LC | Baja Complejidad | 64 – 320 kb/s | Música, podcasts, audio general |
| HE-AAC v1 | Alta Eficiencia + SBR | 24 – 64 kb/s | Streaming, radio |
| HE-AAC v2 | HE-AAC + PS | 12 – 32 kb/s | Streaming de muy baja tasa |
| AAC-LD | Baja Latencia | 32 – 128 kb/s | Comunicación en tiempo real |
| AAC-ELD | Baja Latencia Mejorada | 16 – 64 kb/s | VoIP, FaceTime |
AAC-LC es la base usada en todas partes. HE-AAC añade Replicación de Banda Espectral (SBR): el codificador transmite solo la mitad inferior del espectro e incluye una descripción compacta de la mitad superior. HE-AAC v2 añade adicionalmente Estéreo Paramétrico (PS): el estéreo se codifica como mono + parámetros estéreo.
Formatos Contenedor para AAC
| Extensión | Contenedor | Contenidos | Uso |
|---|---|---|---|
.m4a |
ISOBMFF/MP4 | AAC-LC o HE-AAC | Apple Music, descargas iTunes |
.aac |
ADTS (raw) | AAC-LC | Streaming, broadcast |
.mp4 |
ISOBMFF | Vídeo + audio AAC | Ficheros de vídeo |
.m4b |
ISOBMFF | AAC + marcas de capítulo | Audiolibros (iTunes) |
.m4r |
ISOBMFF | Clip AAC corto | Tonos de llamada iPhone |
Conversión a AAC con FFmpeg
# MP3/WAV/FLAC → AAC-LC a 256 kb/s (calidad iTunes)
ffmpeg -i entrada.flac -c:a aac -b:a 256k salida.m4a
# AAC-LC usando FDK AAC (codificador de mayor calidad)
ffmpeg -i entrada.flac -c:a libfdk_aac -b:a 256k salida.m4a
# HE-AAC v1 (streaming, 48 kb/s)
ffmpeg -i entrada.mp3 -c:a libfdk_aac -profile:a aac_he -b:a 48k salida.m4a
# HE-AAC v2 (muy baja tasa de bits, 32 kb/s estéreo)
ffmpeg -i entrada.mp3 -c:a libfdk_aac -profile:a aac_he_v2 -b:a 32k salida.m4a
# Modo VBR (escala de calidad 1-5, menor=mejor)
ffmpeg -i entrada.flac -c:a libfdk_aac -vbr 4 salida.m4a
# Extraer audio de MP4 sin recodificar
ffmpeg -i entrada.mp4 -c:a copy -vn salida.m4a
# Convertir M4A a MP3
ffmpeg -i entrada.m4a -c:a libmp3lame -q:a 2 salida.mp3
# Normalizar audio + codificar AAC
ffmpeg -i entrada.wav \
-af "loudnorm=I=-16:TP=-1.5:LRA=11" \
-c:a libfdk_aac -b:a 192k salida.m4a
Python: Conversión AAC con Pydub y Mutagen
from pydub import AudioSegment
import mutagen.mp4
# Convertir MP3 a M4A (AAC)
audio = AudioSegment.from_mp3("entrada.mp3")
audio.export("salida.m4a", format="mp4",
codec="aac", bitrate="192k",
parameters=["-strict", "-2"])
# Leer metadatos M4A con mutagen
tags = mutagen.mp4.MP4("entrada.m4a")
print(f"Título: {tags.get('©nam', ['?'])[0]}")
print(f"Artista: {tags.get('©ART', ['?'])[0]}")
print(f"Álbum: {tags.get('©alb', ['?'])[0]}")
print(f"Año: {tags.get('©day', ['?'])[0]}")
# Escribir metadatos M4A
tags['©nam'] = ['Mi Título de Canción']
tags['©ART'] = ['Nombre del Artista']
tags['©alb'] = ['Nombre del Álbum']
tags['©day'] = ['2024']
tags.save()
# Verificar propiedades del stream AAC
info = mutagen.mp4.MP4("entrada.m4a").info
print(f"Duración: {info.length:.1f}s")
print(f"Tasa de bits: {info.bitrate} kb/s")
print(f"Canales: {info.channels}")
print(f"Frecuencia de muestreo: {info.sample_rate} Hz")
Comparativa de Calidad AAC
| Tasa de bits | Calidad | Notas |
|---|---|---|
| 320 kb/s | Transparente | Indistinguible del original |
| 256 kb/s | Transparente | Estándar iTunes Plus |
| 192 kb/s | Casi transparente | Excelente para la mayoría del contenido |
| 128 kb/s | Alta calidad | Streaming estándar |
| 48 kb/s HE-AAC | Buena | Calidad de radio broadcast |
Escenarios Comunes con AAC
Archivado de música de CD: Extrae a FLAC primero (sin pérdida), luego transcodifica opcionalmente a AAC-LC 256 kb/s para copias en dispositivos. Nunca transcodifiques de un formato con pérdida a otro con pérdida.
Publicación de podcasts: AAC-LC mono 64–96 kb/s para contenido solo de voz. Estéreo solo si tienes música de fondo.
Creación de tonos de llamada iPhone: Convierte cualquier audio a AAC, envuelve en M4A, renombra a .m4r, importa en iTunes. La duración debe ser ≤40 segundos.
Subida a YouTube: YouTube recodifica el audio a AAC 128 kb/s u Opus 128 kb/s independientemente de lo que subas. Sube a 256 kb/s+ para evitar degradación por doble codificación.
Resumen
AAC es el códec de audio dominante de la era del streaming — incrustado en cada MP4, M4A y compra de iTunes. Su calidad superior frente a MP3 a bajas tasas de bits, combinada con amplio soporte hardware (prácticamente todos los dispositivos modernos incluyen decodificadores hardware de AAC), lo convierte en la elección práctica para cualquier audio que necesite ser compatible con el ecosistema Apple, YouTube o la televisión broadcast.
Conversiones relacionadas
Conversiones de vídeo que encajan con esta guía: