← All posts

Cómo extraer audio de un video con FFmpeg — guía completa

Aprende a extraer audio de video con FFmpeg — convierte a MP3, AAC, FLAC, WAV, controla la tasa de bits, maneja audio multi-pista y conserva metadatos.

FFHub·2026-04-24
Cómo extraer audio de un video con FFmpeg — guía completa

Extraer audio de video con FFmpeg es sencillo — convierte a MP3, AAC, FLAC, WAV u Opus con control total sobre la tasa de bits, la frecuencia de muestreo y los metadatos. Ya sea que estés extrayendo un podcast de una grabación de video, extrayendo una pista de música o separando diálogos para transcripción, esta guía cubre todos los escenarios que encontrarás.

Try it in your browser

Sube un video, elige el formato (MP3 / AAC / FLAC / WAV), descarga el audio. Sin instalación de FFmpeg, funciona en el navegador.

Extracción básica de audio

La extracción más sencilla usa copia de flujo para extraer el audio sin recodificar:

# Extraer audio sin recodificar (conserva el formato original)
ffmpeg -i input.mp4 -vn -c:a copy output.aac
  • -vn desactiva la grabación de video (extrae solo el audio)
  • -c:a copy copia el flujo de audio tal cual (sin pérdida de calidad, instantáneo)

Necesitas conocer el formato de audio fuente para elegir la extensión correcta (si no estás familiarizado con FFmpeg, primero consulta nuestra guía de inicio con FFmpeg). Verifícalo primero:

# Verificar qué códec de audio usa el video
ffprobe -v error -select_streams a:0 -show_entries stream=codec_name -of default=nw=1 input.mp4

Esto puede devolver codec_name=aac, indicándote que uses .aac o .m4a como extensión.

Extraer a formatos específicos

MP3 — Compatibilidad universal

# Extraer a MP3 a 192 kbps
ffmpeg -i input.mp4 -vn -c:a libmp3lame -b:a 192k output.mp3

# Extraer a MP3 usando calidad VBR (recomendado)
ffmpeg -i input.mp4 -vn -c:a libmp3lame -q:a 2 output.mp3

Escala de calidad VBR de MP3: 0 (la mejor, ~245 kbps) a 9 (la peor, ~65 kbps). Un valor de 2 (~190 kbps) es un buen equilibrio. Si también necesitas convertir entre formatos de video, aplican los mismos conceptos de códec y tasa de bits.

AAC — El mejor para Apple y la web

# Extraer a AAC a 192 kbps
ffmpeg -i input.mp4 -vn -c:a aac -b:a 192k output.m4a

# AAC de mayor calidad
ffmpeg -i input.mp4 -vn -c:a aac -b:a 256k output.m4a

Opus — La mejor calidad por bit

Opus ofrece una calidad de audio superior a tasas de bits más bajas, especialmente para voz.

# Extraer a Opus a 128 kbps (excelente calidad)
ffmpeg -i input.mp4 -vn -c:a libopus -b:a 128k output.opus

# Opus para contenido de voz (tasa de bits baja está bien)
ffmpeg -i input.mp4 -vn -c:a libopus -b:a 64k output.opus

FLAC — Compresión sin pérdida

# Extraer a FLAC (sin pérdida, más pequeño que WAV)
ffmpeg -i input.mp4 -vn -c:a flac output.flac

WAV — Sin comprimir

# Extraer a WAV (PCM 16 bits)
ffmpeg -i input.mp4 -vn -c:a pcm_s16le output.wav

# Extraer a WAV (PCM 24 bits para mayor precisión)
ffmpeg -i input.mp4 -vn -c:a pcm_s24le output.wav

Comparación de formatos

FormatoTipoCalidad a 128 kbpsTamaño del archivoIdeal para
MP3Con pérdidaBuenaPequeñoReproducción universal
AACCon pérdidaMejorPequeñoApple, web, streaming
OpusCon pérdidaExcelenteEl más pequeñoWeb, VoIP, podcasts
VorbisCon pérdidaBuenaPequeñoProyectos de código abierto
FLACSin pérdidaPerfectaMedianoArchivado, audiófilos
WAVSin comprimirPerfectaGrandeEdición, producción
ALACSin pérdidaPerfectaMedianoEcosistema Apple

Configuración de tasa de bits y calidad

Elegir la tasa de bits adecuada

La tasa de bits ideal depende del tipo de contenido y el formato de destino:

ContenidoMP3AACOpus
Voz/podcasts96-128 kbps64-96 kbps48-64 kbps
Música (casual)192 kbps128 kbps96-128 kbps
Música (alta calidad)320 kbps256 kbps160-192 kbps
ArchivadoUsa FLACUsa FLACUsa FLAC

Control de la frecuencia de muestreo

Puedes cambiar la frecuencia de muestreo durante la extracción:

# Reducir a 22050 Hz (adecuado para voz)
ffmpeg -i input.mp4 -vn -c:a libmp3lame -b:a 96k -ar 22050 output.mp3

# Mantener calidad CD estándar (44100 Hz)
ffmpeg -i input.mp4 -vn -c:a flac -ar 44100 output.flac

Control de canales

# Convertir a mono (ideal para voz, reduce el tamaño a la mitad)
ffmpeg -i input.mp4 -vn -c:a libmp3lame -b:a 96k -ac 1 output.mp3

# Forzar salida estéreo
ffmpeg -i input.mp4 -vn -c:a aac -b:a 192k -ac 2 output.m4a

Extraer una pista de audio específica

Los videos pueden contener múltiples pistas de audio (distintos idiomas, comentarios, etc.). Usa -map para seleccionar una específica:

# Listar todos los flujos del archivo
ffprobe -v error -show_streams -of json input.mkv | grep -E "index|codec_name|codec_type|language"

# Extraer la primera pista de audio (predeterminada)
ffmpeg -i input.mkv -map 0:a:0 -c:a copy output_track1.aac

# Extraer la segunda pista de audio
ffmpeg -i input.mkv -map 0:a:1 -c:a copy output_track2.aac

# Extraer todas las pistas de audio como archivos separados
ffmpeg -i input.mkv -map 0:a:0 track1.mp3 -map 0:a:1 track2.mp3

La sintaxis 0:a:0 significa: primer archivo de entrada (0), flujos de audio (a), primer flujo de audio (0).

Extraer audio de un rango de tiempo específico

# Extraer audio de 1:30 a 3:45
ffmpeg -i input.mp4 -vn -ss 00:01:30 -to 00:03:45 -c:a libmp3lame -b:a 192k output.mp3

# Extraer los primeros 60 segundos de audio
ffmpeg -i input.mp4 -vn -t 60 -c:a copy output.aac

Coloca -ss antes de -i para una búsqueda más rápida (puede ser menos precisa) o después de -i para una búsqueda precisa por fotograma.

Conservar metadatos

Por defecto, FFmpeg transfiere los metadatos. También puedes controlarlos explícitamente:

# Extraer audio conservando todos los metadatos
ffmpeg -i input.mp4 -vn -c:a libmp3lame -b:a 192k -map_metadata 0 output.mp3

# Extraer audio y agregar/sobreescribir metadatos
ffmpeg -i input.mp4 -vn -c:a libmp3lame -b:a 192k \
  -metadata title="Episodio 42" \
  -metadata artist="Mi Podcast" \
  -metadata album="Temporada 2" \
  -metadata date="2026" \
  output.mp3

# Extraer audio y eliminar todos los metadatos
ffmpeg -i input.mp4 -vn -c:a libmp3lame -b:a 192k -map_metadata -1 output.mp3

Extraer e incrustar carátula del álbum

# Extraer audio con miniatura del video
ffmpeg -i input.mp4 -vn -c:a libmp3lame -b:a 192k \
  -c:v copy -disposition:v attached_pic output.mp3

Esto toma el primer fotograma del video (a menudo una miniatura en videos musicales) y lo incrusta como carátula del álbum.

Extracción por lotes

Extraer audio de todos los videos en un directorio

# Extraer todos los archivos MP4 a MP3
for f in *.mp4; do
  ffmpeg -i "$f" -vn -c:a libmp3lame -b:a 192k "${f%.mp4}.mp3"
done

# Extraer todos los archivos de video (formatos mixtos) a AAC
for f in *.mp4 *.mkv *.avi *.mov; do
  [ -f "$f" ] || continue
  name="${f%.*}"
  ffmpeg -i "$f" -vn -c:a aac -b:a 192k "${name}.m4a"
done

Extracción por lotes con presets de calidad

#!/bin/bash
# Extraer audio de todos los videos en el directorio actual
# Uso: ./extract_audio.sh [quality]
# quality: low (96k), medium (192k), high (320k), lossless

QUALITY="${1:-medium}"

case "$QUALITY" in
  low)     CODEC="-c:a libmp3lame -b:a 96k";  EXT="mp3" ;;
  medium)  CODEC="-c:a libmp3lame -b:a 192k"; EXT="mp3" ;;
  high)    CODEC="-c:a libmp3lame -b:a 320k"; EXT="mp3" ;;
  lossless) CODEC="-c:a flac";                 EXT="flac" ;;
esac

for f in *.mp4 *.mkv *.avi *.mov *.webm; do
  [ -f "$f" ] || continue
  echo "Extracting: $f"
  ffmpeg -i "$f" -vn $CODEC "${f%.*}.$EXT"
done

Ajuste de volumen durante la extracción

Puedes normalizar o ajustar el volumen mientras extraes:

# Aumentar el volumen un 50%
ffmpeg -i input.mp4 -vn -c:a libmp3lame -b:a 192k -af "volume=1.5" output.mp3

# Reducir el volumen a la mitad
ffmpeg -i input.mp4 -vn -c:a libmp3lame -b:a 192k -af "volume=0.5" output.mp3

# Normalizar la sonoridad del audio (estándar EBU R128)
ffmpeg -i input.mp4 -vn -c:a libmp3lame -b:a 192k \
  -af "loudnorm=I=-16:TP=-1.5:LRA=11" output.mp3

El filtro loudnorm es especialmente útil para podcasts y contenido de voz donde la sonoridad consistente es importante. Para más información sobre la optimización del tamaño de archivos de medios, consulta nuestras mejores prácticas de compresión de video.

Extraer audio desde URLs de streaming

FFmpeg puede extraer audio directamente desde URLs:

# Extraer audio desde una URL de video directa
ffmpeg -i "https://example.com/video.mp4" -vn -c:a libmp3lame -b:a 192k output.mp3

Solución de problemas

"Stream copy" produce un archivo que no se reproduce — El códec extraído puede no ser compatible con el contenedor elegido. Por ejemplo, extraer audio Opus a .mp3 no funcionará con -c:a copy. Usa la extensión correcta o recodifica.

El audio de salida no tiene sonido — El video puede tener múltiples pistas de audio y la predeterminada está vacía. Usa ffprobe para identificar las pistas, luego -map para seleccionar la correcta.

Advertencias "Discarding packet" — Generalmente inofensivas, pero si el audio está corrupto, intenta recodificar en lugar de copiar el flujo.

El audio y las marcas de tiempo están desincronizados — Agrega -async 1 para corregir problemas de sincronización:

ffmpeg -i input.mp4 -vn -async 1 -c:a libmp3lame -b:a 192k output.mp3

Resumen

  • Usa -c:a copy para extraer sin recodificar (más rápido, sin pérdida)
  • Elige MP3 para compatibilidad universal, Opus para la mejor calidad, FLAC para audio sin pérdida
  • Usa ffprobe para inspeccionar las pistas de audio antes de extraer
  • Usa -map 0:a:N para seleccionar una pista de audio específica
  • Aplica -af loudnorm para normalizar el volumen y obtener reproducción consistente
  • Usa scripts por lotes para procesar directorios completos de una vez
Try it in your browser

Sin línea de comandos — sube un video a FFHub y elige el formato. Los mismos parámetros de FFmpeg funcionan en segundo plano, sin necesidad de instalar nada.

Preguntas frecuentes

¿Cómo extraigo audio de un MP4 sin recodificar?

Usa ffmpeg -i input.mp4 -vn -c:a copy output.aac. El parámetro -vn elimina el flujo de video y -c:a copy mantiene el flujo de audio sin cambios (sin pérdida e instantáneo). Elige la extensión de salida que coincida con el códec fuente — ejecuta ffprobe -v error -select_streams a:0 -show_entries stream=codec_name input.mp4 para verificar qué hay dentro.

¿Cuál es el mejor formato de audio para podcasts?

Para podcasts solo de voz, Opus a 48-64 kbps ofrece una excelente calidad con aproximadamente la mitad del tamaño de MP3. Si necesitas compatibilidad universal con todos los reproductores y plataformas, MP3 a 128 kbps es la opción más segura. AAC a 96 kbps está entre los dos: ideal para el ecosistema Apple y los navegadores modernos.

¿Puede FFmpeg extraer audio de una URL de video directamente?

Sí. FFmpeg acepta URLs HTTP(S) como entrada: ffmpeg -i "https://example.com/video.mp4" -vn -c:a libmp3lame -b:a 192k output.mp3. No es necesario descargar el video primero. Funciona con cualquier URL de video directa que FFmpeg pueda analizar.

¿Cómo extraigo una pista de audio específica de un video multi-pista?

Usa -map 0:a:N donde N es el índice de la pista (base cero). Por ejemplo, ffmpeg -i input.mkv -map 0:a:1 -c:a copy second_track.aac extrae la segunda pista de audio. Usa ffprobe -v error -show_streams input.mkv primero para listar todas las pistas y sus etiquetas de idioma.

¿Por qué mi audio extraído no tiene sonido o está corrupto?

Generalmente porque la pista de audio predeterminada está vacía (común en grabaciones de pantalla o videos con múltiples pistas de idioma). Ejecuta ffprobe para identificar todos los flujos de audio, luego usa -map 0:a:N para seleccionar el correcto. Si ves advertencias "discarding packet", reemplaza -c:a copy con un códec real como -c:a libmp3lame para forzar la recodificación.

¿Debo usar extracción sin pérdida (FLAC) o con pérdida (MP3)?

Usa FLAC si estás archivando, haciendo edición adicional o extrayendo desde una fuente sin pérdida. Usa MP3 u Opus para reproducción, podcasts, compartir o entrega web — el ahorro de tamaño supera ampliamente la diferencia de calidad imperceptible a tasas de bits razonables (192 kbps para MP3, 96 kbps para Opus).

Artículos relacionados

Cómo extraer audio de un video con FFmpeg — guía completa | FFHub