J'ai tout un tas de fichiers texte, jpg et mp4 dans un dossier. Je veux que les fichiers jpg et texte soient laissés seuls. Je veux compresser tous les mp4 en utilisant les fonctions de ffmpeg. -crf
avec une valeur de 23
pour économiser de l'espace disque. Les fichiers doivent être écrasés à leur place.
J'ai utilisé la réponse de @llogan aquí et a remplacé .avi
con .mp4
mais cela ne fonctionne pas.
for f in *.mp4; do ffmpeg -i "$f" -c:v libx264 -crf 23 -preset medium \
-c:a aac -b:a 128k -movflags +faststart -vf scale=-2:720,format=yuv420p \
"encoded/${f%.avi}.mp4"; done
Quel serait le rôle de l for
est de convertir le mp4 en une qualité inférieure ( -crf 23
), sans supprimer et/ou modifier d'autres fichiers dans le même répertoire de travail ? Je ne veux pas vraiment les autres drapeaux non plus, parce que je ne ferai pas de redimensionnement, de téléchargement vers youtube, de changement de vitesse d'encodage, etc.