Currently I am using this command to extract the images:
ffmpeg.exe -i 10fps.h264 -r 10 -f image2 10fps.h264_%03d.jpeg
But how can I improve the JPEG image quality?
Currently I am using this command to extract the images:
ffmpeg.exe -i 10fps.h264 -r 10 -f image2 10fps.h264_%03d.jpeg
But how can I improve the JPEG image quality?
Output the images in a lossless format such as PNG:
Then use another program (where you can more precisely specify quality, subsampling and DCT method – e.g. GIMP) to convert the PNGs you want to JPEG.
It is possible to obtain slightly sharper images in JPEG format this way than is possible with
-qmin 1 -q:v 1
and outputting as JPEG directly fromffmpeg
.Use
-qscale:v
Use
-qscale:v
(or the alias-q:v
) as an output option. Effective range for JPEG is 2-31 with 31 being the worst quality. I recommend trying values of 2-5.To output a series of images:
To output a single image at ~60 seconds duration:
This will work with any video input. See below if your input is MJPEG.
MJPEG
If you input is MJPEG (Motion JPEG) then the images can be extracted without any quality loss.
The
ffmpeg
orffprobe
console output can tell you if your input is MJPEG:Then you can extract the frames using the
mjpeg2jpeg
bitstream filter:Also see