The newly released verion 7.0 of ffmpeg has greatly improved multithreading support for transcoding on the commandline. (https://ffmpeg.org/download.html#release_7.0) Previously transcoding with ffmpeg might have used 1 or 2 cores and capped out at 12%-25% of CPU. Now it uses 60%-70% of CPU, and completes the task much faster.
I've noticed that multithreading doesn't work when using the -f rawvideo switch, or perhaps I need to change my command line string to enable it?
for example: *
ffmpeg -i file.mp4 -f rawvideo -s 1920x1080 -pix_fmt bgr24 out.dat
uses only 12% of CPU but...
ffmpeg -i file.mp4 out.dat
uses 60% of CPU.
Is there a way to make the -f rawvideo command use multithreading?
(* I realise the above example rawvideo command doesn't do anything useful, I include it only to easily demonstrate the difference in CPU usage)