I am developing a remote access solution that captures and encodes the Windows screen using Intel media SDK and transmits it remotely over a network.
It is a solution that captures the entire screen of 1920 x 1080 FHD resolution from the PC terminal running windows 10 using 7th generation or 8th generation core i3 or i5, and then encodes and transmits it through the network. (30FPS, GOP 15, detailed tracer log)
Only the parameters for encoding were modified, and the code related to the basic logic did not modify the sample.
- After decode / vpp / encode init with the first mfx_encode_init
- After encoding is complete as the sample process decode (capture)-vpp-encode with CaptureAndEncode.
- Real-time streaming was implemented by delivering the encoded data to the socket.
Processes 2 and 3 are repeated until the program ends.
The problem is that it seems to work fine but the committed memory continues to grow, causing the system to hang.
Several postings on the forums find similar cases of memory leaks in encoders.
I'm still wondering if there are any bugs left. If it has been fixed, I would like to know which driver version is complete and whether there are any hotfixes that can be fixed without changing the driver.
Thank you for your attention. :)
- Development Tools
- Intel® Media SDK
- Intel® Media Server Studio
- Media Processing
My understanding is, you are modifying our sample code to create your application. So I suggest, you can run the original sample code and see if it has the same memory growing as you observed.
Let me know if the sample has the same issue, I will help you more to resolve it.
In general, the issues you listed should be all fixed. This is a memory management issue not a real memory leak, in other words, the memory growing is happens only at the application level.