Действительно ли ffmpeg использует мою видеокарту для кодирования?

Действительно ли ffmpeg использует мою видеокарту для кодирования?

У меня NVIDIA Quadro P620. Я много изучал, как ускорить транскодирование с помощью моей графической карты.

Я натыкаюсь на эту страницу https://trac.ffmpeg.org/wiki/HWAccelIntro#Использование с инструментом командной строки effmpeg

Итак, я попробовал

ffmpeg -hwaccel cuda -i input.avi output.mp4

Быстрее не получилось, чем

ffmpeg -i input.avi output.mp4

На самом деле перекодирование заняло больше времени.

Я вижу, что он тратит столько же ресурсов ЦП наресмонкак и без опции -hwaccel.

Я что-то сделал не так? Как узнать, что ffmpeg правильно использует мой GPU?

решение1

Согласно Матрица поддержки графического процессора для кодирования и декодирования видео, ваш графический процессор поддерживает аппаратное декодирование и кодирование, также называемое НВЕНК.

Единственным тревожным моментом здесь является список кодеков, поддерживаемых вашим графическим процессором, а именно: H.264 и H.265. Если ваши видео не закодированы этими кодеками, аппаратное ускорение может не работать для вас.

Для нужных кодеков и для справки см. пост Stack Overflow сделать так, чтобы ffmpeg выбрал Nvidia CUDA вместо Intel QSV упомянул, что аппаратное ускорение работает с помощью следующей команды:

ffmpeg -hide_banner -hwaccel cuda -i "input.avi" -c:a copy -ac 1 -c:v h264_nvenc -preset hq -movflags faststart -qp 30 "output.mp4"

Связанный контент