Media (Intel® oneAPI Video Processing Library, Intel Media SDK)
Access community support with transcoding, decoding, and encoding in applications using media tools from Intel. This includes Intel® oneAPI Video Processing Library and Intel® Media SDK.

IDirect3DDevice9::UpdateSurface vs LockRect/UnlockRect

celli4
New Contributor I
142 Views

I am experimenting with encoding from system memory, and I had the following thought.

Just wondering if anybody at Intel thinks there would be speed benefits to using UpdateSurface() to load D3D surfaces from system memory during encoding rather than use LockRect()/UnlockRect() as per the examples.

Thanks

Cameron

0 Kudos
1 Reply
Petter_L_Intel
Employee
142 Views

Hi Cameron,

As far as I know this is not something we have explored. But that approach seems to be somewhat constrained, since you would somehow have to store your system memory surfaces in a D3D surface container. Anyways, I've personally not explored this.

If you find a suitable way of doing this which brings good performance, feel free to share your findings on this forum.

BTW. if you are using system memory surfaces as input to the encoder.you do not have to lock surface ahead of copying data into it.

Regards,
Petter 

Reply