Custom Prsenter modifications

Custom Prsenter modifications

Hello,

I am working on a application for which I will require to modify custom presenter. I just want to ask that is it possible that we create NV12 surfaces in presnter? This type is not in the list but is there any way we can do this? And will it make my filter graph and video rendering faster?

Basically we will be having multiple videos and we take out video frame from renderer and render it through our application along with other content. So I thought having NV12 surfaces will save color conversion happening in renderer.
We have observed that with multiple videos, the application is not able to render at proper rate. So we are trying to optimize wherever possible.

Any other idea will also help. (We are using Intel MSDK DS filters)

Thanks,
Sourabh

6 posts / 0 new
Last post
For more complete information about compiler optimizations, see our Optimization Notice.

Hi Sourabh,
I think this is a good idea and worth trying. You may define#define D3DFMT_NV12 (D3DFORMAT)MAKEFOURCC('N','V','1','2') and use D3DFMT_NV12 as backbuffer format. I expect both mixer and display device can support this format. Just make sure you correct all the format checks in the code (like explicit check for D3DFMT_X8R8G8B8).
I'll be interested to know if this works and helps improve performance of your app. We may need to update our sample apps, too.
Thanks,Nina

Hi Nina,

I tried this in presenter but creating swap chain fails with this format type. Any other modifications required?

-Sourabh

Hi Sourabh,
I tried this too and confirm that it doesn't work. Sorry for a misleading advice. Let me do more investigation on this.. Could you please also describe in more details the pipeline of your app and which color conversion you need to avoid?
Thanks,Nina

Hi Nina,

We are using directshow for video playback but the EVR presenter would provide video frame to application where it gets composed along with other contents using DXVA-HD. The color conversion happens in presenter since the surfaces created are of XRGB type and the IMSDK output is NV12.

-Sourabh

Hi Sourabh,

we are looking into this to see if we can provide some recommendations. Our resources are strained this week but we plan to get back to you sometime next week.

Regards,Petter

Leave a Comment

Please sign in to add a comment. Not a member? Join today