1/* 2 * Copyright 2017 Alistair Leslie-Hughes 3 * 4 * This library is free software; you can redistribute it and/or 5 * modify it under the terms of the GNU Lesser General Public 6 * License as published by the Free Software Foundation; either 7 * version 2.1 of the License, or (at your option) any later version. 8 * 9 * This library is distributed in the hope that it will be useful, 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of 11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 12 * Lesser General Public License for more details. 13 * 14 * You should have received a copy of the GNU Lesser General Public 15 * License along with this library; if not, write to the Free Software 16 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA 17 */ 18 19import "oaidl.idl"; 20import "ocidl.idl"; 21import "mfobjects.idl"; 22import "mfidl.idl"; 23 24typedef struct _DRM_MINIMUM_OUTPUT_PROTECTION_LEVELS 25{ 26 WORD wCompressedDigitalVideo; 27 WORD wUncompressedDigitalVideo; 28 WORD wAnalogVideo; 29 WORD wCompressedDigitalAudio; 30 WORD wUncompressedDigitalAudio; 31} DRM_MINIMUM_OUTPUT_PROTECTION_LEVELS; 32 33typedef struct _DRM_VIDEO_OUTPUT_PROTECTION 34{ 35 GUID guidId; 36 BYTE bConfigData; 37} DRM_VIDEO_OUTPUT_PROTECTION; 38 39typedef struct _DRM_VIDEO_OUTPUT_PROTECTION_IDS 40{ 41 WORD cEntries; 42 DRM_VIDEO_OUTPUT_PROTECTION *rgVop; 43} DRM_VIDEO_OUTPUT_PROTECTION_IDS; 44 45typedef struct _DRM_OPL_OUTPUT_IDS 46{ 47 WORD cIds; 48 GUID *rgIds; 49} DRM_OPL_OUTPUT_IDS; 50 51typedef struct __tagDRM_COPY_OPL 52{ 53 WORD wMinimumCopyLevel; 54 DRM_OPL_OUTPUT_IDS oplIdIncludes; 55 DRM_OPL_OUTPUT_IDS oplIdExcludes; 56} DRM_COPY_OPL; 57 58typedef struct __tagDRM_PLAY_OPL 59{ 60 DRM_MINIMUM_OUTPUT_PROTECTION_LEVELS minOPL; 61 DRM_OPL_OUTPUT_IDS oplIdReserved; 62 DRM_VIDEO_OUTPUT_PROTECTION_IDS vopi; 63} DRM_PLAY_OPL; 64 65 66[ 67 uuid(82435be0-f7c1-4df9-8103-eeabebf3d6e1), 68 version(1.0) 69] 70library WMDRMContentEnablerLib 71{ 72 importlib("stdole2.tlb"); 73 74 [ 75 uuid(82435bdf-f7c1-4df9-8103-eeabebf3d6e1) 76 ] 77 coclass WMDRMContentEnablerActivate 78 { 79 [default] interface IPersistStream; 80 }; 81}; 82