ME のみのモードで NVENC を初期化しようとして、奇妙な動作に行き詰まりました。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 環境から呼び出そうとしましたが、何をしてもそのエラーが発生します。NVENC サンプルのエンコーダーがクラッシュしました (segfault)。デコーダーは問題なく動作しますが、エンコーダーは問題ありません。
エラー#15 - を引き起こす正確な条件は何NV_ENC_ERR_INVALID_VERSION
ですか?
440.82 ドライバーで Cuda を 10.2 にアップグレードしましたが、うまくいきませんでした。Cuda 10.0 にダウングレードしようとしましたが、同じです。1060ti
GPUを使用しています。
誰でも私を助けてください))