Comment convertir des vidéos à l'aide de ffmpeg dans Ubuntu

Comment convertir des vidéos à l'aide de ffmpeg dans Ubuntu

Dans le monde moderne, avec YouTube et d'autres applications de médias sociaux comme le moyen grand public de considérer les médias numériques, le téléchargement des vidéos est devenue une pratique courante. Il est devenu si courant, en fait, que la création et l'édition de fichiers audio et vidéo sont devenus la nouvelle norme en l'espace de quelques décennies seulement. Il existe évidemment des outils coûteux que l'on peut acheter pour répondre à ses besoins, mais que se passe-t-il si nous pouvions faire cela gratuitement? Et si quelques lignes de code pouvaient faire presque toutes les tâches liées à la vidéo dont vous avez besoin?

FFMPEG est un outil de conversion, d'extraction et de montage libre et open source qui fournit une réponse à cette question! Que peut ne pas faire ffmpeg? Presque rien. Les tâches qui peuvent être effectuées à l'aide de FFMPEG incluent la conversion de fichiers audio, la conversion de fichiers vidéo, la conversion de photos, l'extraction de fichiers d'image à partir de fichiers vidéo, la génération de vidéos à partir de fichiers d'image, l'extraction de l'audio à partir de vidéos, les vidéos et les photos de coupe, les vidéos de réduction, re -Sizer des vidéos, augmentant le volume et créant des enregistrements d'écran.

Installation de ffmpeg dans Ubuntu

FFMPEG n'est pas préinstallé dans Ubuntu par défaut, vous devrez donc d'abord installer ce programme pour l'utiliser. Pour terminer l'installation, vous devez être l'utilisateur racine. Ensuite, tapez ce qui suit pour installer ffmpeg:

sudo apt-get install ffmpeg

Le Installation de l'apt-get La commande fonctionnera pour toutes les versions d'Ubuntu sauf 14.04.

Conversion audio

La conversion du type de fichier d'un fichier audio peut être effectuée en une seule ligne de code à l'aide de l'utilitaire FFMPEG. Dans ce cas, il vous suffit de passer deux paramètres: le nom du fichier d'origine et le nom du nouveau fichier. Cette commande vous permet de convertir n'importe quel format de fichier en tout autre format de fichier en détectant automatiquement les types de fichiers par nom. En tant que tel, il n'y a pas besoin de code supplémentaire pour spécifier les types de fichiers.

ffmpeg -i initial_file.mp3 converti_file.MP4

Vous pouvez ajouter vos propres noms de fichiers et types à cette ligne de code. Ce n'est que la syntaxe de base pour l'utilisation.

Conversion vidéo

Vous pouvez également convertir les types de fichiers vidéo à l'aide de ffmpeg. Lorsque vous saisissez la commande, tout ce dont vous avez besoin est le nom du fichier d'origine et le nom du fichier de sortie. La balise -i désigne le fichier d'entrée.

ffmpeg -i original_file.MP4 converti_file.webm

Conversion de photos

Ce qui est vrai pour les fichiers vidéo et audio s'applique également aux fichiers image. Vous pouvez convertir un format photo en un autre format rapidement et facilement avec FFMPEG simplement en utilisant la syntaxe ci-dessous:

ffmpeg -i original_file.jpg converti_file.PNG

Extraire l'image du fichier vidéo

FFMPEG peut également être utilisé pour extraire des images à partir de fichiers vidéo. En d'autres termes, ce programme peut prendre des captures d'écran à des moments précis lors d'une vidéo et enregistrer les captures d'écran en tant que collection de fichiers d'image. Par exemple:

vidéo ffmpeg -i.mp4 output_file.jpg

Dans ce cas, la balise -i représente le fichier vidéo à partir duquel le (s) fichier (s) d'image sera extrait. Cependant, nous n'avons toujours pas donné au programme de spécifications quant à la qualité de l'image ou à la capture d'écran. Il est donc d'abord nécessaire de spécifier ces détails avant de saisir le code.

Si nous écrivons ce qui suit:

vidéo ffmpeg -i.mp4 output_file% d.jpg

La valeur% d suivant le nom du fichier de sortie représente une variable que vous pouvez personnaliser en fonction du nombre de trames par seconde que vous souhaitez générer à partir de la vidéo. Lorsque les images sont générées à un cadre par seconde, chaque photo sera étiquetée Output_file1.JPG; à deux images par seconde, Output_file2.JPG; à trois images par seconde, Output_file3.JPG; etc. Si le film a 35 images par seconde, et c'est une seconde de long, alors donner à la variable% d une valeur de 1 générera 35 photos.

Ensuite, que se passe-t-il si nous voulons capturer les images à un certain taux de cadres par seconde? La valeur FPS définit cela dans la syntaxe FFMPEG. Pour capturer 1 trame par seconde, vous définissez la valeur FPS égale à 1.

vidéo ffmpeg -i.MP4 -VF FPS = 1 Output_file% D.jpg

De même, en définissant la valeur FPS à 1/6000, la commande suivante générera 1 image par 6 000 secondes de vidéo:

vidéo ffmpeg -i.MP4 -VF FPS = 1/6000 Output_file% 6d.jpg

Dans la commande ci-dessus, le terme% 6D générera une variable avec six chiffres. Les fichiers de sortie seront étiquetés comme suit: output_file000001.jpg, output_file000002.jpg, etc.

Maintenant, supposons que vous ne vouliez pas capturer toutes les cadres. Au lieu de cela, vous voulez être plus sélectif et souhaiter capturer un nombre d'images défini entre deux délais. Ensuite, la syntaxe ressemblerait à ceci:

FFMPEG -SS 00:00:01 -T 00:00:04 -I VIDÉO.mp4 output_file% 3D.jpg

Ce code capturera des images, à partir de 00:00:01, pendant 4 secondes. En d'autres termes, la capture d'image commencera à 00:00:01 et se terminera à 00:00:05 dans la vidéo. Comme d'habitude, le numéro du nom du fichier de sortie aura trois chiffres (i.e., output_file001.jpg, output_file002.jpg, etc.).

Générer des vidéos à partir de fichiers image

Et si vous voulez faire le contraire et assembler des images pour former une vidéo? Ffmpeg revient à la rescousse une fois de plus!

ffmpeg -r 1/5 -i img% 03d.png -c: v libx264 -vf fps = 25 -pix_fmt yuv420p output_file.MP4

Après avoir lu les sections précédentes, vous savez maintenant quel le terme IMG% 03.PNG signifie - les fichiers d'image source qui se compilent dans la vidéo. Dans cette syntaxe, la balise -c: V représente le codec pour la vidéo, FPS représente les cadres par seconde valeur et R représente le framerate de la vidéo de sortie.

Extraire audio de la vidéo

Qu'en est-il de l'extraction de fichiers audio à partir d'un fichier vidéo? Il existe des outils sur le Web que vous pouvez utiliser pour effectuer cette tâche, mais avec FFMPEG, une ligne de code peut aussi bien faire le travail.

vidéo ffmpeg -i.MP4 -C: A libmp3lame -Q: A 0 -map a output_file.mp3

Dans la syntaxe ci-dessus, la vidéo.MP4 est le fichier vidéo d'entrée et la sortie_file.MP3 est le fichier audio de sortie. La balise -map une balise prend le flux audio par défaut et exclut tous les sous-titres, C: A spécifie le codec pour que l'audio soit utilisé, et Q: A définit un débit binaire variable pour l'audio.

Si vous souhaitez extraire une partie du fichier audio à partir d'un fichier vidéo, vous pouvez utiliser la syntaxe suivante pour le faire. Dans le code suivant, seule la section d'audio entre 00:00:08 et 00:00:10 est extraite:

vidéo ffmpeg -i.MP4 -SS 00:00:08 -T 00:00:10 -Q: A 0 -C: A libmp3lame -Q: A 0 -map a output_file.mp3

De toute évidence, il y a beaucoup plus de détails que vous pouvez ajouter, si vous le souhaitez, mais l'exemple ci-dessus est un excellent point de départ.

Vidéos et photos recadrer

Et si vous voulez recadrer des vidéos? Vous pouvez soit prendre le temps et l'argent pour trouver des logiciels de recadrage ailleurs, soit utiliser une ligne de code avec ffmpeg pour recadrer la vidéo à la taille.

vidéo ffmpeg -i.MP4 -Filter: V "Crop = W = largeur: H = hauteur: x: y" output_file.MP4

Par exemple:

vidéo ffmpeg -i.MP4 -Filter: V "Crop = W = 550: H = 200: x = 100: y = 200" output_file.MP4

À titre d'exemple, j'ai pris ma propre photo et j'ai essayé de la recadrer avec le code suivant:

ffmpeg -i photo44.JPG -Filter: V "Crop = W = 500: H = 200" OUT.jpg

Couper des vidéos

La coupe des fichiers vidéo nécessite de les couper d'un moment précis à une autre fois spécifique. Par exemple, couper un fichier vidéo en deux ou trois segments. Encore une fois, les fichiers vidéo ou audio de coupe peuvent être facilement effectués à l'aide de FFMPEG.

vidéo ffmpeg -i.MP4 -SS 00:00:20 -T 00:00:10 -C: V H264 -C: A AAC Output_file.MP4

Dans ce cas, la balise -SS signifie Start Seeking, ou le moment où commencer le processus de coupe. Dans le commandement ci-dessus, nous commencerons à couper ou à couper à 00:00:20. La balise T représente la durée du clip. Ici, la durée du clip de coupe sera de 10 secondes. Enfin, la balise C: V est pour le codec de la vidéo utilisée, tandis que C: A est pour le codec audio utilisé.

Redimensionner la vidéo

Redimensionner les vidéos est tout aussi facile que la coupe et les vidéos de recadrage.

vidéo ffmpeg -i.Échelle MP4 -VF = 320: 240 Output_file.MP4

Alternativement, vous pouvez également faire ce qui suit:

vidéo ffmpeg -i.MP4 -VF Scale = "IW / 1: IH / 2" Output_file.MP4

Ici, la valeur IW définit la largeur d'entrée, tandis que IH définit la hauteur d'entrée. Ce dernier le fera également évoluer.

Booster le volume de la vidéo

Dans cet article, vous avez vu comment recadrer, couper et convertir des fichiers vidéo et image, mais qu'en est-il de l'augmentation du volume de fichiers audio et vidéo?

vidéo ffmpeg -i.mp3 -filter: un «volume = 2» output_file.mp3

Dans ce dernier cas, nous demandons humblement à FFMPEG de doubler le volume du fichier.

Créer un enregistrement d'écran

L'enregistrement de votre écran est une tâche qui est souvent nécessaire pour effectuer, que ce soit pour les présentations, le partage de vidéos ou les réunions en ligne. Quelle que soit la raison de l'enregistrement de votre bureau, vous devez généralement exécuter une sorte de logiciel pour le faire. Contrairement aux alternatives coûteuses, FFMPEG peut le faire pour vous gratuitement!

ffmpeg -f gdigrab -framerate 30 -I Desktop -C: V libx264 output_file.mp4 -f dshow -i audio = "stéréo mix (realtek Audio)" output_file.MP4

Dans la commande ci-dessus, la balise -f représente le format de l'enregistrement vidéo de votre écran. En suivant la valeur audio, vous mettrez votre source audio.

De plus, le code suivant ne fera que saisir la vidéo de l'enregistrement de l'écran, sans aucun son ajouté:

FFMPEG -F GDIGRAB -FRAMERE 30 -I BURANT -C: V Libx264 -QP 0 Sortie.MP4

Conclusion

Dans l'ensemble, FFMPEG est un programme extrêmement utile qui vous permet d'accomplir pas mal de choses dans une seule ligne de code. Vous pouvez acheter des outils coûteux en ligne pour répondre à vos besoins d'édition, ou vous pouvez essayer ces fonctions gratuitement en installant l'utilitaire FFMPEG.