intel / libvpl

Intel® Video Processing Library (Intel® VPL) API, dispatcher, and examples
https://intel.github.io/libvpl/
MIT License
262 stars 80 forks source link

D3DTexture2D import encode crashing with MFX_ERR_LOCK_MEMORY #125

Closed ma3uk closed 4 months ago

ma3uk commented 4 months ago

OS: Windows 11 23 H2 Video driver: gfx_win_101.5330, gfx_win_101.5194, gfx_win_101.5186 Video card: Arc A380

I am developing a plugin for OBS Studio using libvpl for real-time coding. With the release of libvpl 2.10, textures for encoding were added and supported, it works, but I ran into a problem, after a few minutes the encoding process was interrupted with the error MFX_ERR_LOCK_MEMORY from the EncodeFrameAsync function. Further attempts to start encoding are immediately interrupted with the MFX_ERR_LOCK_MEMORY error until the application is restarted.

A step-by-step process that I'm doing:

  1. A pool of intermediate textures is being created
  2. Copying an external texture to pool
  3. Importing textures from a pool to libvpl
  4. Encode

The error occurs at stage 4. There are no errors in the first 3 stages. It is also worth clarifying that in my case the error occurs when encoding the 65537 frame.

The source code of the application can be found at the links below:

mav-intel commented 4 months ago

Duplicates https://github.com/oneapi-src/oneVPL-intel-gpu/issues/318 . intel-gpu is the appropriate component