Cómo usar los comandos FFmpeg para el procesamiento de audio y video en Linux

Casi cualquier persona que trabaje con videos puede haber oído hablar de FFmpeg antes. Para aquellos que no están familiarizados, FFmpeg es un programa gratuito y de código abierto que puede convertir cualquier formato de video a otro y alterar sus códecs.

FFmpeg admite casi todos los códecs de audio/video (H.264, H.265, VP8, VP9, ​​AAC, OPUS y más), formatos de archivo (MP4, FLV, MKV, TS, WEBM, MP3, etc.) e incluso protocolos de transmisión (HTTP, RTMP, RTSP, HLS, etc.).

Así es como puede instalar y usar FFmpeg para procesar archivos de audio y video en Linux.

Instalación de FFmpeg en Linux

FFmpeg es una herramienta gratuita y de código abierto disponible en los repositorios predeterminados de casi todas las principales distribuciones de Linux. Tú también puedes obtener su código fuente gratis si desea compilarlo usted mismo.

                      
                        
                          # 
                          
                            Debian
                          
                        
                        
sudo apt install ffmpeg

# Fedora
sudo dnf install https://download1.rpmfusion.org/free/fedora/rpmfusion-free- release -$(rpm -E %fedora).noarch.rpm
sudo dnf -y install ffmpeg

# RHEL/ CentOS
yum install ffmpeg ffmpeg-devel

# Arch Linux
pacman -S ffmpeg

Si todo va bien durante la instalación, debería poder ver la versión FFmpeg cuando use el -versión argumento.

                      
                        ffmpeg -version
                        

Obtener información de video con FFmpeg

Es posible ver la información de un video que desea editar con FFmpeg usando el -i bandera:

                      
                        
                          ffmpeg
                        
                        
                          -i
                        
                        
                          example-video
                        
                        
                          .mp4
                        
                        
                          -hide_banner
                        
                        

Aquí el -hide_banner El trabajo del parámetro es ocultar información innecesaria. Puede eliminar este parámetro y ver la diferencia en la salida.

Como puede ver, es posible obtener mucha información, como el tipo de códec de video, la fecha de creación, los metadatos y la estructura del codificador del video de muestra.

Conversión de archivos de video o audio a otro formato

Una de las características más útiles de FFmpeg es que puede convertir un video o audio a otro formato. Puedes hacer esto con frases sencillas.

MOV a MP4 con FFmpeg

Puede convertir su archivo de video en formato MOV a MP4 con FFmpeg usando el siguiente comando:

                      
                        
                          ffmpeg
                        
                        
                          -i
                        
                        
                          input-mov-video
                        
                        
                          .mov
                        
                        
                          output-video
                        
                        
                          .mp4
                        
                      
                    

Primero, usa el -i parámetro, que significa vídeo de entrada. Luego, ingrese el archivo que desea convertir. Finalmente, ingrese el formato al que desea convertirlo. Puede dar a su salida el nombre que desee.

Mientras se ejecuta FFmpeg, le mostrará los cambios que ha realizado en la pantalla de comandos. Su archivo de salida se almacenará en su directorio de trabajo actual.

WAV a MP3 con FFmpeg

Similar a los videos, puede hacer las mismas conversiones para archivos de audio. Para examplepuede convertir un archivo de audio WAV a MP3 de la siguiente manera:

                      
                        
                          ffmpeg
                        
                        
                          -i
                        
                        
                          example-wav
                        
                        
                          .wav
                        
                        
                          -vn
                        
                        
                          -ar
                        
                         48000 
                        
                          -ac
                        
                         2 
                        
                          -b
                        
                        
                          :a
                        
                         256 
                        
                          output
                        
                        
                          .mp3
                        
                        

Este comando tiene más parámetros que el método de conversión de video, pero no son difíciles de entender. Para explicar estos:

  • -vn : A veces los archivos de audio que escuchas tienen imágenes. Estas imágenes generalmente se originan a partir de videos. Si no desea tales imágenes en la salida, puede usar este parámetro.
  • -Arkansas : este parámetro le permite establecer la frecuencia de audio del archivo de audio que desea convertir. Puede ajustar la calidad y la frecuencia del sonido con valores como 8kHz, 44,1kHz o 48kHz.
  • -C.A : Es posible que haya escuchado los términos mono y estéreo antes. Este parámetro puede ayudarlo a establecer la cantidad de canales de audio.
  • -licenciado en Letras : este parámetro le permite establecer la tasa de bits de audio por segundo. Cuanto mayor sea el kilobit, mayor será la calidad del sonido.

Operaciones de audio con FFmpeg

FFmpeg también puede separar el audio de los videos. Para ello, basta con utilizar el -vn parámetro:

                      
                        
                          ffmpeg
                        
                        
                          -i
                        
                        
                          example-video
                        
                        
                          .mp4
                        
                        
                          -vn
                        
                        
                          output
                        
                        
                          .mp3
                        
                      
                    

Si logró separar el audio del video, ahora puede intentar eliminar el audio de los videos. La diferencia aquí es la -un parámetro. Debes tener en cuenta este parámetro si quieres deshabilitar cualquier sonido en un video:

                      
                        
                          ffmpeg
                        
                        
                          -i
                        
                        
                          example-video
                        
                        
                          .mp4
                        
                        
                          -an
                        
                        
                          output-mute
                        
                        
                          .mp4
                        
                      
                    

Procesamiento de tamaño de video con FFmpeg

Los tamaños de los videos pueden ser bastante molestos a veces, especialmente cuando quieres subirlos a algún lado. Ya no necesita descargar programas para recortarlos, ya que FFmpeg puede hacerlo por usted. Sin embargo, hay algunos parámetros que necesita saber para esto:

  • -ss : use este parámetro para establecer la hora de inicio del clip
  • -a : Le permite especificar la hora de finalización del clip
  • -C : Configure el códec de su clip usando este parámetro
  • -t : use este parámetro para establecer la duración del clip

Puede derivar muchos ejemplos utilizando estos parámetros. Para examplesi desea recortar un video, puede usar algo como:

                      
                        
                          ffmpeg
                        
                        
                          -i
                        
                        
                          example-video
                        
                        
                          .mp4
                        
                        
                          -ss
                        
                         00
                        
                          :02
                        
                        
                          :25
                        
                        
                          -to
                        
                         00
                        
                          :03
                        
                        
                          :50
                        
                        
                          -c
                        
                        
                          copy
                        
                        
                          output-trim
                        
                        
                          .mp4
                        
                        

También es posible recortar solo la imagen dentro del video y no todo el video. Para ello, puedes recurrir a algo como:

                      
                        ffmpeg -i example-video.mp4 -filter:v 
                        
                          "
                        
                        crop=w:h:x:y
                        
                          "
                        
                         output-crop.mp4
                        

Estos son los parámetros utilizados en el comando mencionado anteriormente:

  • -filtro:v : este parámetro especifica el proceso de filtrado que aplicará al video
  • cultivo : este parámetro es para especificar que se realizará una operación de recorte
  • ancho: alto: x: y : Como ya habrás adivinado, las variables w, h, x e y indican el ancho, el alto y la posición del cuadro de recorte, respectivamente

Edición de videos en Linux con FFmpeg

La edición de videos no termina con solo recortar y cortar. A veces también es necesario cambiar la escala del video. El siguiente comando cambiará el tamaño del video al tamaño que desee:

                      
                        ffmpeg -i example-video.mp4 -vf scale=1920:1080 output-scale.mp4
                      
                    
  • -vf : Este parámetro funciona igual que el -filtro:v argumento visto arriba
  • escala : puede especificar los tamaños de escala que desea en su salida con este parámetro

FFmpeg también te permite combinar múltiples videos. Imagina que tienes varios clips codificados con el mismo códec. Enter la lista de videos que desea fusionar en un .TXT expediente. Luego, ejecuta el siguiente comando:

                      
                        
                          ffmpeg
                        
                        
                          -f
                        
                        
                          concat
                        
                        
                          -i
                        
                        
                          my-video-list
                        
                        
                          .txt
                        
                        
                          -c
                        
                        
                          copy
                        
                        
                          sum-output
                        
                        
                          .mp4
                        
                        

los concat El parámetro aquí combina sus archivos. También es posible rotar videos con FFmpeg:

                      
                        ffmpeg -i example-video.mp4 -vf 
                        
                          "
                        
                        transpose=2
                        
                          "
                        
                         output-rotate.mp4
                      
                    
  • transponer=0 : voltear verticalmente (predeterminado)
  • transponer=1 : Girar 90 grados en el sentido de las agujas del reloj
  • transponer=2 : Girar 90 grados en sentido contrario a las agujas del reloj
  • transponer=3 : voltear verticalmente

Para rotar videos 180 grados en el sentido de las agujas del reloj, debe especificar el parámetro de transposición dos veces:

                      
                        ffmpeg -i example-video.mp4 -vf 
                        
                          "
                        
                        transpose=2,transpose=2
                        
                          "
                        
                         output-rotate.mp4
                      
                    

Operaciones FPS y GOP

Como sabes, FPS significa fotogramas por segundo. GOP (grupo de imágenes) es la distancia entre dos fotogramas clave. FFmpeg también es útil para cambiar algunos parámetros, incluidos FPS y GOP. Si usa el siguiente comando, FFmpeg cambiará el FPS original al valor que configuró:

                      
                        ffmpeg -i example-video.mp4 -vf 
                        
                          "
                        
                        fps=60
                        
                          "
                        
                         output-fps.mp4
                        

Para GOP, puede utilizar el -gramo parámetro y establecer su valor a lo que quieras. Tenga en cuenta que forzar demasiados fotogramas clave puede ser perjudicial para los algoritmos de avance de algunos codificadores.

                      
                        
                          ffmpeg
                        
                        
                          -i
                        
                        
                          example-video
                        
                        
                          .mp4
                        
                        
                          -g
                        
                         200 
                        
                          output-gop
                        
                        
                          .mp4
                        
                      
                    

Crea GIF animados con FFmpeg

FFmpeg también es ideal para convertir un video en GIF animados. Puede usar un comando de conversión simple para hacer esto:

                      
                        
                          ffmpeg
                        
                        
                          -i
                        
                        
                          example-video
                        
                        
                          .mp4
                        
                        
                          output-gif
                        
                        
                          .gif
                        
                        

Pero a veces, es posible que desee personalizar el GIF. Puede usar los diversos parámetros discutidos anteriormente para lograr esto:

                      
                        ffmpeg -ss 00:01:15 -i example-video.mp4 -to 10 -r 10 -vf scale=250:-1 output-gif.gif
                        

los -r parámetro aquí significa la velocidad de fotogramas. Como puede ver, muchas personalizaciones diferentes son posibles en un comando de una sola línea.

Extraer cuadros de un video con FFmpeg

Además de convertir una o varias imágenes en video, también puede extraer fotogramas de un video. El siguiente comando extraerá un cuadro cada segundo de su video de entrada. Además, estas imágenes extraídas tendrán nombres de dos dígitos como 01.jpeg , 02.jpeg etc. Si lo desea, también puede agregar otros parámetros que haya aprendido.

                      
                        
                          ffmpeg
                        
                        
                          -i
                        
                        
                          example-video
                        
                        
                          .mp4
                        
                        
                          -r
                        
                         1 
                        
                          image-
                        
                        %02
                        
                          d
                        
                        
                          .jpeg
                        
                        

También puede usar otros formatos como PNG y BMP para las imágenes extraídas.

¿Por qué debería usar FFmpeg en Linux?

Como puede ver, FFmpeg es muy ventajoso en muchos sentidos. No necesita tener ningún conocimiento técnico o experiencia profesional en Linux para esto. Puede realizar varias funciones de procesamiento de medios con solo unos pocos parámetros. Si va a realizar ediciones que no son muy largas, no necesita programas informáticos costosos ni membresías premium en línea. Además, FFmpeg funciona muy bien incluso en dispositivos de gama baja.

Además, las características de FFmpeg no se limitan a lo anterior. Cuando lee la documentación y el manual del usuario, puede ver cuán poderoso es realmente el software. Incluso usando el –ayuda parámetro y el hombre comando, puede obtener información más detallada sobre el uso de FFmpeg. También hay otros grandes convertidores para Linux para competir con FFmpeg.

Related Posts