I have an Nvidia graphics card, and am using the proprietary drivers.
I looked into the ffmpeg H265 encoders available to me, and found hevc_nvenc. Using hevc_nvenc does in fact use the GPU to encode the video, which massively increases encode time, but the output filesize is considerably larger.
For example: (input.mp4 is H264 and aac)
ffmpeg -hwaccel cuda -i input.mp4 -c:v libx265 -c:a libopus -crf 26 libx265_output.mkv
ffmpeg -hwaccel cuda -i input.mp4 -c:v hevc_nvenc -c:a libopus -crf 26 hevc_nvenc_output.mkv
Filesizes are:
input.mp4 351M
libx265_output.mkv 134M
hevc_nvenc_output.mkv 360M
ffprobe shows both outputs as hevc encoded, and input as h264.
So why does hevc_nvenc seem to perform so poorly? There must be something I'm missing.
Asked by TheOmegaCarrot
(61 rep)
Nov 13, 2021, 02:58 AM
Last activity: Dec 31, 2022, 02:01 PM
Last activity: Dec 31, 2022, 02:01 PM