Jai un fichier MP4 dun enregistrement décran que je dois recadrer. Comment puis-je accomplir cela sans utiliser des outils coûteux comme Adobe Premier ou Final Cut? Je préfère ffmpeg car je lai déjà utilisé.

Réponse

Utilisez le crop filter :

ffmpeg -i in.mp4 -filter:v "crop=out_w:out_h:x:y" out.mp4 

Où les options sont les suivantes:

  • out_w est la largeur du rectangle de sortie
  • out_h est la hauteur du rectangle de sortie
  • x et y spécifie le coin supérieur gauche du rectangle de sortie

Image dorigine

image dorigine
Image dorigine 320×240

Exemple 1

80x60

Pour recadrer une section 80 × 60, à partir de la position (200, 100):

ffmpeg -i in.mp4 -filter:v "crop=80:60:200:100" -c:a copy out.mp4 

Exemple 2

quart inférieur droit

Pour rogner le quart inférieur droit:

ffmpeg -i in.mp4 -filter:v "crop=in_w/2:in_h/2:in_w/2:in_h/2" -c:a copy out.mp4 

Cest la même chose que:

ffmpeg -i in.mp4 -filter:v "crop=320/2:240/2:320/2:240/2" -c:a copy out.mp4 

Ce qui équivaut à:

ffmpeg -i in.mp4 -filter:v "crop=160:120:160:120" -c:a copy out.mp4 
  • Vous pouvez faire référence à la taille de limage dentrée avec in_w et in_h comme indiqué dans ce premier exemple. La largeur et la hauteur de sortie peuvent également être utilisées avec out_w et out_h.

Exemple 3

20 pixels du haut et 20 du bas

Recadrez 20 pixels du haut et 20 du bas:

 ffmpeg -i in.mp4 -filter:v "crop=in_w:in_h-40" -c:a copy out.mp4 
  • Le filtre centrera automatiquement le recadrage si x et y sont omis comme dans cet exemple.

Prévisualisation

Vous pouvez prendre un recadrage (heh heh) et le prévisualiser en direct avec ffplay:

ffplay -i input -vf "crop=in_w:in_h-40" 

De cette façon, vous pouvez expérimenter et ajuster votre recadrage sans avoir à coder, afficher, répéter.

Remarques

  • crop documentation sur les filtres

  • Lencodeur par défaut pour MP4 est libx264 (vidéo H.264) ou mpeg4 (MPEG- 4 partie 2 vidéo) en fonction de votre ffmpeg build. Pour plus dinformations, reportez-vous au FFmpeg Wiki: Guide dencodage vidéo H.264 .

  • Au lieu de recadrer et de encodage, pensez à recadrer lors de la lecture. Ceci est possible avec nimporte quel joueur utile.

  • Anciennes ffmpeg constructions utilisées -croptop , -cropbottom, -cropleft, -cropright options au lieu des crop. Si tel est le cas pour vous, obtenez un ffmpeg moderne. Le développement est très actif et il ny a aucune raison dutiliser une antiquité.

Commentaires

  • Cela fonctionne avec ' avconv ' maintenant.
  • vaut la peine de mentionner cette technique (avec le crop filter) réencode la vidéo, voir stackoverflow.com/questions/33378548/… si lencodage compte pour vous
  • modifié pour remplacer le -filter:v obsolète par le plus récent et le plus simple à taper -vf . Bravo!
  • Si vous ' essayez de supprimer les barres noires autour de votre vidéo (piallarbox, letterbox, windowbox, etc.), utilisez cropdetect premier à avoir ffmpeg imprimer les paramètres de recadrage pour vous: ffmpeg.exe -i vid.mp4 -vf cropdetect out.mp4
  • Ce filtre de recadrage fonctionne très bien! Afin de déterminer le cadre de sélection nécessaire pour recadrer une vidéo, jai exporté une image vidéo vers une image avec ffmpeg. Ensuite, ouvrez limage avec GIMP où je peux dessiner une boîte englobante pour la zone que je voulais recadrer la vidéo, puis je peux obtenir les informations X, Y, W, H à partir de la fenêtre du pointeur. Demandez si ce nest pas assez clair.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *