Resumen:esta guía detallada muestra cómo instalar ffmpeg en Ubuntu y otras distribuciones de Linux. También muestra algunos comandos ffmpeg útiles para uso práctico.
ffmpeg es una utilidad CLI (basada en la línea de comandos) para procesar archivos multimedia. Es un framework con multitud de funcionalidades y, debido a su licencia de código abierto, es la base de muchas apps muy extendidas como VLC, YouTube, iTunes y muchas más. Varios editores de video de Linux usan ffmpeg debajo de la GUI.
Lo que me encanta aún más de ffmpeg es que se puede usar solo para realizar muchas tareas de procesamiento de una manera muy simple (con uno o dos comandos). Sin embargo, es un programa muy poderoso que se puede usar de formas más complejas e incluso reemplazar un flujo de trabajo de edición.
En este tutorial de ffmpeg, le mostraré cómo instalar ffmpeg y cubriré sus diferentes usos. Incluso entraré en algunas características más complejas.
Estas son las secciones de esta guía:
- Instalando ffmpeg
- Uso básico de ffmpeg
- Uso avanzado de ffmpeg
- Aspectos básicos de los filtros
Estaré explicando todo en detalle para que puedas entender lo que está pasando incluso si eres nuevo en el mundo de Linux.
Usaré Ubuntu 18.04 , pero estos comandos también deberían funcionar para otras distribuciones.
¡Vamos a por ello!
Instalación de ffmpeg en Ubuntu y otros Linux
Instalando ffmpeg es un proceso sencillo. Es una aplicación popular y está disponible en la mayoría de las distribuciones de Linux a través del administrador de paquetes.
Instalar ffmpeg en Ubuntu
En Ubuntu, ffmpeg está disponible en el repositorio de Universe, así que asegúrese de habilitar el repositorio de Universe. y luego actualice la lista de paquetes e instale ffmpeg. Puede hacer todo esto usando los siguientes comandos en una terminal:
sudo add-apt-repository universe
sudo apt update
sudo apt install ffmpeg
¡Eso debería ser! Puede verificar la instalación simplemente escribiendo:
ffmpeg
Esto debería mostrar un texto que describa su ffmpeg configuración (incluida la versión ).
Como puede ver en la captura de pantalla anterior, la versión instalada es 3.4.4 . Sin embargo, la última versión de ffmpeg al momento de escribir este artículo es 4.1 . Para instalar cualquier 4.x versión, tendrás que usar el ffmpeg ppa . Haga clic para expandir la siguiente sección para ver los detalles de la instalación de ffmpeg a través de PPA.
Hay un PPA no oficial que puede usar para instalar la última versión de ffmpeg. Simplemente use estos comandos:
sudo add-apt-repository ppa:jonathonf/ffmpeg-4
sudo apt update
sudo apt install ffmpeg -y
Instalar ffmpeg en distribuciones basadas en Arch
Para instalar ffmpeg en distribuciones basadas en Arch, use el siguiente comando:
sudo pacman -S ffmpeg
Instalar ffmpeg en distribuciones basadas en Fedora
Para instalar ffmpeg en distribuciones de Linux basadas en Fedora, puede usar este comando:
sudo dnf install ffmpeg
Cómo usar ffmpeg:conceptos básicos
Con ffmpeg instalado, repasaré los comandos básicos para que pueda comenzar a usar esta poderosa herramienta.
0. Comandos ffmpeg
La forma básica un comando ffmpeg es:
ffmpeg [global_options] {[input_file_options] -i input_url} ... {[output_file_options] output_url} ...
Debe tener en cuenta que todas las opciones de archivo se aplican solo al archivo que las sigue (tendrá que volver a escribirlas para el siguiente archivo).
Cualquier archivo no precedido por -i se considera un archivo de salida. Fmpeg usa tantas entradas y salidas como usted proporcione. También puede usar el mismo nombre para un archivo de entrada y uno de salida, pero tendrá que agregar -y etiqueta antes del nombre del archivo de salida.
Nota
No debes mezclar entradas y salidas; especifique los archivos de entrada primero, luego especifique los archivos de salida.
1. Obtener información del archivo multimedia
El primer uso de ffmpeg está mostrando información sobre un archivo multimedia. Esto se puede hacer al no ingresar ningún archivo de salida. Simplemente escriba:
ffmpeg -i file_name
Esto funciona tanto para archivos de audio como de video:
ffmpeg -i video_file.mp4
ffmpeg -i audio_file.mp3
Aunque útil, este comando mostrará demasiada información que no es relevante para su archivo (información sobre ffmpeg). Para omitir eso, agregue -hide_banner bandera:
ffmpeg -i video_file.mp4 -hide_banner
ffmpeg -i audio_file.mp3 -hide_banner
Como puede ver, el comando ahora solo muestra detalles relacionados con el archivo multimedia que especificó (codificador, transmisiones, etc.).
2. Convertir archivos multimedia
Otra forma muy útil de usar ffmpeg es para una conversión sin problemas entre diferentes formatos de medios. Solo tienes que especificar los archivos de entrada y salida, ya que ffmpeg obtendrá el formato requerido de las extensiones de archivo. Esto funciona para conversiones de video a video y de audio a audio.
Estos son algunos ejemplos:
ffmpeg -i video_input.mp4 video_output.avi
ffmpeg -i video_input.webm video_output.flv
ffmpeg -i audio_input.mp3 audio_output.ogg
ffmpeg -i audio_input.wav audio_output.flac
Incluso puede especificar más archivos de salida:
ffmpeg -i audio_input.wav audio_output_1.mp3 audio_output_2.ogg
Esto convertirá los archivos de entrada a todos los formatos especificados.
Para ver una lista de todos los formatos admitidos, use:
ffmpeg -formats
Nuevamente, puede agregar -hide_banner para omitir información sobre la aplicación.
Puede especificar el -qscale 0 parámetro antes del archivo de salida para preservar la calidad de un archivo de video:
ffmpeg -i video_input.wav -qscale 0 video_output.mp4
Además, puede especificar códecs desea usar, agregando -c:a (para audio ) y -c:v (para vídeo ) seguido del nombre de los códecs, o copiar si desea utilizar los mismos códecs que el archivo original:
ffmpeg -i video_input.mp4 -c:v copy -c:a libvorbis video_output.avi
3. Extraer audio de video
Para extraer audio desde un archivo de video, realiza una conversión simple y agrega el -vn bandera:
ffmpeg -i video.mp4 -vn audio.mp3
Tenga en cuenta que este comando utilizará la velocidad de bits del archivo original. Es una buena idea configurarlo usted mismo; puedes usar -ab (tasa de bits de audio):
ffmpeg -i video.mp4 -vn -ab 128k audio.mp3
Algunas velocidades de bits comunes son 96k, 128k, 192k, 256k, 320k (velocidad de bits más alta admitida por mp3).
Otras opciones comunes son -ar (frecuencia de audio :22050, 441000, 48000), -ac (número de canales de audio ), -f (formato de audio , aunque normalmente se detecta automáticamente). -ab también se puede reemplazar por -b:a . Por ejemplo:
ffmpeg -i video.mov -vn -ar 44100 -ac 2 -b:a 128k -f mp3 audio.mp3
4. Silenciar audio en video
Similar a la última tarea, para lograr esto agregaremos una etiqueta simple:-an (en lugar de -vn ).
ffmpeg -i video_input.mp4 -an -video_output.mp4
5. Extraer imágenes de video
Esto podría ser útil para muchas personas. Por ejemplo, puede tener una serie de imágenes (por ejemplo, una presentación de diapositivas) y desea obtener todas las imágenes de eso. Simplemente ingrese:
ffmpeg -i video.mp4 -r 1 -f image2 image-%3d.png
Analicemos eso por un segundo.
-r especifica la velocidad de fotogramas (cuántos fotogramas se extraen en imágenes en un segundo, predeterminado :25), -f especifica el formato de salida (imagen2 en realidad significa secuencia image2.
El último parámetro (el archivo de salida) tiene un nombre algo interesante:usa %3d al final. Esto simplemente numera sus imágenes con 3 dígitos (000, 001, etc.). También puede usar %2d (formato de 2 dígitos) o incluso %4d (formato de 4 dígitos) si lo desea. ¡Siéntete libre de experimentar y usar lo que funcione para ti!
6. Cambiar la resolución de video o la relación de aspecto
Otra tarea sencilla para ffmpeg . Todo lo que tienes que hacer para cambiar el tamaño un video especifica una nueva resolución después de la -s bandera:
ffmpeg -i video_input.mov -s 1024x576 video_output.mp4
Además, es posible que desee especificar -c:a para asegurarse de que los códecs de audio del archivo de salida sean los correctos:
ffmpeg -i video_input.h264 -s 640x480 -c:a video_output.mov
También puede cambiar la relación de aspecto usando -aspect :
ffmpeg -i video_input.mp4 -aspect 4:3 video_output.mp4
7. Agregar imagen de póster a audio
Esta es una excelente manera de convertir audio en video , usando una sola foto (como la portada de un álbum) para el audio. Esta es una función muy útil cuando desea cargar archivos de audio en sitios que no permiten nada más que videos/imágenes (YouTube y Facebook son dos ejemplos de dichos sitios).
Aquí hay un ejemplo:
ffmpeg -loop 1 -i image.jpg -i audio.wav -c:v libx264 -c:a aac -strict experimental -b:a 192k -shortest output.mp4
Solo cambia los códecs (-c:v especifica video códecs, -c:a especifica audio códecs) y los nombres de sus archivos.
8. Agregar subtítulos al video
Igual de útil y sencillo de hacer con ffmpeg es añadir subtítulos a un vídeo (por ejemplo, una película). Introduzca lo siguiente:
ffmpeg -i video.mp4 -i subtitles.srt -c:v copy -c:a copy -preset veryfast -c:s mov_text -map 0 -map 1 output.mp4
Por supuesto, puede especificar los códecs que desee (y cualquier otra opción adicional relacionada con audio/video). Puedes leer este artículo sobre cómo editar subtítulos en Linux, gráficamente.
9. Comprimir archivos multimedia
Comprimiendo archivos reduce en gran medida el tamaño del archivo, ahorrándole mucho espacio. Esto puede ser importante para transferir archivos. Con ffmpeg , existen varios métodos para reducir el tamaño del archivo.
En primer lugar, para audio archivos, simplemente reduzca la tasa de bits (usando -b:a o -ab ):
ffmpeg -i audio_input.mp3 -ab 128k audio_output.mp3 ffmpeg -i audio_input.mp3 -b:a 192k audio_output.mp3
Nuevamente, algunos valores de tasa de bits diferentes son:96k, 112k, 128k, 160k, 192k, 256k, 320k. Cuanto mayor sea la tasa de bits, mayor será el tamaño y la calidad del archivo.
Para vídeo archivos, tienes más opciones. Una forma sería reducir la tasa de bits de video (usando -b:v ):
ffmpeg -i video_input.mp4 -b:v 1000k -bufsize 1000k video_output.mp4
Podría establecer el -crf bandera (Factor de tasa constante ). Un crf más bajo significa una tasa de bits más alta. Además, usando libx264 como códec de vídeo ayuda Aquí hay una reducción de tamaño muy eficiente con una reducción muy pequeña en la calidad:
ffmpeg -i video_input.mp4 -c:v libx264 -crf 28 video_output.mp4
Un crf de 20 a 30 es común, pero siéntete libre de jugar con el valor específico.
Reducir la velocidad de fotogramas podría funcionar en algunos casos (aunque fácilmente podría hacer que el video se sintiera lento):
ffmpeg -i video_input.mp4 -r 24 video_output.mp4
-r especifica la velocidad de fotogramas (en este caso 24 ).
También puedes intentar reducir el tamaño del video (ya se explicó cómo hacerlo). Un consejo adicional es comprimir el sonido también, haciéndolo estéreo y reduciendo la tasa de bits . Por ejemplo:
ffmpeg -i video_input.mp4 -c:v libx264 -ac 2 -c:a aac -strict -2 -b:a 128k -crf 28 video_output.mp4
10. Cortar archivos multimedia (básico)
Para recortar archivos desde el principio tienes que especificar una duración usando -t :
ffmpeg -i input_video.mp4 -t 5 output_video.mp4
ffmpeg -i input_audio.wav -t 00:00:05 output_audio.wav
Como puede ver, esto funciona tanto para video y audio archivos Los dos comandos anteriores hacen lo mismo:guardar los primeros 5 segundos del archivo de entrada en el archivo de salida. He usado diferentes formas de ingresar la duración :un solo número (número de segundos) y HH:MM:SS (horas, minutos, segundos). La segunda versión actúa más como un tiempo final .
Puede ir aún más lejos especificando una hora de inicio con -ss , e incluso una hora de finalización con -a :
ffmpeg -i input_audio.mp3 -ss 00:01:14 output_audio.mp3
ffmpeg -i input_audio.wav -ss 00:00:30 -t 10 output_audio.wav
ffmpeg -i input_video.h264 -ss 00:01:30 -to 00:01:40 output_video.h264
ffmpeg -i input_audio.ogg -ss 5 output_audio.ogg
Puedes ver la hora de inicio (-ss HH:MM:SS ), duración (-t duración ) en segundos, hora de finalización (-a HH:MM:SS ), y hora de inicio (-s de duración ) en segundos (a partir de duración segundos).
Todos estos son comandos válidos y puede trabajar con cualquier parte de un archivo multimedia usándolos.
Cómo usar ffmpeg:uso avanzado
Ahora cubriré funciones un poco más avanzadas (como proyección de pantalla, uso de dispositivos, etc.). ¡Vayamos directo al primer punto!
1. Dividir archivos multimedia
Ya cubrí recortar archivos Lo que tienes que hacer para dividir un archivo en varias partes es especificar varios recortes (especificando horas de inicio , fin de los tiempos o duración antes de cada archivo de salida).
Observe este ejemplo:
ffmpeg -i video.mp4 -t 00:00:30 video_1.mp4 -ss 00:00:30 video_2.mp4
La sintaxis es bastante simple. Especifiqué -t 00:00:30 como duración para la primera parte (la primera parte constará de los primeros 30 segundos del video original). A continuación, especifiqué que me gustaría que el resto formara parte de un segundo vídeo (empezando por el final de la última parte, 00:00:30 ).
¡Esto se puede hacer para tantas partes como quieras! Diviértete jugando con esta característica, ya que es muy poderosa. Tenga en cuenta que también funciona con audio.
2. Concatenar archivos multimedia
ffmpeg también puede hacer el proceso opuesto:juntar varias partes.
Para hacerlo, tendrás que crear un nuevo archivo de texto y empieza a editar usando su editor preferido.
Como me gusta usar la terminal, usaré touch y vim . No importa cómo llames a este archivo. Llamaré al mío join.txt y crea el archivo usando touch :
touch videos_to_join.txt
Ahora, lo editaré usando vim :
vim videos_to_join.txt
Puedes usar las herramientas que quieras (nano, gedit, etc.), esta es la más fácil de usar para mí.
Aquí, ingrese las rutas completas a todos los archivos que desea unir (se unirán en el orden en que los escriba aquí), uno por línea. Asegúrate de que tengan la misma extensión (por ejemplo, mp4 ). Aquí está el mío:
/home/ubuntu/Desktop/video_1.mp4
/home/ubuntu/Desktop/video_2.mp4
/home/ubuntu/Desktop/video_3.mp4
Guarde el archivo que acaba de editar. Este método funciona para cualquier archivo de audio o video.
Ahora ingrese lo siguiente:
ffmpeg -f concat -i join.txt output.mp4
Esto debería unirse todos los archivos que escribiste en join.txt (o como hayas llamado ese archivo) en un solo archivo de salida.
3. Unir imágenes en un video
Así es como puedes armar una presentación de diapositivas o algo similar. Te mostraré cómo agregar audio también.
Lo primero que recomiendo hacer es asegurarse de que las fotos que desea juntar estén ubicadas en el mismo directorio. Pondré el mío en un directorio llamado my_photos . Las extensiones recomendado para las fotos son .png y .jpg . Cualquiera que elija, asegúrese de que todas las imágenes tengan la misma extensión (de lo contrario, use ffmpeg podría tener efectos no deseados). Simplemente podrías convertir el .png archivos a .jpg o viceversa (ver Uso básico ).
El formato (-f ) de nuestra conversión debe ser image2pipe . Para la entrada, deberá proporcionar un guion (
cat my_photos/* | ffmpeg -f image2pipe -i - -c:v copy video.mkv
Si reproduce este archivo, puede pensar que solo se agregaron algunas imágenes a la presentación de diapositivas. En realidad, se agregaron todas sus imágenes, pero ffmpeg los recorre lo más rápido posible. Esto significa 1 cuadro por foto; ffmpeg (de forma predeterminada) se ejecuta alrededor de 23 fps .
Para cambiar eso, deberá especificar la velocidad de fotogramas (-velocidad de fotogramas ) quieres:
cat my_photos/* | ffmpeg -framerate 1 -f image2pipe -i - -c:v copy video.mkv
En mi ejemplo, configuré la velocidad de fotogramas a 1 , eso significa que cada fotograma (eso también significa cada imagen) aparece durante 1 segundo .
Para agregar audio , como una canción de fondo, tendremos que especificar el archivo de audio como archivo de entrada (-i audo_file ) y copiar los códecs de audio (-c:una copia ). Para los códecs , puede copiar códecs de audio y video al mismo tiempo con -c copy . Asegúrese de configurar los códecs justo antes de especificar el archivo de salida. También puede establecer la velocidad de fotogramas para que todas tus imágenes se sincronicen con la duración del audio que quieras usar. Para obtener eso, divide el número de imágenes por la duración del audio (en segundos) . Para mi ejemplo, tengo un archivo de audio de 22 segundos de duración y 9 imágenes. 9/22 es aproximadamente 0,40, así que eso es lo que usaré para mi velocidad de fotogramas:
cat my_photos/* | ffmpeg -framerate 0.40 -f image2pipe -i - -i audio.wav -c copy video.mkv
4. Graba tu pantalla
Transmisión de pantalla con ffmpeg no es un trabajo duro. El formato (-f ) que necesita usar es x11grab . Esto capturará su XSERVER . Como entrada tendrás que especificar tu número de pantalla (la pantalla principal normalmente debería ser 0:0 ). Sin embargo, esto solo capturará una parte superior izquierda de la pantalla Debes agregar un tamaño de pantalla (-s ). El mio es 1920×1080 . El tamaño de la pantalla debe mencionarse antes la entrada :
ffmpeg -f x11grab -s 1920x1080 -i :0.0 output.mp4
Presiona q o CTRL+C en cualquier momento para detener el screencast .
Truco extra: Puede hacer que el tamaño del archivo de salida sea pantalla completa ingresando esto después para el tamaño (en lugar de 1920×1080 o cualquier otra resolución establecida):
-s $(xdpyinfo | grep dimensions | awk '{print $2;}')
Aquí está el comando completo:
ffmpeg -f x11grab -s $(xdpyinfo | grep dimensions | awk '{print $2;}') -i :0.0 output.mp4
5. Grabe su cámara web
Entrada de grabación desde tu cámara web (u otro dispositivo, como una cámara USB) es aún más fácil. En Linux, dispositivos son tiendas en /dev como /dev/video0, /dev/video1, etc. :
ffmpeg -i /dev/video0 output.mkv
De nuevo, q o CTRL+C para detener la grabación .
6. Graba tu audio
Linux maneja el audio principalmente a través de ALSA y pulseaudio . ffmpeg puede grabar ambos, pero cubriré pulseaudio , ya que las distribuciones basadas en Debian lo incluyen por defecto. La sintaxis es un poco diferente para los dos métodos.
Para pulseaudio , tienes que forzar (-f ) también y especifique predeterminado como entrada (-i predeterminado ):
ffmpeg -f alsa -i default output.mp3
Toco bastante la guitarra y tengo una interfaz de audio para poder grabarla. Tuve una agradable sorpresa cuando ffmpeg Grabé mi guitarra sin problemas.
Consejos adicionales sobre grabación
Para cualquier tipo de grabación también puede especificar códecs , por supuesto (ya cubierto). Puede elegir una velocidad de fotogramas específica (-r ). Puedes combinar grabación de audio con cámara web/grabación de pantalla también!
ffmpeg -i /dev/video0 -f alsa -i default -c:v libx264 -c:a flac -r 30 output.mkv
En lugar de grabar audio, puedes añadir fácilmente un archivo de audio como entrada para grabar en la parte superior de su screencast/webcam:
ffmpeg -f x11grab -s $(xdpyinfo | grep dimensions | awk '{print $2;}') -i :0.0 -i audio.wav -c:a copy output.mp4
Uso básico de filtros en ffmpeg
Filtros son una característica increíblemente poderosa de ffmpeg . Hay una gran cantidad de filtros disponibles para su uso, lo que hace que ffmpeg completamente capaz de manejar cualquier edición necesidades. Dado que hay tantos filtros y este artículo ya es completo, solo cubriré algunos filtros simples.
La estructura básica por usar un filtro es:
ffmpeg -i input.mp4 -vf "filter=setting_1=value_1:setting_2=value_2,etc" output.mp4 ffmpeg -i input.wav -af "filter=setting_1=value_1:setting_2=value_2,etc" output.wav
Como puede ver, estoy especificando filtros de video (-vf , abreviatura de -filtro:v ) y filtros de audio (-af , abreviatura de -filtro:a ). Los filtros reales están escritos dentro de comillas dobles (
La forma general de un filtro es:
filter=setting_2=value_2:setting_2=value_2
Las diferentes configuraciones de filtro y sus valores están separados por dos puntos .
También puedes ejecutar operaciones matemáticas como valores para las diferentes configuraciones .
Cubriré ambos video y audio filtros ¡Veamos algunos ejemplos!
1. Escalado de vídeo
Este es un filtro muy simple. La única configuración son ancho y altura :
ffmpeg -i input.mp4 -vf "scale=w=800:h=600" output.mp4
Mencioné que puedes usar operaciones matemáticas para valores también:
ffmpeg -i input.mkv -vf "scale=w=1/2*in_w:h=1/2*in_h" output.mkv
Este comando establece el tamaño de salida a la mitad (
2. Recorte de vídeo
En cuanto al filtro de escala , la configuración son el ancho y altura del archivo resultante. Opcionalmente, puede especificar coordenadas para la esquina superior izquierda del corte (predeterminado: centro del video de entrada):
ffmpeg -i input.mp4 -vf "crop=w=1280:h=720:x=0:y=0" output.mp4
ffmpeg -i input.mkv -vf "crop=w=400:h=400" output.mkv
Como se señaló, el segundo corte se cortará en el centro del archivo de entrada (ya que no he especificado x y y coordenadas de la esquina superior izquierda). El primer comando se cortará desde la esquina superior izquierda (x=0:y=0 ).
Aquí hay un ejemplo que usa expresiones matemáticas como valores :
ffmpeg -i input.mkv -vf "crop=w=3/4*in_w:h=3/4*in_h" output.mkv
Este comando establece el tamaño de salida a 3/4 del tamaño de entrada (en_w , en_h ).
3. Rotación de vídeo
También puede girar un video en el sentido de las agujas del reloj por un valor (en radianes ). Para facilitar las cosas, puede especificar un valor en grados y convertirlo a radianes multiplicando ese valor con PI/180 :
ffmpeg -i input.avi -vf "rotate=90*PI/180"
ffmpeg -i input.mp4 -vf "rotate=PI"
El primer comando rotará el vídeo 90 grados en el sentido de las agujas del reloj . El segundo comando girará el video al revés (PI rad =180 grados).
4. Reasignación de canales de audio
Esto puede ser útil si de alguna manera solo obtienes audio en el oído derecho o algo similar. Puedes hacer el audio audible desde ambos oídos (en este caso particular) así:
ffmpeg -i input.mp3 -af "channelmap=1-0|1-1" output.mp3
Este mapa el derecho (
5. Multiplicación de volumen de audio
Puedes multiplicar el volumen de audio por cualquier real número (entero o no). Solo necesita especificar el multiplicador :
ffmpeg -i input.wav -af "volume=1.5" output.wav
ffmpeg -i input.ogg -af "volume=0.75" output.ogg
El primer comando amplifica el volumen 1.5 veces. El segundo comando hace que el audio 1/4 (0,25) veces más silencioso .
Consejo extra:Ajustes de velocidad de reproducción
Incluiré tanto el video (no afecta al audio) y audio filtros para esta tarea.
El filtro para video es setpts (PTS =sello de tiempo de presentación). Esto funciona de una manera algo interesante. Ya que en realidad modificamos el PTS , un coeficiente mayor significa un resultado más lento y viceversa:
ffmpeg -i input.mkv -vf "setpts=0.5*PTS" output.mkv
ffmpeg -i input.mp4 -vf "setpts=2*PTS" output,mp4
Como acabo de explicar, el primer comando dobles la velocidad de reproducción y el segundo comando ralentiza el vídeo a 1/2 de la velocidad .A
The filter for this is atempo . There’s one little caveat:it can only take values between 0.5 (half the speed) and 2 (double the speed). To get around that, you can chain atempo filters:
ffmpeg -i input.wav -af "atempo=0.75" output.wav
ffmpeg -i input.mp3 -af "atempo=2.0,atempo=2.0" ouutput.mp3
The first command slows the audio by 1/4 of the original speed. The second command speeds up the audio 4 times (2*2).
Note: For changing video and audio playback speed with the same command you’ll have to look into filtergraphs .
Conclusión
In this comprehensive guide I covered the installation, basic usage, advanced usage and basics of filters.
I hope that this can be a helpful resource for anyone looking to try out ffmpeg , for someone that wants to use ffmpeg for multiple tasks or even just for someone who is willing to get more familiar with the extensive features of this amazing utility.
Let us know if you found this article useful in the comments below and tell us what are you using ffmpeg ¡por! We look forward to any additions of any kind. Thanks for reading our blog and keep an eye out for an article covering more complex filtering . ¡Disfrútalo!