Включить аппаратное (GPU) ускорение декодирования видео с помощью ffmpeg C API? - PullRequest
1 голос
/ 09 апреля 2019

Я использую avcodec_decode_video2() для декодирования конкретного видео без включения аппаратной поддержки графического процессора.

Пока я пытался получить аппаратный декодер по имени:

mVideoCodec = avcodec_find_decoder_by_name("h264_dxva2");

Но его результатыmVideoCodec = NULL хотя при запуске ffmpeg из командной строки с использованием dxva2 hwaccel ошибка не отображается.Здесь я даю вывод конфигурации, полученный из командной строки.Может кто-нибудь, пожалуйста, скажите мне, как я могу правильно включить аппаратное ускорение при использовании avcodec_decode_video2() API для декодирования видео в C.

Я использую ноутбук с графическим процессором NVIDIA.

Log from commandприглашение:

C: \ ffmpeg \ bin> ffmpeg -hwaccel dxva2 -i 9.mp4 -r 60 -vsync 0 -f image2 image-% 2d.png ** конфигурация: --enable-gpl --enable-version3 --enable-sdl2 --enable-bzlib --enable-fontconfig --enable-gnutls --enable-iconv --enable-libass --enable-libbluray --enable-libfreetype --enable-libmp3lame --enable-libopenjpeg --enable-libopus --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libtheora --enable-libtwolame --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libzimg --enable-lzma --enable-zlib --enable-gmp --enable-libvidstab --enable-libvorbis --enable-cuda --enable-cuvid --enable-d3d11va --enable-nvenc --enable-dxva2 --enable-avisynth --enable-libmfx

...