2010-07-15 22 views
51

Necesito convertir archivos de audio a mp3 usando ffmpeg.Convertir archivos de audio a mp3 usando ffmpeg

cuando escribo el comando como ffmpeg -i audio.ogg -acodec mp3 newfile.mp3, me sale el error:

FFmpeg version 0.5.2, Copyright (c) 2000-2009 Fabrice Bellard, et al. 
    configuration: 
    libavutil  49.15. 0/49.15. 0 
    libavcodec 52.20. 1/52.20. 1 
    libavformat 52.31. 0/52.31. 0 
    libavdevice 52. 1. 0/52. 1. 0 
    built on Jun 24 2010 14:56:20, gcc: 4.4.1 
Input #0, mp3, from 'ZHRE.mp3': 
    Duration: 00:04:12.52, start: 0.000000, bitrate: 208 kb/s 
    Stream #0.0: Audio: mp3, 44100 Hz, stereo, s16, 256 kb/s 
Output #0, mp3, to 'audio.mp3': 
    Stream #0.0: Audio: 0x0000, 44100 Hz, stereo, s16, 64 kb/s 
Stream mapping: 
    Stream #0.0 -> #0.0 
Unsupported codec for output stream #0.0 

También me encontré con este comando:

ffmpeg -formats | grep mp3 

y tengo esto en respuesta:

FFmpeg version 0.5.2, Copyright (c) 2000-2009 Fabrice Bellard, et al. 
    configuration: 
    libavutil  49.15. 0/49.15. 0 
    libavcodec 52.20. 1/52.20. 1 
    libavformat 52.31. 0/52.31. 0 
    libavdevice 52. 1. 0/52. 1. 0 
    built on Jun 24 2010 14:56:20, gcc: 4.4.1 
DE mp3    MPEG audio layer 3 
D A mp3    MP3 (MPEG audio layer 3) 
D A mp3adu   ADU (Application Data Unit) MP3 (MPEG audio layer 3) 
D A mp3on4   MP3onMP4 
text2movsub remove_extra noise mov2textsub mp3decomp mp3comp mjpegadump imxdump h264_mp4toannexb dump_extra 

Supongo que el códec mp3 no está instalado. ¿Estoy aquí? Puede alguien ayudarme aquí ?

Respuesta

13

No importa,

Estoy convirtiendo mis archivos de audio en MP2 usando el comando:

ffmpeg -i input.wav -f mp2 output.mp3 

Este comando funciona perfectamente.

sé que este hecho convierte los archivos al formato MP2, pero luego los tamaños de los archivos resultantes son los mismos ..

+1

Genera un archivo de onda – LtWorf

+3

Este no es re sult en un archivo mp3 – m13r

83

Una lista muy completa de argumentos ffmpeg se puede encontrar aquí:

http://www.catswhocode.com/blog/19-ffmpeg-commands-for-all-needs

lo que podría utilizar este comando:

ffmpeg -i input.wav -vn -ar 44100 -ac 2 -ab 192k -f mp3 output.mp3 

Explicación de los argumentos utilizados en este ejemplo:

  • -i - archivo de entrada

  • -vn - Desactivar vídeo, para asegurarse de que no hay vídeo se incluye si la fuente sería un archivo de vídeo

  • -ar - Ajuste la frecuencia de muestreo de audio. Para las transmisiones de salida, se establece de manera predeterminada a la frecuencia de la corriente de entrada correspondiente. Para los flujos de entrada, esta opción solo tiene sentido para los dispositivos de adquisición de audio y los demultiplexores en bruto y se asigna a las opciones de demuxer correspondientes.

  • -ac - Establezca la cantidad de canales de audio. Para las transmisiones de salida, está configurado por defecto para la cantidad de canales de audio de entrada. Para los flujos de entrada, esta opción solo tiene sentido para los dispositivos de adquisición de audio y los demultiplexores en bruto y se asigna a las opciones de demuxer correspondientes. Por lo tanto se utiliza aquí para asegurarse de que es estéreo (2 canales)

  • -ab - en realidad parece ser cambiado, por lo que debe ser reemplazado por una versión más reciente ffmpeg para -b:a 192k Convierte la tasa de bits de audio para ser 192kbit exacta por segundo

  • -f - Fuerza el formato de archivo de entrada o salida. El formato normalmente se detecta automáticamente para los archivos de entrada y se adivina desde la extensión de archivo para los archivos de salida, por lo que esta opción no es necesaria en la mayoría de los casos.

+0

este artículo es de 2008, algo más actualizado? – nkint

+3

@nikt: 'man ffmpeg' ¡el más actualizado! – mohamnag

+3

[Esto toma nota de la diferencia para los argumentos de tasa de bits ffmpeg] (https://trac.ffmpeg.org/wiki/Encode/MP3). '-qscale: a' es para VBR y' -b: a' es para CBR. La codificación ABR es posible pero detallada en un lugar diferente. – fredsbend

8

que tuvieron que purgar mi ffmpeg y luego instalar otro desde un PPA:

sudo apt-get purge ffmpeg 
sudo apt-add-repository -y ppa:jon-severinsson/ffmpeg 
sudo apt-get update 
sudo apt-get install ffmpeg 

A continuación, convertir:

ffmpeg -i audio.ogg -f mp3 newfile.mp3 
+3

esta es la manera corta, pero si desea especificar la calidad kb por segundos, use -ab 192k – wrivas

17

1) WAV a MP3

ffmpeg -i audio.wav -acodec libmp3lame audio.mp3 

2) ogg to mp3

ffmpeg -i audio.ogg -acodec libmp3lame audio.mp3 

3) AC3 a mp3

ffmpeg -i audio.ac3 -acodec libmp3lame audio.mp3 

4) aac a mp3

ffmpeg -i audio.aac -acodec libmp3lame audio.mp3 

Obtener todos los formatos de conversión ffmpeg here.

+0

¿Cómo se especifica la tasa de bits de mp3? – Suragch

+2

Agrega '-b: a 128k' para 128 kbps. – Mulvya

3

Para los archivos de procesamiento por lotes en la carpeta:

for i in *.wav; do ffmpeg -i "$i" -f mp3 "${i%}.mp3"; done 

Este script convierte todos los archivos "WAV" en la carpeta de archivos mp3 y añade la extensión mp3

ffmpeg tiene que ser instalado. (Ver otras respuestas)

+1

Con '-f mp2' se genera MP2, no MP3. Cámbielo a '-f mp3' – Mulvya

+0

@Mulvya gracias. Actualizado –

+0

El comando anterior crea archivos que se denominan 'wav.mp3'. Para obtener archivos con la extensión de archivo correcta, cambie el comando a: 'for i in * .wav; hacer ffmpeg -i "$ i" -f mp3 "$ {i%. *}. mp3"; done', es decir, agregue '. *' después de 'i%'. –

4

Para el procesamiento por lotes de archivos en la carpeta con el objetivo de 190 VBR y el archivo de extensión .mp3 = en lugar de .ac3.mp3 puede utilizar el siguiente código de

Cambio .ac3 a cualquiera que sea la fuente de audio el formato es

ffmpeg mp3 settings

for f in *.ac3 ; do ffmpeg -i "$f" -acodec libmp3lame -q:a 2 "${f%.*}.mp3"; done 
0

Trate Construir FFmpeg estático Link

Documentación: https://www.johnvansickle.com/ffmpeg/

anfitrión de la acumulación de electricidad estática en el servidor en el mismo directorio

$ffmpeg = dirname(__FILE__).'/ffmpeg'; 

$command = $ffmpeg.'ffmpeg -i audio.ogg -acodec libmp3lame audio.mp3'; 

shell_exec($command); 
+0

Esto no proporciona una respuesta a la pregunta.Una vez que tenga suficiente [reputación] (https://stackoverflow.com/help/whats-reputation) podrá [comentar cualquier publicación] (https://stackoverflow.com/help/privileges/comment); en su lugar, [brinde respuestas que no requieran aclaración del autor de la pregunta] (https://meta.stackexchange.com/questions/214173/why-do-i-need-50-reputation-to-comment-what-can- i-do-instead). - [De la crítica] (/ review/low-quality-posts/18634916) – thewaywewere

Cuestiones relacionadas