GNU/Linux >> Tutoriales Linux >  >> Linux

Los comandos FFmpeg más útiles para la conversión de audio y video

FFmpeg es un proyecto de software gratuito y de código abierto que consiste en un gran conjunto de bibliotecas y programas para manejar videos, audio y otros archivos y transmisiones multimedia. Es un conjunto de herramientas multiplataforma que funciona en Mac (OSX), Linux y Windows. Este artículo cubre la instalación de FFmpeg y los ejemplos de comandos más utilizados para obtener información de video, cortar y dividir archivos de video, convertir videos a varios formatos, incluidas imágenes, administrar audio, subtítulos y mucho más.

Instalación del marco multimedia FFmpeg

La instalación de FFmpeg es un proceso fácil y simple para la mayoría de los sistemas operativos comunes.

Ubuntu

Para instalar FFmpeg en la última versión de Ubuntu Linux, use los siguientes comandos:

sudo apt-get update
sudo apt install ffmpeg -y

OSX

Si desea instalar FFmpeg en su Mac, use el administrador de paquetes Homebrew:

brew update && brew upgrade ffmpeg

Windows

Para instalar FFmpeg en Windows, use Chocolatey:

choco install ffmpeg

Los comandos FFmpeg más útiles

Ahora, tan pronto como haya instalado FFmpeg, podemos pasar a los ejemplos de comandos más utilizados.

A los efectos de este artículo, utilizaremos archivos de vídeo de muestra gratuitos.

Obtener información del archivo de video

Para obtener información detallada sobre el archivo de video, ejecute el siguiente comando:

ffmpeg -i sample-mp4-file.mp4 -hide_banner

El -hide_banner argumento oculta información de derechos de autor.

Cortar video en pequeños clips

FFmpeg tiene una capacidad que le permite recortar videos en fragmentos cortos.

Vamos a utilizar los siguientes argumentos:

  • -ss parámetro especifica los s tiempo de inicio s pulsar en HH:MM:SS.ms formato
  • -t El argumento especifica la duración del clip final (t im) en segundos
  • -codec copy – el parámetro copiaría todas las secuencias sin volver a codificar
ffmpeg -i sample-mp4-file.mp4 -hide_banner \
    -ss 00:01:00.0 \
    -codec copy \
    -t 20 \
    OutputVideo.mp4

Dividir archivo de video en varias partes

Use el comando que se muestra a continuación para dividir un video en dos o más partes.

En nuestro ejemplo, estamos dividiendo el archivo en dos partes:

  • La primera parte dura 30 segundos desde el principio del archivo (-t argumento)
  • La segunda parte contendrá los datos de video desde el segundo 50 hasta el final del archivo (-ss argumento)
ffmpeg -i sample-mp4-file.mp4 -hide_banner \
    -t 00:00:30 \
    -c copy OutputVideo-1.mp4 \
    -ss 00:00:50 \
    -codec copy \
    OutputVideo-2.mp4

Silenciar audio

Use el siguiente comando para deshabilitar el audio del archivo de video de salida:

ffmpeg -i sample-mp4-file.mp4 -hide_banner \
    -an OutputVideo.mp4

Extraer audio de video

Puede extraer el audio del Video ejecutando el comando:

ffmpeg -i sample-mp4-file.mp4 -hide_banner \
    -vn \
    -ac 2 \
    -ab 187 \
    -f mp3 \
    Audio.mp3

Aquí estamos usando las siguientes opciones:

  • -vn deshabilita la grabación de video en el archivo de salida
  • -ac establece el número de a audio c canales
  • -ab establece un audio b itrate a 187kb/s
  • -f establece un formato de salida a mp3

Fusionar audio y video

Use el siguiente comando para agregar una pista de audio a un archivo de video:

ffmpeg -i Audio.mp3 -i sample-mp4-file.mp4 \
    -hide_banner \
    OutputVideo.mp4

Convertir video a imágenes

Use el comando indicado a continuación para convertir videos en imágenes:

ffmpeg -i sample-mp4-file.mp4 -hide_banner \
    image%d.jpg

Convertir imágenes a video

Todas las imágenes se pueden convertir en video:

ffmpeg -f image2 -i image%d.jpg \
    -hide_banner \
    OutputVideo.mp4

Intenta agregar audio al clip final tú mismo.

Conversión de MP4 a FLV

Ejecute el comando que se muestra a continuación para convertir un archivo de video en formato MP4 a formato FLV:

ffmpeg -i sample-mp4-file.mp4 -hide_banner \
    -vn \
    -ac 2 \
    -ab 187 \
    -f flv \
    OutputVideo.flv

Convertir FLV a MPG

Ejecute el comando que se muestra a continuación para convertir un archivo de video en formato FLV a formato MPG:

ffmpeg -i OutputVideo.flv -hide_banner \
    OutputVideo.mpg

Convertir MPG en FLV

Copie el comando que se muestra a continuación para convertir un archivo de video en formato MPG a FLV:

ffmpeg -i OutputVideo.mpg -hide_banner \
    -ab 26k \
    -f flv \
    OutputVideo.flv

Convertir video en un GIF animado

Para convertir un archivo de video en un archivo gif animado, use el comando:

ffmpeg -i sample-mp4-file.mp4 -hide_banner \
    Output.gif

Convertir a formato CD/DVD

Usar -target escriba para crear un archivo de salida con formato de CD de video o DVD.

El tipo de destino admite vcd , svcd , dvd , dv y dv50 formatos que pueden tener el prefijo pal- , ntsc- o film- para usar el estándar correspondiente:

ffmpeg -i sample-mp4-file.mp4 -hide_banner \
    -target film-vcd \
    vcd_video.mpg

Insertar subtítulos

Vamos a crear un archivo de subtítulos de demostración (más información sobre los subtítulos):

cat << EOF > subtitles.srt
1
00:00:00,000 --> 00:00:20,000
This is demo subtitle 1

2
00:00:20,000 --> 00:00:40,000
This is demo subtitle 2
EOF

Puede agregar un archivo de subtítulos a un archivo de video agregando un archivo de subtítulos separado al comando:

ffmpeg -i sample-mp4-file.mp4 -hide_banner \
    -i subtitles.srt \
    -c copy \
    -c:s mov_text \
    OutputVideo.mp4

Si desea mostrar subtítulos en el video:

ffmpeg -i sample-mp4-file.mp4 -hide_banner \
    -vf subtitles=subtitles.srt \
    OutputVideo.mp4

Extraer subtítulos

Para extraer subtítulos del archivo de video, verifique qué transmisión debe usar primero:

ffmpeg -i OutputVideo.mp4

El resultado indica que los subtítulos están disponibles en el archivo en la transmisión #0:2 .

Ahora, podemos extraerlos usando el siguiente comando:

ffmpeg -i OutputVideo.mp4 -hide_banner \
    -map 0:2 subtitles.srt

Donde -map 0:2 especifica el flujo requerido.

Rotar video

Y finalmente, aquí hay un comando para rotar el clip de video al desengrasado de 90 en el sentido de las agujas del reloj (use transpose=2 para girar en sentido contrario a las agujas del reloj):

ffmpeg -i sample-mp4-file.mp4 -hide_banner \
    -filter:v 'transpose=1' \
    OutputVideo.mp4

Resumen

FFmpeg es un marco multimedia versátil que nos permite realizar varias operaciones diferentes con archivos de video.

Puede usar FFmpeg para convertir archivos de video y audio a otros formatos, extraer imágenes y audio, rotar videos, agregar subtítulos, dividir videoclips en varias partes y mucho más. En esta guía, ilustramos cómo aplicar los comandos más utilizados para obtener los resultados que pueda necesitar.


Linux
  1. Ver comandos y tareas con el comando watch de Linux

  2. 4 sesiones de video para el administrador de sistemas de Linux

  3. Comandos Nginx más útiles en el sistema Linux

  4. LosslessCut:un cortador de audio y video multiplataforma simple

  5. ¿Cuál es la razón por la que rmdir(1) y rm(1) coexisten?

40 comandos de red Linux útiles para administradores de sistemas modernos

50 comandos dmidecode simples y útiles para Linux

Los 40 comandos útiles del servidor Linux para principiantes y profesionales

40 comandos git útiles para administradores y desarrolladores de Linux

Los 50 comandos Zypper más útiles para usuarios de SUSE Linux

Los 50 comandos IP útiles de Linux para administradores de red