Answered by:
[W8.1]Output protection issues on streaming windows store app

Question
-
We have a media streaming application to which we have added HDCP and CGMSA output protection. From the following post, https://social.msdn.microsoft.com/Forums/en-US/2b42ee68-b492-4e46-b1f4-936410d13256/how-to-enable-hdcp-on-video-output?forum=winappswithnativecode, we found out that it should also work for store apps as it does for desktop media foundation applications. However, we have run into some issues regarding the completeness of support for certain hardware combinations. For example, we have had some machines with a given family of video adapter crash when we issue a dynamic policy change. Other machine/adapter combinations report that HDCP is supported though we have connected a non HDCP compliant monitor. Also, when applying HDCP with the attribute MFPROTECTIONATTRIBUTE_BEST_EFFORT with "fail-over" set to false, it stops playback though it should have disregard the inability to enforce and continued playing.
This has left us with a few questions:
Who provides the output protection functionality, the video adapter vendor or Microsoft?
How have others resolved these type of issues?
Would it be possible to provide our own OTA to interface with the output protections manager? From the same post above it states that its not supported in windows runtime but couldn't find this in the OPM documentation so if anyone can corroborate this I will know if it can or cant be done. Also, supposing I could interface with the output protections manager, would this be appropriate since we are also using a protected media path. From what it says in the OPM documentation, "If your application uses the protected media path (PMP) to play video content, you do not have to use the OPM API, because the PMP makes all of the required OPM calls. The OPM API is available for applications that do not use the PMP.", I don't know if I will be clashing with the PMP if I try to use OPM also.
I couldn't find any sample code illustrating the OTA internals.Juan
- Edited by Franklin ChenMicrosoft employee Monday, June 29, 2015 9:12 AM Subject
Saturday, June 27, 2015 12:26 AM
Answers
-
>Who provides the output protection functionality, the video adapter vendor or Microsoft?
Should be the video vendor, as far as I know, the video Output protection needs the support from computer hardware, like display device, graphics card and CD-ROM
Best Regards,
Please remember to mark the replies as answers if they help- Proposed as answer by Franklin ChenMicrosoft employee Wednesday, July 8, 2015 12:27 PM
- Marked as answer by Franklin ChenMicrosoft employee Thursday, July 9, 2015 2:13 AM
Monday, June 29, 2015 9:11 AM -
Thanks IssueKiller. I guess for now Ill try to figure a workaround.
As for being able to use the OPM interface from windows run-time the answer is no and also applies to other interfaces that are needed such as those used to get the monitor handles and information.
For now I'm going to try and consume a win32 dll, which can access the needed interfaces, from a windows run-time component. So far I can get to the interface to get the monitor that I'm on but in the end don't know if it will all work.
- Marked as answer by Franklin ChenMicrosoft employee Thursday, July 9, 2015 2:13 AM
Wednesday, July 8, 2015 9:47 PM
All replies
-
>Who provides the output protection functionality, the video adapter vendor or Microsoft?
Should be the video vendor, as far as I know, the video Output protection needs the support from computer hardware, like display device, graphics card and CD-ROM
Best Regards,
Please remember to mark the replies as answers if they help- Proposed as answer by Franklin ChenMicrosoft employee Wednesday, July 8, 2015 12:27 PM
- Marked as answer by Franklin ChenMicrosoft employee Thursday, July 9, 2015 2:13 AM
Monday, June 29, 2015 9:11 AM -
Thanks IssueKiller. I guess for now Ill try to figure a workaround.
As for being able to use the OPM interface from windows run-time the answer is no and also applies to other interfaces that are needed such as those used to get the monitor handles and information.
For now I'm going to try and consume a win32 dll, which can access the needed interfaces, from a windows run-time component. So far I can get to the interface to get the monitor that I'm on but in the end don't know if it will all work.
- Marked as answer by Franklin ChenMicrosoft employee Thursday, July 9, 2015 2:13 AM
Wednesday, July 8, 2015 9:47 PM