FFmpeg: error de formato al intentar utilizar el filtro de hardware scale_npp

FFmpeg: error de formato al intentar utilizar el filtro de hardware scale_npp

Tengo CUDA instalado en Ubuntu 22.04LTS con tarjeta gráfica NVidia Geforce. Actualmente estoy intentando capturar el escritorio completo ejecutando este comando

ffmpeg -y -hide_banner \
  -hwaccel cuda \
  -f x11grab \
  -framerate 25 \
  -video_size 3840x2160 \
  -i :1.0+0,0 \
  -vf "scale_npp=1920:-1" \
  -c:v hevc_nvenc -cq:v 21 -preset slow \
  output.mp4

El scale_nppfiltro provoca el siguiente error:

Impossible to convert between the formats supported by the filter 'graph 0 input from stream 0:0' and the filter 'auto_scale_0'
[vf#0:0 @ 0x561418cffe00] Error reinitializing filters!
[vf#0:0 @ 0x561418cffe00] Task finished with error code: -38 (Function not implemented)
[vf#0:0 @ 0x561418cffe00] Terminating thread with return code -38 (Function not implemented)
[vost#0:0/hevc_nvenc @ 0x561418ce2840] Could not open encoder before EOF
[vost#0:0/hevc_nvenc @ 0x561418ce2840] Task finished with error code: -22 (Invalid argument)
[vost#0:0/hevc_nvenc @ 0x561418ce2840] Terminating thread with return code -22 (Invalid argument)
[out#0/mp4 @ 0x561418ce0c00] Nothing was written into output file, because at least one of its streams received no packets.

No sé si todo funciona debido al error Function not implemented.

En general, me gustaría asegurarme de que todo esté hecho en mi GPU y luego que el resultado final se envíe al archivo de salida.

A continuación se muestran algunos resultados de un sistema:

  • ffmpeg -hide_banner -h encoder=hevc_nvenc
Encoder hevc_nvenc [NVIDIA NVENC hevc encoder]:
    General capabilities: dr1 delay hardware 
    Threading capabilities: none
    Supported hardware devices: cuda cuda 
    Supported pixel formats: yuv420p nv12 p010le yuv444p p016le yuv444p16le bgr0 bgra rgb0 rgba x2rgb10le x2bgr10le gbrp gbrp16le cuda
  • ffmpeg -hide_banner -h filter=scale_npp
Filter scale_npp
  NVIDIA Performance Primitives video scaling and format conversion
    Inputs:
       #0: default (video)
    Outputs:
       #0: default (video)

información relacionada