title: NVENC ME-only mode OpenEncodeSessionEx() fail with "invalid struct version" error
body: <p>I got stuck with a strange behavior, trying to initialize NVENC in ME-only mode. <code>OpenEncodeSessionEx()</code> always fail with #15 - <code>"This indicates that an invalid struct version was used by the client."</code></p>
  
  <p>Parameters struct is as follow:</p>
  
  <pre><code>  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(&amp;session_params, &amp;encoder-&gt;enc);
  </code></pre>
  
  <p>I tried to invoke it from different C and Golang environments, but whatever I do I get that error. Encoder from NVENC samples just crashed (segfault). Decoder works flawlessly, while encoder doesn't.</p>
  
  <p>Does anyone know, what exact conditions may cause the error #15 - <code>NV_ENC_ERR_INVALID_VERSION</code>?</p>
  
  <p>I upgraded Cuda to 10.2 with 440.82 driver - no luck. Tried to downgrade to Cuda 10.0 - still the same. I use <code>1060ti</code> GPU.</p>
  
  <p>Anyone help me please))</p>