I know this is a recurring issue for people, but I’ve tried the various threads and I can’t make this work (it was previously working in an earlier version of shotcut).
In Shotcut 19.10.20 (on a Linux Mint 19.1 system, completely up to date, using the nvidia 430.50 drivers), Hardware Encoder autodetection fails to find any hardware accelarated encoders.
This is surprising, since I have an nvidia 1660Ti, and I’ve tested that hardware acceleration works with:
ffmpeg -i somevideo.mp4 -preset slow -profile:v high -vcodec h264_nvenc -qmin:v 19 -qmax:v 20 -c:a copy -pix_fmt yuv420p test.mp4
where, the log clearly shows:
Output #0, mp4, to ‘test.mp4’:
major_brand : mp42
minor_version : 0
encoder : Lavf57.83.100
Stream #0:0(eng): Video: h264 (h264_nvenc) (High) (avc1 / 0x31637661), yuv420p, 1920x1080, q=19-20, 2000 kb/s, 50 fps, 12800 tbn, 50 tbc (default)
creation_time : 2019-11-09T14:28:52.000000Z
handler_name : VideoHandler
encoder : Lavc57.107.100 h264_nvenc
So… how do I make Shotcut able to see the same thing that the system ffmpeg can - that I do, in fact, have perfectly functional nvenc extensions on my GPU?
Edited to add: At some point in the past, I managed to get this to work, with an earlier build of Shotcut (probably 19.08.x?, given when I last used it) since starting it up had the correct Hardware Encoder settings available in Configure… [but this new release of Shotcut wouldn’t use them - presumably because it is no longer capable of locating them]. So, whatever it is has broken since August this year, although I remember it being a big struggle to get that release of Shotcut to autodetect my card too…
Edited a second time to note: I tried to post logs, but the forum thinks all the double colon separated items are URLs and won’t let me post log extracts.
To summarize, though: the logs show that the bundled ffmpeg is incapable of providing the hardware accelerated extensions. Is there a way to force shotcut to use the actually working ffmpeg installed on the system, rather than the broken version it bundles?