env: создатель QT
Я передал эту команду в терминале:
Код: Выделить всё
ffmpeg -hwaccel vaapi -vaapi_device /dev/dri/renderD128 -i input.mp4 -vf format=yuv420p,hwupload -c:v h264_vaapi -b:v 1000k output.mp4
Но когда я хочу использовать код для реализации кодирования с аппаратным ускорением, появляется запрос:
Код: Выделить всё
cannot allocate memory(-12)
Код: Выделить всё
av_hwdevice_ctx_create = (&hw_device_ctx,AV_HWDEVICE_TYPE_VAAPI,"/dev/dri/renderD128");
Я могу быть уверен, что скомпилировал ffmpeg правильно, поскольку я могу включить аппаратное ускорение vaapi с помощью этой команды, и моя видеокарта достаточно видеопамяти.
Возможные причины:
Я добавил -lavcodec -lavformat -lavutil -lswscale в свои библиотеки файлов qt pro, но не добавил -lva -lva-drm
Правильно ли добавлять -lva -lva-drm после libs?
Подробнее здесь: https://stackoverflow.com/questions/793 ... qt-creater