J’ai pris une vidéo avec mon smartphone Android mais j’ai oublié de choisir la bonne résolution. Bilan, la vidéo est haute qualité (3840×2160 pixels) et fait 500Mo pour 2 min de film. Impossible à envoyer par Internet.
Pour réduire le poids du fichier, on va alors réduire la résolution de la vidéo.
Avec le logiciel FFMPEG, on peut redimensionner la vidéo en une seule ligne de commande.
$ ffmpeg -i input.mp4 -vf scale=960:-1 output.mp4
960 est ici la largeur en pixels désirée pour le fichier de sortie. Pour ne pas trop altérer la qualité, il faut choisir une valeur qui soit une division de la largeur du fichier originale par un multiple de 2 (ici 960 = 3840/2/2)
Bilan, la vidéo fait maintenant 960x540px et fait 23Mo. Pratique !
Pour élargir la solution et pouvoir se débrouiller dans pas mal de cas :
https://forums.linuxmint.com/viewtopic.php?f=63&t=216144
Perso, j’utilise -s lxh
l est la largeur et h la hauteur.
Merci pour le « -vf scale=960:-1 ».
Comme ignace72, j’utilisais « -s LxH », mais il y a quelques avantages à utiliser ta méthode : http://stackoverflow.com/a/25125160/1987178
J’ai essayé sur une vidéo dont je voulais réduire la taille. Le truc de Tuxicoman fonctionne bien. Je suis passé de 2,6 Go (1920×1080) à 223,9 Mo (960×540) pour 42:34 min. . La vidéo et l’audio sont impec, mais j’ai perdu les sous-titres qui existaient dans la vidéo d’origine. Une idée pour résoudre le problème ?
En faisant FFmpeg -i (vidéo d’origine), j’ai bien trouvé la trace des sous-titres :
Stream #0:3(fra): Subtitle: mov_text (tx3g / 0x67337874), 1920×1080, 0 kb/s (default)
Comment les extraire de la vidéo d’origine et les introduire dans la vidéo modifiée ? Le plus simple étant d’utiliser la commande de Tuxicoman améliorée d’une commande pour garder les sous-titres. Merci pour le coup de main.