I am trying to create a H.264 video on the fly (by encoding) from RGB4 frames sent by Desktop Duplication API. This works fine for SW encoding. but I am unable to get it working with HW encoding. My system has 2 graphics cards - Nvidia Quadro K4000 and Intel I7-4700EQ with HD Graphics 4600.I need the Nvidia for another application that runs on the system simultaneously when the encoding is happening and this happens to be the active card which is used for display. Also i use 2 monitors.
can anyone help me how i can utilize the Intel graphics card for encoding in the presence of the Nvidia one?
I have attached the analyser output and also the trace when using MFX_IMPL_HARDWARE_ANY option.
i have used the simple_6_encode_vmem_vpp_preproc sample with some modifications. I use Windows 10 and SDK version media_sdk_22.214.171.1249
Thanks in advance,
I want to know more about your application.
Do you want to HW encoding happens in I7-4700EQ with HD Graphics 4600, and encoding display windows shows on Nvidia one ?
Does HW encode working for you if you disable Nvidia graphic card in BIOS ?
Are your two monitors all connected to Nvidia graphic card ?
Thank you very much for responding quickly!
Both my monitors are connected to NVidia card. Yes, I want to perform encoding on the intel graphics when the display is working on Nvidia.
Also, when i disable the NVidia card, the HW encoding works.
I did some more experiments and here is what i found:
I connected a VGA cable from one of the monitors to the intel graphics output. Now, in the Display Settings of Windows, I see that it shows 3 monitors (and my mouse goes invisible when I move it to the so called '3rd monitor'). surprisingly, the HW encoding starts to work!
Is this how this is supposed to be? I mean, is there a way I can simulate that 3rd monitor without having it detected by windows so that my mouse pointer doesn't go missing? (some way to simulate the 3rd monitor I suppose?)
Maybe you should do some coding on Multiple Monitor Support. Hope following URL can provide some help to you.
Multiple Monitor API usage should be found in MSDN.