Skip to content
  • Seungha Yang's avatar
    nvenc: Register elements per GPU device with capability check · 92afa749
    Seungha Yang authored and Sebastian Dröge's avatar Sebastian Dröge committed
    * By this commit, if there are more than one device,
    nvenc element factory will be created per
    device like nvh264device{device-id}enc and nvh265device{device-id}enc
    in addition to nvh264enc and nvh265enc, so that the element factory
    can expose the exact capability of the device for the codec.
    
    * Each element factory will have fixed cuda-device-id
    which is determined during plugin initialization
    depending on the capability of corresponding device.
    (e.g., when only the second device can encode h265 among two GPU,
    then nvh265enc will choose "1" (zero-based numbering)
    as it's target cuda-device-id. As we have element factory
    per GPU device, "cuda-device-id" property is changed to read-only.
    
    * nvh265enc gains ability to encoding
    4:4:4 8bits, 4:2:0 10 bits formats and up to 8K resolution
    depending on device capability.
    Additionally, I420 GLMemory input is supported by nvenc.
    92afa749