Я застрял со странным поведением, пытаясь инициализировать NVEN C в режиме ME-only. OpenEncodeSessionEx()
всегда терпит неудачу с # 15 - "This indicates that an invalid struct version was used by the client."
Структура параметров выглядит следующим образом:
NV_ENC_OPEN_ENCODE_SESSION_EX_PARAMS session_params = {
.version = NV_ENC_OPEN_ENCODE_SESSION_EX_PARAMS_VER,
.deviceType = NV_ENC_DEVICE_TYPE_CUDA,
.device = ctx,
.reserved = 0,
.apiVersion = NVENCAPI_VERSION,
.reserved1 = 0,
.reserved2 = NULL
};
int ret = encOpenEncodeSessionEx(&session_params, &encoder->enc);
Я пытался вызвать его из разных сред C и Golang, но что бы я ни делал, я получаю эту ошибку. Кодер из образцов NVEN C просто вылетел (segfault). Декодер работает безупречно, а кодировщик - нет.
Кто-нибудь знает, какие именно условия могут вызвать ошибку # 15 - NV_ENC_ERR_INVALID_VERSION
?
Я обновил Cuda до 10.2 с драйвером 440.82 - нет удача. Пытался перейти на Cuda 10.0 - все то же самое. Я использую 1060ti
GPU.
Кто-нибудь, помогите пожалуйста))