docs: def nvmlDeviceGetEncoderUtilization(handle):
      r"""
      /**
       * Retrieves the current utilization and sampling size in microseconds for the Encoder
       *
       * For Kepler &tm; or newer fully supported devices.
       *
       * @param device                               The identifier of the target device
       * @param utilization                          Reference to an unsigned int for encoder utilization info
       * @param samplingPeriodUs                     Reference to an unsigned int for the sampling period in US
       *
       * @return
       *         - \ref NVML_SUCCESS                 if \a utilization has been populated
       *         - \ref NVML_ERROR_UNINITIALIZED     if the library has not been successfully initialized
       *         - \ref NVML_ERROR_INVALID_ARGUMENT  if \a device is invalid, \a utilization is NULL, or \a samplingPeriodUs is NULL
       *         - \ref NVML_ERROR_NOT_SUPPORTED     if the device does not support this feature
       *         - \ref NVML_ERROR_GPU_IS_LOST       if the target GPU has fallen off the bus or is otherwise inaccessible
       *         - \ref NVML_ERROR_UNKNOWN           on any unexpected error
       */
      nvmlReturn_t DECLDIR nvmlDeviceGetEncoderUtilization
      """
      c_util = c_uint()
      c_samplingPeriod = c_uint()
      fn = _nvmlGetFunctionPointer("nvmlDeviceGetEncoderUtilization")
      ret = fn(handle, byref(c_util), byref(c_samplingPeriod))
      _nvmlCheckReturn(ret)
      return [c_util.value, c_samplingPeriod.value]