hwaccel cuda not working for proxy clip generation - but why?

Hi

Since a couple of days I have a NVidia GPU in my computer, and while generating proxy clips with h264_nvenc (i.e. GPU) works indeed, I cannot modify the proxy settings as I want to:

-vsync 1 -c:v h264_nvenc -vb 10000k -rc cbr -c:a aac -ab 128k
is working, but

-vsync 0 -hwaccel cuda -hwaccel_output_format cuda -c:v h264_nvenc -c:a copy
is not working.

When running the different proxy generation tests, I get this in the shell where I start the latest AppImage:

==== STARTING TEST PROFILE : "NVENC H264 Papa 1" = QList("-hide_banner", "-y", "-stats", "-v", "error", "-i", "/tmp/nJvWDs.mov", "-vsync", "1", "-c:v", "h264_nvenc", "-vb", "10000k", "-rc", "cbr", "-c:a", "a
ac", "-ab", "128k", "/tmp/TIavMt.mp4")
=== ADDING ANALYSIS: QList("NVENC H264 Papa 1", "6074", "74770682")
TIME: 6074 = "00:06:074"
==== STARTING TEST PROFILE : "NVENC H264 Papa 2" = QList("-hide_banner", "-y", "-stats", "-v", "error", "-i", "/tmp/nJvWDs.mov", "-vsync", "0", "-hwaccel", "cuda", "-hwaccel_output_format", "cuda", "-c:v", "
h264_nvenc", "-c:a", "copy", "/tmp/dWjHlK.mp4")
==== PROFILE FAILED: "NVENC H264 Papa 2" !!!!!!!!!!!!

But when I run it directly with ffmpeg in a shell, it works, e.g.:
ffmpeg -y -vsync 0 -hwaccel cuda -hwaccel_output_format cuda -i 2025-07-12_C0120.MP4 -c:a aac -ab 128k -c:v h264_nvenc -vb 10000k -rc cbr output.mp4

I also tried a few different commands, but none worked as expected. Why is this the case? (And it’s a bit pity because CUDA would run about twice as fast…

Thank you, best regards,

Bernd

OK, I found the reason:

One has to add -i to the list in order to get hwaccel-params before -i; if not specified -i comes before which is not allowed. No it runs very well :slight_smile:

1 Like