J'ai un tas de fichiers mov/H.264 que j'aimerais encoder en mov/MJPEG. Cependant, je reçois une sortie de très faible qualité. Voici ce que j'ai essayé:
ffmpeg -i a.mov -an -crf 11 -preset slower -pix_fmt yuv420p -vcodec mjpeg -f mov -y b.mov
Pour le codage H.264, le -crf
et -preset
les drapeaux génèrent une meilleure qualité. Mais cela ne semble pas fonctionner pour MJPEG.
-q:v
pour contrôler la qualité (M) JPEGLa plage effective est une échelle linéaire de 2 à 31, et une valeur inférieure se traduira par une sortie de meilleure qualité.
Faire une vidéo MJPEG dans un conteneur MOV:
ffmpeg -i input.mov -c:v mjpeg -q:v 3 -an output.mov
Sortie d'une série d'images JPG:
ffmpeg -i input.mov -q:v 2 images_%04d.jpg
Les fichiers seront nommés images_0001.jpg
, images_0002.jpg
, images_0003.jpg
, etc.
Pour le codage H.264, le
-crf
et-preset
les drapeaux génèrent une meilleure qualité. Mais cela ne semble pas fonctionner pour MJPEG.
L'encodeur MJPEG n'utilise pas -crf
et -preset
; ce sont options "privées" pour certains encodeurs tels que libx264, libx265 et libvpx. Vous pouvez voir des options privées comme ceci: ffmpeg -h encoder=mjpeg
.