| |
| |
| /* this ALWAYS GENERATED file contains the definitions for the interfaces */ |
| |
| |
| /* File created by MIDL compiler version 7.00.0500 */ |
| /* at Fri Jun 17 10:43:51 2011 |
| */ |
| /* Compiler settings for .\win\DeckLinkAPI.idl: |
| Oicf, W1, Zp8, env=Win32 (32b run) |
| protocol : dce , ms_ext, c_ext, robust |
| error checks: allocation ref bounds_check enum stub_data |
| VC __declspec() decoration level: |
| __declspec(uuid()), __declspec(selectany), __declspec(novtable) |
| DECLSPEC_UUID(), MIDL_INTERFACE() |
| */ |
| //@@MIDL_FILE_HEADING( ) |
| |
| #pragma warning( disable: 4049 ) /* more than 64k source lines */ |
| |
| |
| /* verify that the <rpcndr.h> version is high enough to compile this file*/ |
| #ifndef __REQUIRED_RPCNDR_H_VERSION__ |
| #define __REQUIRED_RPCNDR_H_VERSION__ 475 |
| #endif |
| |
| #include "rpc.h" |
| #include "rpcndr.h" |
| |
| #ifndef __RPCNDR_H_VERSION__ |
| #error this stub requires an updated version of <rpcndr.h> |
| #endif // __RPCNDR_H_VERSION__ |
| |
| |
| #ifndef __DeckLinkAPI_h__ |
| #define __DeckLinkAPI_h__ |
| |
| #if defined(_MSC_VER) && (_MSC_VER >= 1020) |
| #pragma once |
| #endif |
| |
| /* Forward Declarations */ |
| |
| #ifndef __IDeckLinkVideoOutputCallback_FWD_DEFINED__ |
| #define __IDeckLinkVideoOutputCallback_FWD_DEFINED__ |
| typedef interface IDeckLinkVideoOutputCallback IDeckLinkVideoOutputCallback; |
| #endif /* __IDeckLinkVideoOutputCallback_FWD_DEFINED__ */ |
| |
| |
| #ifndef __IDeckLinkInputCallback_FWD_DEFINED__ |
| #define __IDeckLinkInputCallback_FWD_DEFINED__ |
| typedef interface IDeckLinkInputCallback IDeckLinkInputCallback; |
| #endif /* __IDeckLinkInputCallback_FWD_DEFINED__ */ |
| |
| |
| #ifndef __IDeckLinkMemoryAllocator_FWD_DEFINED__ |
| #define __IDeckLinkMemoryAllocator_FWD_DEFINED__ |
| typedef interface IDeckLinkMemoryAllocator IDeckLinkMemoryAllocator; |
| #endif /* __IDeckLinkMemoryAllocator_FWD_DEFINED__ */ |
| |
| |
| #ifndef __IDeckLinkAudioOutputCallback_FWD_DEFINED__ |
| #define __IDeckLinkAudioOutputCallback_FWD_DEFINED__ |
| typedef interface IDeckLinkAudioOutputCallback IDeckLinkAudioOutputCallback; |
| #endif /* __IDeckLinkAudioOutputCallback_FWD_DEFINED__ */ |
| |
| |
| #ifndef __IDeckLinkIterator_FWD_DEFINED__ |
| #define __IDeckLinkIterator_FWD_DEFINED__ |
| typedef interface IDeckLinkIterator IDeckLinkIterator; |
| #endif /* __IDeckLinkIterator_FWD_DEFINED__ */ |
| |
| |
| #ifndef __IDeckLinkAPIInformation_FWD_DEFINED__ |
| #define __IDeckLinkAPIInformation_FWD_DEFINED__ |
| typedef interface IDeckLinkAPIInformation IDeckLinkAPIInformation; |
| #endif /* __IDeckLinkAPIInformation_FWD_DEFINED__ */ |
| |
| |
| #ifndef __IDeckLinkDisplayModeIterator_FWD_DEFINED__ |
| #define __IDeckLinkDisplayModeIterator_FWD_DEFINED__ |
| typedef interface IDeckLinkDisplayModeIterator IDeckLinkDisplayModeIterator; |
| #endif /* __IDeckLinkDisplayModeIterator_FWD_DEFINED__ */ |
| |
| |
| #ifndef __IDeckLinkDisplayMode_FWD_DEFINED__ |
| #define __IDeckLinkDisplayMode_FWD_DEFINED__ |
| typedef interface IDeckLinkDisplayMode IDeckLinkDisplayMode; |
| #endif /* __IDeckLinkDisplayMode_FWD_DEFINED__ */ |
| |
| |
| #ifndef __IDeckLink_FWD_DEFINED__ |
| #define __IDeckLink_FWD_DEFINED__ |
| typedef interface IDeckLink IDeckLink; |
| #endif /* __IDeckLink_FWD_DEFINED__ */ |
| |
| |
| #ifndef __IDeckLinkOutput_FWD_DEFINED__ |
| #define __IDeckLinkOutput_FWD_DEFINED__ |
| typedef interface IDeckLinkOutput IDeckLinkOutput; |
| #endif /* __IDeckLinkOutput_FWD_DEFINED__ */ |
| |
| |
| #ifndef __IDeckLinkInput_FWD_DEFINED__ |
| #define __IDeckLinkInput_FWD_DEFINED__ |
| typedef interface IDeckLinkInput IDeckLinkInput; |
| #endif /* __IDeckLinkInput_FWD_DEFINED__ */ |
| |
| |
| #ifndef __IDeckLinkTimecode_FWD_DEFINED__ |
| #define __IDeckLinkTimecode_FWD_DEFINED__ |
| typedef interface IDeckLinkTimecode IDeckLinkTimecode; |
| #endif /* __IDeckLinkTimecode_FWD_DEFINED__ */ |
| |
| |
| #ifndef __IDeckLinkVideoFrame_FWD_DEFINED__ |
| #define __IDeckLinkVideoFrame_FWD_DEFINED__ |
| typedef interface IDeckLinkVideoFrame IDeckLinkVideoFrame; |
| #endif /* __IDeckLinkVideoFrame_FWD_DEFINED__ */ |
| |
| |
| #ifndef __IDeckLinkMutableVideoFrame_FWD_DEFINED__ |
| #define __IDeckLinkMutableVideoFrame_FWD_DEFINED__ |
| typedef interface IDeckLinkMutableVideoFrame IDeckLinkMutableVideoFrame; |
| #endif /* __IDeckLinkMutableVideoFrame_FWD_DEFINED__ */ |
| |
| |
| #ifndef __IDeckLinkVideoFrame3DExtensions_FWD_DEFINED__ |
| #define __IDeckLinkVideoFrame3DExtensions_FWD_DEFINED__ |
| typedef interface IDeckLinkVideoFrame3DExtensions IDeckLinkVideoFrame3DExtensions; |
| #endif /* __IDeckLinkVideoFrame3DExtensions_FWD_DEFINED__ */ |
| |
| |
| #ifndef __IDeckLinkVideoInputFrame_FWD_DEFINED__ |
| #define __IDeckLinkVideoInputFrame_FWD_DEFINED__ |
| typedef interface IDeckLinkVideoInputFrame IDeckLinkVideoInputFrame; |
| #endif /* __IDeckLinkVideoInputFrame_FWD_DEFINED__ */ |
| |
| |
| #ifndef __IDeckLinkVideoFrameAncillary_FWD_DEFINED__ |
| #define __IDeckLinkVideoFrameAncillary_FWD_DEFINED__ |
| typedef interface IDeckLinkVideoFrameAncillary IDeckLinkVideoFrameAncillary; |
| #endif /* __IDeckLinkVideoFrameAncillary_FWD_DEFINED__ */ |
| |
| |
| #ifndef __IDeckLinkAudioInputPacket_FWD_DEFINED__ |
| #define __IDeckLinkAudioInputPacket_FWD_DEFINED__ |
| typedef interface IDeckLinkAudioInputPacket IDeckLinkAudioInputPacket; |
| #endif /* __IDeckLinkAudioInputPacket_FWD_DEFINED__ */ |
| |
| |
| #ifndef __IDeckLinkScreenPreviewCallback_FWD_DEFINED__ |
| #define __IDeckLinkScreenPreviewCallback_FWD_DEFINED__ |
| typedef interface IDeckLinkScreenPreviewCallback IDeckLinkScreenPreviewCallback; |
| #endif /* __IDeckLinkScreenPreviewCallback_FWD_DEFINED__ */ |
| |
| |
| #ifndef __IDeckLinkGLScreenPreviewHelper_FWD_DEFINED__ |
| #define __IDeckLinkGLScreenPreviewHelper_FWD_DEFINED__ |
| typedef interface IDeckLinkGLScreenPreviewHelper IDeckLinkGLScreenPreviewHelper; |
| #endif /* __IDeckLinkGLScreenPreviewHelper_FWD_DEFINED__ */ |
| |
| |
| #ifndef __IDeckLinkConfiguration_FWD_DEFINED__ |
| #define __IDeckLinkConfiguration_FWD_DEFINED__ |
| typedef interface IDeckLinkConfiguration IDeckLinkConfiguration; |
| #endif /* __IDeckLinkConfiguration_FWD_DEFINED__ */ |
| |
| |
| #ifndef __IDeckLinkAttributes_FWD_DEFINED__ |
| #define __IDeckLinkAttributes_FWD_DEFINED__ |
| typedef interface IDeckLinkAttributes IDeckLinkAttributes; |
| #endif /* __IDeckLinkAttributes_FWD_DEFINED__ */ |
| |
| |
| #ifndef __IDeckLinkKeyer_FWD_DEFINED__ |
| #define __IDeckLinkKeyer_FWD_DEFINED__ |
| typedef interface IDeckLinkKeyer IDeckLinkKeyer; |
| #endif /* __IDeckLinkKeyer_FWD_DEFINED__ */ |
| |
| |
| #ifndef __IDeckLinkVideoConversion_FWD_DEFINED__ |
| #define __IDeckLinkVideoConversion_FWD_DEFINED__ |
| typedef interface IDeckLinkVideoConversion IDeckLinkVideoConversion; |
| #endif /* __IDeckLinkVideoConversion_FWD_DEFINED__ */ |
| |
| |
| #ifndef __IDeckLinkDeckControlStatusCallback_FWD_DEFINED__ |
| #define __IDeckLinkDeckControlStatusCallback_FWD_DEFINED__ |
| typedef interface IDeckLinkDeckControlStatusCallback IDeckLinkDeckControlStatusCallback; |
| #endif /* __IDeckLinkDeckControlStatusCallback_FWD_DEFINED__ */ |
| |
| |
| #ifndef __IDeckLinkDeckControl_FWD_DEFINED__ |
| #define __IDeckLinkDeckControl_FWD_DEFINED__ |
| typedef interface IDeckLinkDeckControl IDeckLinkDeckControl; |
| #endif /* __IDeckLinkDeckControl_FWD_DEFINED__ */ |
| |
| |
| #ifndef __CDeckLinkIterator_FWD_DEFINED__ |
| #define __CDeckLinkIterator_FWD_DEFINED__ |
| |
| #ifdef __cplusplus |
| typedef class CDeckLinkIterator CDeckLinkIterator; |
| #else |
| typedef struct CDeckLinkIterator CDeckLinkIterator; |
| #endif /* __cplusplus */ |
| |
| #endif /* __CDeckLinkIterator_FWD_DEFINED__ */ |
| |
| |
| #ifndef __CDeckLinkAPIInformation_FWD_DEFINED__ |
| #define __CDeckLinkAPIInformation_FWD_DEFINED__ |
| |
| #ifdef __cplusplus |
| typedef class CDeckLinkAPIInformation CDeckLinkAPIInformation; |
| #else |
| typedef struct CDeckLinkAPIInformation CDeckLinkAPIInformation; |
| #endif /* __cplusplus */ |
| |
| #endif /* __CDeckLinkAPIInformation_FWD_DEFINED__ */ |
| |
| |
| #ifndef __CDeckLinkGLScreenPreviewHelper_FWD_DEFINED__ |
| #define __CDeckLinkGLScreenPreviewHelper_FWD_DEFINED__ |
| |
| #ifdef __cplusplus |
| typedef class CDeckLinkGLScreenPreviewHelper CDeckLinkGLScreenPreviewHelper; |
| #else |
| typedef struct CDeckLinkGLScreenPreviewHelper CDeckLinkGLScreenPreviewHelper; |
| #endif /* __cplusplus */ |
| |
| #endif /* __CDeckLinkGLScreenPreviewHelper_FWD_DEFINED__ */ |
| |
| |
| #ifndef __CDeckLinkVideoConversion_FWD_DEFINED__ |
| #define __CDeckLinkVideoConversion_FWD_DEFINED__ |
| |
| #ifdef __cplusplus |
| typedef class CDeckLinkVideoConversion CDeckLinkVideoConversion; |
| #else |
| typedef struct CDeckLinkVideoConversion CDeckLinkVideoConversion; |
| #endif /* __cplusplus */ |
| |
| #endif /* __CDeckLinkVideoConversion_FWD_DEFINED__ */ |
| |
| |
| #ifndef __IDeckLinkDeckControl_v7_9_FWD_DEFINED__ |
| #define __IDeckLinkDeckControl_v7_9_FWD_DEFINED__ |
| typedef interface IDeckLinkDeckControl_v7_9 IDeckLinkDeckControl_v7_9; |
| #endif /* __IDeckLinkDeckControl_v7_9_FWD_DEFINED__ */ |
| |
| |
| #ifndef __IDeckLinkDisplayModeIterator_v7_6_FWD_DEFINED__ |
| #define __IDeckLinkDisplayModeIterator_v7_6_FWD_DEFINED__ |
| typedef interface IDeckLinkDisplayModeIterator_v7_6 IDeckLinkDisplayModeIterator_v7_6; |
| #endif /* __IDeckLinkDisplayModeIterator_v7_6_FWD_DEFINED__ */ |
| |
| |
| #ifndef __IDeckLinkDisplayMode_v7_6_FWD_DEFINED__ |
| #define __IDeckLinkDisplayMode_v7_6_FWD_DEFINED__ |
| typedef interface IDeckLinkDisplayMode_v7_6 IDeckLinkDisplayMode_v7_6; |
| #endif /* __IDeckLinkDisplayMode_v7_6_FWD_DEFINED__ */ |
| |
| |
| #ifndef __IDeckLinkOutput_v7_6_FWD_DEFINED__ |
| #define __IDeckLinkOutput_v7_6_FWD_DEFINED__ |
| typedef interface IDeckLinkOutput_v7_6 IDeckLinkOutput_v7_6; |
| #endif /* __IDeckLinkOutput_v7_6_FWD_DEFINED__ */ |
| |
| |
| #ifndef __IDeckLinkInput_v7_6_FWD_DEFINED__ |
| #define __IDeckLinkInput_v7_6_FWD_DEFINED__ |
| typedef interface IDeckLinkInput_v7_6 IDeckLinkInput_v7_6; |
| #endif /* __IDeckLinkInput_v7_6_FWD_DEFINED__ */ |
| |
| |
| #ifndef __IDeckLinkTimecode_v7_6_FWD_DEFINED__ |
| #define __IDeckLinkTimecode_v7_6_FWD_DEFINED__ |
| typedef interface IDeckLinkTimecode_v7_6 IDeckLinkTimecode_v7_6; |
| #endif /* __IDeckLinkTimecode_v7_6_FWD_DEFINED__ */ |
| |
| |
| #ifndef __IDeckLinkVideoFrame_v7_6_FWD_DEFINED__ |
| #define __IDeckLinkVideoFrame_v7_6_FWD_DEFINED__ |
| typedef interface IDeckLinkVideoFrame_v7_6 IDeckLinkVideoFrame_v7_6; |
| #endif /* __IDeckLinkVideoFrame_v7_6_FWD_DEFINED__ */ |
| |
| |
| #ifndef __IDeckLinkMutableVideoFrame_v7_6_FWD_DEFINED__ |
| #define __IDeckLinkMutableVideoFrame_v7_6_FWD_DEFINED__ |
| typedef interface IDeckLinkMutableVideoFrame_v7_6 IDeckLinkMutableVideoFrame_v7_6; |
| #endif /* __IDeckLinkMutableVideoFrame_v7_6_FWD_DEFINED__ */ |
| |
| |
| #ifndef __IDeckLinkVideoInputFrame_v7_6_FWD_DEFINED__ |
| #define __IDeckLinkVideoInputFrame_v7_6_FWD_DEFINED__ |
| typedef interface IDeckLinkVideoInputFrame_v7_6 IDeckLinkVideoInputFrame_v7_6; |
| #endif /* __IDeckLinkVideoInputFrame_v7_6_FWD_DEFINED__ */ |
| |
| |
| #ifndef __IDeckLinkScreenPreviewCallback_v7_6_FWD_DEFINED__ |
| #define __IDeckLinkScreenPreviewCallback_v7_6_FWD_DEFINED__ |
| typedef interface IDeckLinkScreenPreviewCallback_v7_6 IDeckLinkScreenPreviewCallback_v7_6; |
| #endif /* __IDeckLinkScreenPreviewCallback_v7_6_FWD_DEFINED__ */ |
| |
| |
| #ifndef __IDeckLinkGLScreenPreviewHelper_v7_6_FWD_DEFINED__ |
| #define __IDeckLinkGLScreenPreviewHelper_v7_6_FWD_DEFINED__ |
| typedef interface IDeckLinkGLScreenPreviewHelper_v7_6 IDeckLinkGLScreenPreviewHelper_v7_6; |
| #endif /* __IDeckLinkGLScreenPreviewHelper_v7_6_FWD_DEFINED__ */ |
| |
| |
| #ifndef __IDeckLinkVideoConversion_v7_6_FWD_DEFINED__ |
| #define __IDeckLinkVideoConversion_v7_6_FWD_DEFINED__ |
| typedef interface IDeckLinkVideoConversion_v7_6 IDeckLinkVideoConversion_v7_6; |
| #endif /* __IDeckLinkVideoConversion_v7_6_FWD_DEFINED__ */ |
| |
| |
| #ifndef __IDeckLinkConfiguration_v7_6_FWD_DEFINED__ |
| #define __IDeckLinkConfiguration_v7_6_FWD_DEFINED__ |
| typedef interface IDeckLinkConfiguration_v7_6 IDeckLinkConfiguration_v7_6; |
| #endif /* __IDeckLinkConfiguration_v7_6_FWD_DEFINED__ */ |
| |
| |
| #ifndef __IDeckLinkVideoOutputCallback_v7_6_FWD_DEFINED__ |
| #define __IDeckLinkVideoOutputCallback_v7_6_FWD_DEFINED__ |
| typedef interface IDeckLinkVideoOutputCallback_v7_6 IDeckLinkVideoOutputCallback_v7_6; |
| #endif /* __IDeckLinkVideoOutputCallback_v7_6_FWD_DEFINED__ */ |
| |
| |
| #ifndef __IDeckLinkInputCallback_v7_6_FWD_DEFINED__ |
| #define __IDeckLinkInputCallback_v7_6_FWD_DEFINED__ |
| typedef interface IDeckLinkInputCallback_v7_6 IDeckLinkInputCallback_v7_6; |
| #endif /* __IDeckLinkInputCallback_v7_6_FWD_DEFINED__ */ |
| |
| |
| #ifndef __CDeckLinkGLScreenPreviewHelper_v7_6_FWD_DEFINED__ |
| #define __CDeckLinkGLScreenPreviewHelper_v7_6_FWD_DEFINED__ |
| |
| #ifdef __cplusplus |
| typedef class CDeckLinkGLScreenPreviewHelper_v7_6 CDeckLinkGLScreenPreviewHelper_v7_6; |
| #else |
| typedef struct CDeckLinkGLScreenPreviewHelper_v7_6 CDeckLinkGLScreenPreviewHelper_v7_6; |
| #endif /* __cplusplus */ |
| |
| #endif /* __CDeckLinkGLScreenPreviewHelper_v7_6_FWD_DEFINED__ */ |
| |
| |
| #ifndef __CDeckLinkVideoConversion_v7_6_FWD_DEFINED__ |
| #define __CDeckLinkVideoConversion_v7_6_FWD_DEFINED__ |
| |
| #ifdef __cplusplus |
| typedef class CDeckLinkVideoConversion_v7_6 CDeckLinkVideoConversion_v7_6; |
| #else |
| typedef struct CDeckLinkVideoConversion_v7_6 CDeckLinkVideoConversion_v7_6; |
| #endif /* __cplusplus */ |
| |
| #endif /* __CDeckLinkVideoConversion_v7_6_FWD_DEFINED__ */ |
| |
| |
| #ifndef __IDeckLinkInputCallback_v7_3_FWD_DEFINED__ |
| #define __IDeckLinkInputCallback_v7_3_FWD_DEFINED__ |
| typedef interface IDeckLinkInputCallback_v7_3 IDeckLinkInputCallback_v7_3; |
| #endif /* __IDeckLinkInputCallback_v7_3_FWD_DEFINED__ */ |
| |
| |
| #ifndef __IDeckLinkOutput_v7_3_FWD_DEFINED__ |
| #define __IDeckLinkOutput_v7_3_FWD_DEFINED__ |
| typedef interface IDeckLinkOutput_v7_3 IDeckLinkOutput_v7_3; |
| #endif /* __IDeckLinkOutput_v7_3_FWD_DEFINED__ */ |
| |
| |
| #ifndef __IDeckLinkInput_v7_3_FWD_DEFINED__ |
| #define __IDeckLinkInput_v7_3_FWD_DEFINED__ |
| typedef interface IDeckLinkInput_v7_3 IDeckLinkInput_v7_3; |
| #endif /* __IDeckLinkInput_v7_3_FWD_DEFINED__ */ |
| |
| |
| #ifndef __IDeckLinkVideoInputFrame_v7_3_FWD_DEFINED__ |
| #define __IDeckLinkVideoInputFrame_v7_3_FWD_DEFINED__ |
| typedef interface IDeckLinkVideoInputFrame_v7_3 IDeckLinkVideoInputFrame_v7_3; |
| #endif /* __IDeckLinkVideoInputFrame_v7_3_FWD_DEFINED__ */ |
| |
| |
| #ifndef __IDeckLinkDisplayModeIterator_v7_1_FWD_DEFINED__ |
| #define __IDeckLinkDisplayModeIterator_v7_1_FWD_DEFINED__ |
| typedef interface IDeckLinkDisplayModeIterator_v7_1 IDeckLinkDisplayModeIterator_v7_1; |
| #endif /* __IDeckLinkDisplayModeIterator_v7_1_FWD_DEFINED__ */ |
| |
| |
| #ifndef __IDeckLinkDisplayMode_v7_1_FWD_DEFINED__ |
| #define __IDeckLinkDisplayMode_v7_1_FWD_DEFINED__ |
| typedef interface IDeckLinkDisplayMode_v7_1 IDeckLinkDisplayMode_v7_1; |
| #endif /* __IDeckLinkDisplayMode_v7_1_FWD_DEFINED__ */ |
| |
| |
| #ifndef __IDeckLinkVideoFrame_v7_1_FWD_DEFINED__ |
| #define __IDeckLinkVideoFrame_v7_1_FWD_DEFINED__ |
| typedef interface IDeckLinkVideoFrame_v7_1 IDeckLinkVideoFrame_v7_1; |
| #endif /* __IDeckLinkVideoFrame_v7_1_FWD_DEFINED__ */ |
| |
| |
| #ifndef __IDeckLinkVideoInputFrame_v7_1_FWD_DEFINED__ |
| #define __IDeckLinkVideoInputFrame_v7_1_FWD_DEFINED__ |
| typedef interface IDeckLinkVideoInputFrame_v7_1 IDeckLinkVideoInputFrame_v7_1; |
| #endif /* __IDeckLinkVideoInputFrame_v7_1_FWD_DEFINED__ */ |
| |
| |
| #ifndef __IDeckLinkAudioInputPacket_v7_1_FWD_DEFINED__ |
| #define __IDeckLinkAudioInputPacket_v7_1_FWD_DEFINED__ |
| typedef interface IDeckLinkAudioInputPacket_v7_1 IDeckLinkAudioInputPacket_v7_1; |
| #endif /* __IDeckLinkAudioInputPacket_v7_1_FWD_DEFINED__ */ |
| |
| |
| #ifndef __IDeckLinkVideoOutputCallback_v7_1_FWD_DEFINED__ |
| #define __IDeckLinkVideoOutputCallback_v7_1_FWD_DEFINED__ |
| typedef interface IDeckLinkVideoOutputCallback_v7_1 IDeckLinkVideoOutputCallback_v7_1; |
| #endif /* __IDeckLinkVideoOutputCallback_v7_1_FWD_DEFINED__ */ |
| |
| |
| #ifndef __IDeckLinkInputCallback_v7_1_FWD_DEFINED__ |
| #define __IDeckLinkInputCallback_v7_1_FWD_DEFINED__ |
| typedef interface IDeckLinkInputCallback_v7_1 IDeckLinkInputCallback_v7_1; |
| #endif /* __IDeckLinkInputCallback_v7_1_FWD_DEFINED__ */ |
| |
| |
| #ifndef __IDeckLinkOutput_v7_1_FWD_DEFINED__ |
| #define __IDeckLinkOutput_v7_1_FWD_DEFINED__ |
| typedef interface IDeckLinkOutput_v7_1 IDeckLinkOutput_v7_1; |
| #endif /* __IDeckLinkOutput_v7_1_FWD_DEFINED__ */ |
| |
| |
| #ifndef __IDeckLinkInput_v7_1_FWD_DEFINED__ |
| #define __IDeckLinkInput_v7_1_FWD_DEFINED__ |
| typedef interface IDeckLinkInput_v7_1 IDeckLinkInput_v7_1; |
| #endif /* __IDeckLinkInput_v7_1_FWD_DEFINED__ */ |
| |
| |
| /* header files for imported files */ |
| #include "unknwn.h" |
| |
| #ifdef __cplusplus |
| extern "C"{ |
| #endif |
| |
| |
| |
| #ifndef __DeckLinkAPI_LIBRARY_DEFINED__ |
| #define __DeckLinkAPI_LIBRARY_DEFINED__ |
| |
| /* library DeckLinkAPI */ |
| /* [helpstring][version][uuid] */ |
| |
| typedef LONGLONG BMDTimeValue; |
| |
| typedef LONGLONG BMDTimeScale; |
| |
| typedef unsigned long BMDTimecodeBCD; |
| |
| typedef unsigned long BMDTimecodeUserBits; |
| |
| typedef unsigned long BMDDisplayModeFlags; |
| typedef unsigned long BMDFrameFlags; |
| typedef unsigned long BMDVideoInputFlags; |
| typedef unsigned long BMDVideoInputFormatChangedEvents; |
| typedef unsigned long BMDDetectedVideoInputFormatFlags; |
| typedef unsigned long BMDTimecodeFlags; |
| typedef unsigned long BMDAnalogVideoFlags; |
| typedef unsigned long BMDDeckControlStatusFlags; |
| typedef unsigned long BMDDeckControlExportModeOpsFlags; |
| #if 0 |
| typedef enum _BMDDisplayModeFlags BMDDisplayModeFlags; |
| |
| typedef enum _BMDFrameFlags BMDFrameFlags; |
| |
| typedef enum _BMDVideoInputFlags BMDVideoInputFlags; |
| |
| typedef enum _BMDVideoInputFormatChangedEvents BMDVideoInputFormatChangedEvents; |
| |
| typedef enum _BMDDetectedVideoInputFormatFlags BMDDetectedVideoInputFormatFlags; |
| |
| typedef enum _BMDTimecodeFlags BMDTimecodeFlags; |
| |
| typedef enum _BMDAnalogVideoFlags BMDAnalogVideoFlags; |
| |
| typedef enum _BMDDeckControlStatusFlags BMDDeckControlStatusFlags; |
| |
| typedef enum _BMDDeckControlExportModeOpsFlags BMDDeckControlExportModeOpsFlags; |
| |
| #endif |
| typedef /* [v1_enum] */ |
| enum _BMDDisplayMode |
| { bmdModeNTSC = 0x6e747363, |
| bmdModeNTSC2398 = 0x6e743233, |
| bmdModePAL = 0x70616c20, |
| bmdModeNTSCp = 0x6e747370, |
| bmdModePALp = 0x70616c70, |
| bmdModeHD1080p2398 = 0x32337073, |
| bmdModeHD1080p24 = 0x32347073, |
| bmdModeHD1080p25 = 0x48703235, |
| bmdModeHD1080p2997 = 0x48703239, |
| bmdModeHD1080p30 = 0x48703330, |
| bmdModeHD1080i50 = 0x48693530, |
| bmdModeHD1080i5994 = 0x48693539, |
| bmdModeHD1080i6000 = 0x48693630, |
| bmdModeHD1080p50 = 0x48703530, |
| bmdModeHD1080p5994 = 0x48703539, |
| bmdModeHD1080p6000 = 0x48703630, |
| bmdModeHD720p50 = 0x68703530, |
| bmdModeHD720p5994 = 0x68703539, |
| bmdModeHD720p60 = 0x68703630, |
| bmdMode2k2398 = 0x326b3233, |
| bmdMode2k24 = 0x326b3234, |
| bmdMode2k25 = 0x326b3235 |
| } BMDDisplayMode; |
| |
| typedef /* [v1_enum] */ |
| enum _BMDFieldDominance |
| { bmdUnknownFieldDominance = 0, |
| bmdLowerFieldFirst = 0x6c6f7772, |
| bmdUpperFieldFirst = 0x75707072, |
| bmdProgressiveFrame = 0x70726f67, |
| bmdProgressiveSegmentedFrame = 0x70736620 |
| } BMDFieldDominance; |
| |
| typedef /* [v1_enum] */ |
| enum _BMDPixelFormat |
| { bmdFormat8BitYUV = 0x32767579, |
| bmdFormat10BitYUV = 0x76323130, |
| bmdFormat8BitARGB = 32, |
| bmdFormat8BitBGRA = 0x42475241, |
| bmdFormat10BitRGB = 0x72323130 |
| } BMDPixelFormat; |
| |
| /* [v1_enum] */ |
| enum _BMDDisplayModeFlags |
| { bmdDisplayModeSupports3D = ( 1 << 0 ) , |
| bmdDisplayModeColorspaceRec601 = ( 1 << 1 ) , |
| bmdDisplayModeColorspaceRec709 = ( 1 << 2 ) |
| } ; |
| typedef /* [v1_enum] */ |
| enum _BMDVideoOutputFlags |
| { bmdVideoOutputFlagDefault = 0, |
| bmdVideoOutputVANC = ( 1 << 0 ) , |
| bmdVideoOutputVITC = ( 1 << 1 ) , |
| bmdVideoOutputRP188 = ( 1 << 2 ) , |
| bmdVideoOutputDualStream3D = ( 1 << 4 ) |
| } BMDVideoOutputFlags; |
| |
| /* [v1_enum] */ |
| enum _BMDFrameFlags |
| { bmdFrameFlagDefault = 0, |
| bmdFrameFlagFlipVertical = ( 1 << 0 ) , |
| bmdFrameHasNoInputSource = ( 1 << 31 ) |
| } ; |
| /* [v1_enum] */ |
| enum _BMDVideoInputFlags |
| { bmdVideoInputFlagDefault = 0, |
| bmdVideoInputEnableFormatDetection = ( 1 << 0 ) , |
| bmdVideoInputDualStream3D = ( 1 << 1 ) |
| } ; |
| /* [v1_enum] */ |
| enum _BMDVideoInputFormatChangedEvents |
| { bmdVideoInputDisplayModeChanged = ( 1 << 0 ) , |
| bmdVideoInputFieldDominanceChanged = ( 1 << 1 ) , |
| bmdVideoInputColorspaceChanged = ( 1 << 2 ) |
| } ; |
| /* [v1_enum] */ |
| enum _BMDDetectedVideoInputFormatFlags |
| { bmdDetectedVideoInputYCbCr422 = ( 1 << 0 ) , |
| bmdDetectedVideoInputRGB444 = ( 1 << 1 ) |
| } ; |
| typedef /* [v1_enum] */ |
| enum _BMDOutputFrameCompletionResult |
| { bmdOutputFrameCompleted = 0, |
| bmdOutputFrameDisplayedLate = ( bmdOutputFrameCompleted + 1 ) , |
| bmdOutputFrameDropped = ( bmdOutputFrameDisplayedLate + 1 ) , |
| bmdOutputFrameFlushed = ( bmdOutputFrameDropped + 1 ) |
| } BMDOutputFrameCompletionResult; |
| |
| typedef /* [v1_enum] */ |
| enum _BMDReferenceStatus |
| { bmdReferenceNotSupportedByHardware = ( 1 << 0 ) , |
| bmdReferenceLocked = ( 1 << 1 ) |
| } BMDReferenceStatus; |
| |
| typedef /* [v1_enum] */ |
| enum _BMDAudioSampleRate |
| { bmdAudioSampleRate48kHz = 48000 |
| } BMDAudioSampleRate; |
| |
| typedef /* [v1_enum] */ |
| enum _BMDAudioSampleType |
| { bmdAudioSampleType16bitInteger = 16, |
| bmdAudioSampleType32bitInteger = 32 |
| } BMDAudioSampleType; |
| |
| typedef /* [v1_enum] */ |
| enum _BMDAudioOutputStreamType |
| { bmdAudioOutputStreamContinuous = 0, |
| bmdAudioOutputStreamContinuousDontResample = ( bmdAudioOutputStreamContinuous + 1 ) , |
| bmdAudioOutputStreamTimestamped = ( bmdAudioOutputStreamContinuousDontResample + 1 ) |
| } BMDAudioOutputStreamType; |
| |
| typedef /* [v1_enum] */ |
| enum _BMDDisplayModeSupport |
| { bmdDisplayModeNotSupported = 0, |
| bmdDisplayModeSupported = ( bmdDisplayModeNotSupported + 1 ) , |
| bmdDisplayModeSupportedWithConversion = ( bmdDisplayModeSupported + 1 ) |
| } BMDDisplayModeSupport; |
| |
| typedef /* [v1_enum] */ |
| enum _BMDTimecodeFormat |
| { bmdTimecodeRP188 = 0x72703138, |
| bmdTimecodeRP188Field2 = 0x72703132, |
| bmdTimecodeVITC = 0x76697463, |
| bmdTimecodeVITCField2 = 0x76697432, |
| bmdTimecodeSerial = 0x73657269 |
| } BMDTimecodeFormat; |
| |
| /* [v1_enum] */ |
| enum _BMDTimecodeFlags |
| { bmdTimecodeFlagDefault = 0, |
| bmdTimecodeIsDropFrame = ( 1 << 0 ) |
| } ; |
| typedef /* [v1_enum] */ |
| enum _BMDVideoConnection |
| { bmdVideoConnectionSDI = ( 1 << 0 ) , |
| bmdVideoConnectionHDMI = ( 1 << 1 ) , |
| bmdVideoConnectionOpticalSDI = ( 1 << 2 ) , |
| bmdVideoConnectionComponent = ( 1 << 3 ) , |
| bmdVideoConnectionComposite = ( 1 << 4 ) , |
| bmdVideoConnectionSVideo = ( 1 << 5 ) |
| } BMDVideoConnection; |
| |
| /* [v1_enum] */ |
| enum _BMDAnalogVideoFlags |
| { bmdAnalogVideoFlagCompositeSetup75 = ( 1 << 0 ) , |
| bmdAnalogVideoFlagComponentBetacamLevels = ( 1 << 1 ) |
| } ; |
| typedef /* [v1_enum] */ |
| enum _BMDAudioConnection |
| { bmdAudioConnectionEmbedded = 0x656d6264, |
| bmdAudioConnectionAESEBU = 0x61657320, |
| bmdAudioConnectionAnalog = 0x616e6c67 |
| } BMDAudioConnection; |
| |
| typedef /* [v1_enum] */ |
| enum _BMDAudioOutputAnalogAESSwitch |
| { bmdAudioOutputSwitchAESEBU = 0x61657320, |
| bmdAudioOutputSwitchAnalog = 0x616e6c67 |
| } BMDAudioOutputAnalogAESSwitch; |
| |
| typedef /* [v1_enum] */ |
| enum _BMDVideoOutputConversionMode |
| { bmdNoVideoOutputConversion = 0x6e6f6e65, |
| bmdVideoOutputLetterboxDownconversion = 0x6c746278, |
| bmdVideoOutputAnamorphicDownconversion = 0x616d7068, |
| bmdVideoOutputHD720toHD1080Conversion = 0x37323063, |
| bmdVideoOutputHardwareLetterboxDownconversion = 0x48576c62, |
| bmdVideoOutputHardwareAnamorphicDownconversion = 0x4857616d, |
| bmdVideoOutputHardwareCenterCutDownconversion = 0x48576363, |
| bmdVideoOutputHardware720p1080pCrossconversion = 0x78636170, |
| bmdVideoOutputHardwareAnamorphic720pUpconversion = 0x75613770, |
| bmdVideoOutputHardwareAnamorphic1080iUpconversion = 0x75613169, |
| bmdVideoOutputHardwareAnamorphic149To720pUpconversion = 0x75343770, |
| bmdVideoOutputHardwareAnamorphic149To1080iUpconversion = 0x75343169, |
| bmdVideoOutputHardwarePillarbox720pUpconversion = 0x75703770, |
| bmdVideoOutputHardwarePillarbox1080iUpconversion = 0x75703169 |
| } BMDVideoOutputConversionMode; |
| |
| typedef /* [v1_enum] */ |
| enum _BMDVideoInputConversionMode |
| { bmdNoVideoInputConversion = 0x6e6f6e65, |
| bmdVideoInputLetterboxDownconversionFromHD1080 = 0x31306c62, |
| bmdVideoInputAnamorphicDownconversionFromHD1080 = 0x3130616d, |
| bmdVideoInputLetterboxDownconversionFromHD720 = 0x37326c62, |
| bmdVideoInputAnamorphicDownconversionFromHD720 = 0x3732616d, |
| bmdVideoInputLetterboxUpconversion = 0x6c627570, |
| bmdVideoInputAnamorphicUpconversion = 0x616d7570 |
| } BMDVideoInputConversionMode; |
| |
| typedef /* [v1_enum] */ |
| enum _BMDVideo3DPackingFormat |
| { bmdVideo3DPackingSidebySideHalf = 0x73627368, |
| bmdVideo3DPackingLinebyLine = 0x6c62796c, |
| bmdVideo3DPackingTopAndBottom = 0x7461626f, |
| bmdVideo3DPackingFramePacking = 0x6672706b, |
| bmdVideo3DPackingLeftOnly = 0x6c656674, |
| bmdVideo3DPackingRightOnly = 0x72696768 |
| } BMDVideo3DPackingFormat; |
| |
| typedef /* [v1_enum] */ |
| enum _BMDIdleVideoOutputOperation |
| { bmdIdleVideoOutputBlack = 0x626c6163, |
| bmdIdleVideoOutputLastFrame = 0x6c616661 |
| } BMDIdleVideoOutputOperation; |
| |
| typedef /* [v1_enum] */ |
| enum _BMDDeckLinkConfigurationID |
| { bmdDeckLinkConfigSwapSerialRxTx = 0x73737274, |
| bmdDeckLinkConfigUse1080pNotPsF = 0x6670726f, |
| bmdDeckLinkConfigHDMI3DPackingFormat = 0x33647066, |
| bmdDeckLinkConfigBypass = 0x62797073, |
| bmdDeckLinkConfigAnalogAudioConsumerLevels = 0x6161636c, |
| bmdDeckLinkConfigFieldFlickerRemoval = 0x66646672, |
| bmdDeckLinkConfigHD1080p24ToHD1080i5994Conversion = 0x746f3539, |
| bmdDeckLinkConfig444SDIVideoOutput = 0x3434346f, |
| bmdDeckLinkConfig3GBpsVideoOutput = 0x33676273, |
| bmdDeckLinkConfigBlackVideoOutputDuringCapture = 0x62766f63, |
| bmdDeckLinkConfigLowLatencyVideoOutput = 0x6c6c766f, |
| bmdDeckLinkConfigVideoOutputConnection = 0x766f636e, |
| bmdDeckLinkConfigVideoOutputConversionMode = 0x766f636d, |
| bmdDeckLinkConfigAnalogVideoOutputFlags = 0x61766f66, |
| bmdDeckLinkConfigReferenceInputTimingOffset = 0x676c6f74, |
| bmdDeckLinkConfigVideoOutputIdleOperation = 0x766f696f, |
| bmdDeckLinkConfigVideoOutputComponentLumaGain = 0x6f636c67, |
| bmdDeckLinkConfigVideoOutputComponentChromaBlueGain = 0x6f636362, |
| bmdDeckLinkConfigVideoOutputComponentChromaRedGain = 0x6f636372, |
| bmdDeckLinkConfigVideoOutputCompositeLumaGain = 0x6f696c67, |
| bmdDeckLinkConfigVideoOutputCompositeChromaGain = 0x6f696367, |
| bmdDeckLinkConfigVideoOutputSVideoLumaGain = 0x6f736c67, |
| bmdDeckLinkConfigVideoOutputSVideoChromaGain = 0x6f736367, |
| bmdDeckLinkConfigVideoInputConnection = 0x7669636e, |
| bmdDeckLinkConfigAnalogVideoInputFlags = 0x61766966, |
| bmdDeckLinkConfigVideoInputConversionMode = 0x7669636d, |
| bmdDeckLinkConfig32PulldownSequenceInitialTimecodeFrame = 0x70646966, |
| bmdDeckLinkConfigVANCSourceLine1Mapping = 0x76736c31, |
| bmdDeckLinkConfigVANCSourceLine2Mapping = 0x76736c32, |
| bmdDeckLinkConfigVANCSourceLine3Mapping = 0x76736c33, |
| bmdDeckLinkConfigVideoInputComponentLumaGain = 0x69636c67, |
| bmdDeckLinkConfigVideoInputComponentChromaBlueGain = 0x69636362, |
| bmdDeckLinkConfigVideoInputComponentChromaRedGain = 0x69636372, |
| bmdDeckLinkConfigVideoInputCompositeLumaGain = 0x69696c67, |
| bmdDeckLinkConfigVideoInputCompositeChromaGain = 0x69696367, |
| bmdDeckLinkConfigVideoInputSVideoLumaGain = 0x69736c67, |
| bmdDeckLinkConfigVideoInputSVideoChromaGain = 0x69736367, |
| bmdDeckLinkConfigAudioInputConnection = 0x6169636e, |
| bmdDeckLinkConfigAnalogAudioInputScaleChannel1 = 0x61697331, |
| bmdDeckLinkConfigAnalogAudioInputScaleChannel2 = 0x61697332, |
| bmdDeckLinkConfigAnalogAudioInputScaleChannel3 = 0x61697333, |
| bmdDeckLinkConfigAnalogAudioInputScaleChannel4 = 0x61697334, |
| bmdDeckLinkConfigDigitalAudioInputScale = 0x64616973, |
| bmdDeckLinkConfigAudioOutputAESAnalogSwitch = 0x616f6161, |
| bmdDeckLinkConfigAnalogAudioOutputScaleChannel1 = 0x616f7331, |
| bmdDeckLinkConfigAnalogAudioOutputScaleChannel2 = 0x616f7332, |
| bmdDeckLinkConfigAnalogAudioOutputScaleChannel3 = 0x616f7333, |
| bmdDeckLinkConfigAnalogAudioOutputScaleChannel4 = 0x616f7334, |
| bmdDeckLinkConfigDigitalAudioOutputScale = 0x64616f73 |
| } BMDDeckLinkConfigurationID; |
| |
| typedef /* [v1_enum] */ |
| enum _BMDDeckLinkAttributeID |
| { BMDDeckLinkSupportsInternalKeying = 0x6b657969, |
| BMDDeckLinkSupportsExternalKeying = 0x6b657965, |
| BMDDeckLinkSupportsHDKeying = 0x6b657968, |
| BMDDeckLinkSupportsInputFormatDetection = 0x696e6664, |
| BMDDeckLinkHasReferenceInput = 0x6872696e, |
| BMDDeckLinkHasSerialPort = 0x68737074, |
| BMDDeckLinkHasAnalogVideoOutputGain = 0x61766f67, |
| BMDDeckLinkCanOnlyAdjustOverallVideoOutputGain = 0x6f766f67, |
| BMDDeckLinkHasVideoInputAntiAliasingFilter = 0x6161666c, |
| BMDDeckLinkHasBypass = 0x62797073, |
| BMDDeckLinkMaximumAudioChannels = 0x6d616368, |
| BMDDeckLinkNumberOfSubDevices = 0x6e736264, |
| BMDDeckLinkSubDeviceIndex = 0x73756269, |
| BMDDeckLinkVideoOutputConnections = 0x766f636e, |
| BMDDeckLinkVideoInputConnections = 0x7669636e, |
| BMDDeckLinkVideoInputGainMinimum = 0x7669676d, |
| BMDDeckLinkVideoInputGainMaximum = 0x76696778, |
| BMDDeckLinkVideoOutputGainMinimum = 0x766f676d, |
| BMDDeckLinkVideoOutputGainMaximum = 0x766f6778, |
| BMDDeckLinkSerialPortDeviceName = 0x736c706e |
| } BMDDeckLinkAttributeID; |
| |
| typedef /* [v1_enum] */ |
| enum _BMDDeckLinkAPIInformationID |
| { BMDDeckLinkAPIVersion = 0x76657273 |
| } BMDDeckLinkAPIInformationID; |
| |
| typedef /* [v1_enum] */ |
| enum _BMDDeckControlMode |
| { bmdDeckControlNotOpened = 0x6e746f70, |
| bmdDeckControlVTRControlMode = 0x76747263, |
| bmdDeckControlExportMode = 0x6578706d, |
| bmdDeckControlCaptureMode = 0x6361706d |
| } BMDDeckControlMode; |
| |
| typedef /* [v1_enum] */ |
| enum _BMDDeckControlEvent |
| { bmdDeckControlAbortedEvent = 0x61627465, |
| bmdDeckControlPrepareForExportEvent = 0x70666565, |
| bmdDeckControlExportCompleteEvent = 0x65786365, |
| bmdDeckControlPrepareForCaptureEvent = 0x70666365, |
| bmdDeckControlCaptureCompleteEvent = 0x63636576 |
| } BMDDeckControlEvent; |
| |
| typedef /* [v1_enum] */ |
| enum _BMDDeckControlVTRControlState |
| { bmdDeckControlNotInVTRControlMode = 0x6e76636d, |
| bmdDeckControlVTRControlPlaying = 0x76747270, |
| bmdDeckControlVTRControlRecording = 0x76747272, |
| bmdDeckControlVTRControlStill = 0x76747261, |
| bmdDeckControlVTRControlSeeking = 0x76747273, |
| bmdDeckControlVTRControlStopped = 0x7674726f |
| } BMDDeckControlVTRControlState; |
| |
| /* [v1_enum] */ |
| enum _BMDDeckControlStatusFlags |
| { bmdDeckControlStatusDeckConnected = ( 1 << 0 ) , |
| bmdDeckControlStatusRemoteMode = ( 1 << 1 ) , |
| bmdDeckControlStatusRecordInhibited = ( 1 << 2 ) , |
| bmdDeckControlStatusCassetteOut = ( 1 << 3 ) |
| } ; |
| /* [v1_enum] */ |
| enum _BMDDeckControlExportModeOpsFlags |
| { bmdDeckControlExportModeInsertVideo = ( 1 << 0 ) , |
| bmdDeckControlExportModeInsertAudio1 = ( 1 << 1 ) , |
| bmdDeckControlExportModeInsertAudio2 = ( 1 << 2 ) , |
| bmdDeckControlExportModeInsertAudio3 = ( 1 << 3 ) , |
| bmdDeckControlExportModeInsertAudio4 = ( 1 << 4 ) , |
| bmdDeckControlExportModeInsertAudio5 = ( 1 << 5 ) , |
| bmdDeckControlExportModeInsertAudio6 = ( 1 << 6 ) , |
| bmdDeckControlExportModeInsertAudio7 = ( 1 << 7 ) , |
| bmdDeckControlExportModeInsertAudio8 = ( 1 << 8 ) , |
| bmdDeckControlExportModeInsertAudio9 = ( 1 << 9 ) , |
| bmdDeckControlExportModeInsertAudio10 = ( 1 << 10 ) , |
| bmdDeckControlExportModeInsertAudio11 = ( 1 << 11 ) , |
| bmdDeckControlExportModeInsertAudio12 = ( 1 << 12 ) , |
| bmdDeckControlExportModeInsertTimeCode = ( 1 << 13 ) , |
| bmdDeckControlExportModeInsertAssemble = ( 1 << 14 ) , |
| bmdDeckControlExportModeInsertPreview = ( 1 << 15 ) , |
| bmdDeckControlUseManualExport = ( 1 << 16 ) |
| } ; |
| typedef /* [v1_enum] */ |
| enum _BMDDeckControlError |
| { bmdDeckControlNoError = 0x6e6f6572, |
| bmdDeckControlModeError = 0x6d6f6572, |
| bmdDeckControlMissedInPointError = 0x6d696572, |
| bmdDeckControlDeckTimeoutError = 0x64746572, |
| bmdDeckControlCommandFailedError = 0x63666572, |
| bmdDeckControlDeviceAlreadyOpenedError = 0x64616c6f, |
| bmdDeckControlFailedToOpenDeviceError = 0x66646572, |
| bmdDeckControlInLocalModeError = 0x6c6d6572, |
| bmdDeckControlEndOfTapeError = 0x65746572, |
| bmdDeckControlUserAbortError = 0x75616572, |
| bmdDeckControlNoTapeInDeckError = 0x6e746572, |
| bmdDeckControlNoVideoFromCardError = 0x6e766663, |
| bmdDeckControlNoCommunicationError = 0x6e636f6d, |
| bmdDeckControlBufferTooSmallError = 0x6274736d, |
| bmdDeckControlBadChecksumError = 0x63686b73, |
| bmdDeckControlUnknownError = 0x756e6572 |
| } BMDDeckControlError; |
| |
| typedef /* [v1_enum] */ |
| enum _BMD3DPreviewFormat |
| { bmd3DPreviewFormatDefault = 0x64656661, |
| bmd3DPreviewFormatLeftOnly = 0x6c656674, |
| bmd3DPreviewFormatRightOnly = 0x72696768, |
| bmd3DPreviewFormatSideBySide = 0x73696465, |
| bmd3DPreviewFormatTopBottom = 0x746f7062 |
| } BMD3DPreviewFormat; |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| typedef /* [v1_enum] */ |
| enum _BMDVideoConnection_v7_6 |
| { bmdVideoConnectionSDI_v7_6 = 0x73646920, |
| bmdVideoConnectionHDMI_v7_6 = 0x68646d69, |
| bmdVideoConnectionOpticalSDI_v7_6 = 0x6f707469, |
| bmdVideoConnectionComponent_v7_6 = 0x63706e74, |
| bmdVideoConnectionComposite_v7_6 = 0x636d7374, |
| bmdVideoConnectionSVideo_v7_6 = 0x73766964 |
| } BMDVideoConnection_v7_6; |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| EXTERN_C const IID LIBID_DeckLinkAPI; |
| |
| #ifndef __IDeckLinkVideoOutputCallback_INTERFACE_DEFINED__ |
| #define __IDeckLinkVideoOutputCallback_INTERFACE_DEFINED__ |
| |
| /* interface IDeckLinkVideoOutputCallback */ |
| /* [helpstring][uuid][object] */ |
| |
| |
| EXTERN_C const IID IID_IDeckLinkVideoOutputCallback; |
| |
| #if defined(__cplusplus) && !defined(CINTERFACE) |
| |
| MIDL_INTERFACE("20AA5225-1958-47CB-820B-80A8D521A6EE") |
| IDeckLinkVideoOutputCallback : public IUnknown |
| { |
| public: |
| virtual HRESULT STDMETHODCALLTYPE ScheduledFrameCompleted( |
| /* [in] */ IDeckLinkVideoFrame *completedFrame, |
| /* [in] */ BMDOutputFrameCompletionResult result) = 0; |
| |
| virtual HRESULT STDMETHODCALLTYPE ScheduledPlaybackHasStopped( void) = 0; |
| |
| }; |
| |
| #else /* C style interface */ |
| |
| typedef struct IDeckLinkVideoOutputCallbackVtbl |
| { |
| BEGIN_INTERFACE |
| |
| HRESULT ( STDMETHODCALLTYPE *QueryInterface )( |
| IDeckLinkVideoOutputCallback * This, |
| /* [in] */ REFIID riid, |
| /* [iid_is][out] */ |
| __RPC__deref_out void **ppvObject); |
| |
| ULONG ( STDMETHODCALLTYPE *AddRef )( |
| IDeckLinkVideoOutputCallback * This); |
| |
| ULONG ( STDMETHODCALLTYPE *Release )( |
| IDeckLinkVideoOutputCallback * This); |
| |
| HRESULT ( STDMETHODCALLTYPE *ScheduledFrameCompleted )( |
| IDeckLinkVideoOutputCallback * This, |
| /* [in] */ IDeckLinkVideoFrame *completedFrame, |
| /* [in] */ BMDOutputFrameCompletionResult result); |
| |
| HRESULT ( STDMETHODCALLTYPE *ScheduledPlaybackHasStopped )( |
| IDeckLinkVideoOutputCallback * This); |
| |
| END_INTERFACE |
| } IDeckLinkVideoOutputCallbackVtbl; |
| |
| interface IDeckLinkVideoOutputCallback |
| { |
| CONST_VTBL struct IDeckLinkVideoOutputCallbackVtbl *lpVtbl; |
| }; |
| |
| |
| |
| #ifdef COBJMACROS |
| |
| |
| #define IDeckLinkVideoOutputCallback_QueryInterface(This,riid,ppvObject) \ |
| ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) |
| |
| #define IDeckLinkVideoOutputCallback_AddRef(This) \ |
| ( (This)->lpVtbl -> AddRef(This) ) |
| |
| #define IDeckLinkVideoOutputCallback_Release(This) \ |
| ( (This)->lpVtbl -> Release(This) ) |
| |
| |
| #define IDeckLinkVideoOutputCallback_ScheduledFrameCompleted(This,completedFrame,result) \ |
| ( (This)->lpVtbl -> ScheduledFrameCompleted(This,completedFrame,result) ) |
| |
| #define IDeckLinkVideoOutputCallback_ScheduledPlaybackHasStopped(This) \ |
| ( (This)->lpVtbl -> ScheduledPlaybackHasStopped(This) ) |
| |
| #endif /* COBJMACROS */ |
| |
| |
| #endif /* C style interface */ |
| |
| |
| |
| |
| #endif /* __IDeckLinkVideoOutputCallback_INTERFACE_DEFINED__ */ |
| |
| |
| #ifndef __IDeckLinkInputCallback_INTERFACE_DEFINED__ |
| #define __IDeckLinkInputCallback_INTERFACE_DEFINED__ |
| |
| /* interface IDeckLinkInputCallback */ |
| /* [helpstring][uuid][object] */ |
| |
| |
| EXTERN_C const IID IID_IDeckLinkInputCallback; |
| |
| #if defined(__cplusplus) && !defined(CINTERFACE) |
| |
| MIDL_INTERFACE("DD04E5EC-7415-42AB-AE4A-E80C4DFC044A") |
| IDeckLinkInputCallback : public IUnknown |
| { |
| public: |
| virtual HRESULT STDMETHODCALLTYPE VideoInputFormatChanged( |
| /* [in] */ BMDVideoInputFormatChangedEvents notificationEvents, |
| /* [in] */ IDeckLinkDisplayMode *newDisplayMode, |
| /* [in] */ BMDDetectedVideoInputFormatFlags detectedSignalFlags) = 0; |
| |
| virtual HRESULT STDMETHODCALLTYPE VideoInputFrameArrived( |
| /* [in] */ IDeckLinkVideoInputFrame *videoFrame, |
| /* [in] */ IDeckLinkAudioInputPacket *audioPacket) = 0; |
| |
| }; |
| |
| #else /* C style interface */ |
| |
| typedef struct IDeckLinkInputCallbackVtbl |
| { |
| BEGIN_INTERFACE |
| |
| HRESULT ( STDMETHODCALLTYPE *QueryInterface )( |
| IDeckLinkInputCallback * This, |
| /* [in] */ REFIID riid, |
| /* [iid_is][out] */ |
| __RPC__deref_out void **ppvObject); |
| |
| ULONG ( STDMETHODCALLTYPE *AddRef )( |
| IDeckLinkInputCallback * This); |
| |
| ULONG ( STDMETHODCALLTYPE *Release )( |
| IDeckLinkInputCallback * This); |
| |
| HRESULT ( STDMETHODCALLTYPE *VideoInputFormatChanged )( |
| IDeckLinkInputCallback * This, |
| /* [in] */ BMDVideoInputFormatChangedEvents notificationEvents, |
| /* [in] */ IDeckLinkDisplayMode *newDisplayMode, |
| /* [in] */ BMDDetectedVideoInputFormatFlags detectedSignalFlags); |
| |
| HRESULT ( STDMETHODCALLTYPE *VideoInputFrameArrived )( |
| IDeckLinkInputCallback * This, |
| /* [in] */ IDeckLinkVideoInputFrame *videoFrame, |
| /* [in] */ IDeckLinkAudioInputPacket *audioPacket); |
| |
| END_INTERFACE |
| } IDeckLinkInputCallbackVtbl; |
| |
| interface IDeckLinkInputCallback |
| { |
| CONST_VTBL struct IDeckLinkInputCallbackVtbl *lpVtbl; |
| }; |
| |
| |
| |
| #ifdef COBJMACROS |
| |
| |
| #define IDeckLinkInputCallback_QueryInterface(This,riid,ppvObject) \ |
| ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) |
| |
| #define IDeckLinkInputCallback_AddRef(This) \ |
| ( (This)->lpVtbl -> AddRef(This) ) |
| |
| #define IDeckLinkInputCallback_Release(This) \ |
| ( (This)->lpVtbl -> Release(This) ) |
| |
| |
| #define IDeckLinkInputCallback_VideoInputFormatChanged(This,notificationEvents,newDisplayMode,detectedSignalFlags) \ |
| ( (This)->lpVtbl -> VideoInputFormatChanged(This,notificationEvents,newDisplayMode,detectedSignalFlags) ) |
| |
| #define IDeckLinkInputCallback_VideoInputFrameArrived(This,videoFrame,audioPacket) \ |
| ( (This)->lpVtbl -> VideoInputFrameArrived(This,videoFrame,audioPacket) ) |
| |
| #endif /* COBJMACROS */ |
| |
| |
| #endif /* C style interface */ |
| |
| |
| |
| |
| #endif /* __IDeckLinkInputCallback_INTERFACE_DEFINED__ */ |
| |
| |
| #ifndef __IDeckLinkMemoryAllocator_INTERFACE_DEFINED__ |
| #define __IDeckLinkMemoryAllocator_INTERFACE_DEFINED__ |
| |
| /* interface IDeckLinkMemoryAllocator */ |
| /* [helpstring][local][uuid][object] */ |
| |
| |
| EXTERN_C const IID IID_IDeckLinkMemoryAllocator; |
| |
| #if defined(__cplusplus) && !defined(CINTERFACE) |
| |
| MIDL_INTERFACE("B36EB6E7-9D29-4AA8-92EF-843B87A289E8") |
| IDeckLinkMemoryAllocator : public IUnknown |
| { |
| public: |
| virtual HRESULT STDMETHODCALLTYPE AllocateBuffer( |
| /* [in] */ unsigned long bufferSize, |
| /* [out] */ void **allocatedBuffer) = 0; |
| |
| virtual HRESULT STDMETHODCALLTYPE ReleaseBuffer( |
| /* [in] */ void *buffer) = 0; |
| |
| virtual HRESULT STDMETHODCALLTYPE Commit( void) = 0; |
| |
| virtual HRESULT STDMETHODCALLTYPE Decommit( void) = 0; |
| |
| }; |
| |
| #else /* C style interface */ |
| |
| typedef struct IDeckLinkMemoryAllocatorVtbl |
| { |
| BEGIN_INTERFACE |
| |
| HRESULT ( STDMETHODCALLTYPE *QueryInterface )( |
| IDeckLinkMemoryAllocator * This, |
| /* [in] */ REFIID riid, |
| /* [iid_is][out] */ |
| __RPC__deref_out void **ppvObject); |
| |
| ULONG ( STDMETHODCALLTYPE *AddRef )( |
| IDeckLinkMemoryAllocator * This); |
| |
| ULONG ( STDMETHODCALLTYPE *Release )( |
| IDeckLinkMemoryAllocator * This); |
| |
| HRESULT ( STDMETHODCALLTYPE *AllocateBuffer )( |
| IDeckLinkMemoryAllocator * This, |
| /* [in] */ unsigned long bufferSize, |
| /* [out] */ void **allocatedBuffer); |
| |
| HRESULT ( STDMETHODCALLTYPE *ReleaseBuffer )( |
| IDeckLinkMemoryAllocator * This, |
| /* [in] */ void *buffer); |
| |
| HRESULT ( STDMETHODCALLTYPE *Commit )( |
| IDeckLinkMemoryAllocator * This); |
| |
| HRESULT ( STDMETHODCALLTYPE *Decommit )( |
| IDeckLinkMemoryAllocator * This); |
| |
| END_INTERFACE |
| } IDeckLinkMemoryAllocatorVtbl; |
| |
| interface IDeckLinkMemoryAllocator |
| { |
| CONST_VTBL struct IDeckLinkMemoryAllocatorVtbl *lpVtbl; |
| }; |
| |
| |
| |
| #ifdef COBJMACROS |
| |
| |
| #define IDeckLinkMemoryAllocator_QueryInterface(This,riid,ppvObject) \ |
| ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) |
| |
| #define IDeckLinkMemoryAllocator_AddRef(This) \ |
| ( (This)->lpVtbl -> AddRef(This) ) |
| |
| #define IDeckLinkMemoryAllocator_Release(This) \ |
| ( (This)->lpVtbl -> Release(This) ) |
| |
| |
| #define IDeckLinkMemoryAllocator_AllocateBuffer(This,bufferSize,allocatedBuffer) \ |
| ( (This)->lpVtbl -> AllocateBuffer(This,bufferSize,allocatedBuffer) ) |
| |
| #define IDeckLinkMemoryAllocator_ReleaseBuffer(This,buffer) \ |
| ( (This)->lpVtbl -> ReleaseBuffer(This,buffer) ) |
| |
| #define IDeckLinkMemoryAllocator_Commit(This) \ |
| ( (This)->lpVtbl -> Commit(This) ) |
| |
| #define IDeckLinkMemoryAllocator_Decommit(This) \ |
| ( (This)->lpVtbl -> Decommit(This) ) |
| |
| #endif /* COBJMACROS */ |
| |
| |
| #endif /* C style interface */ |
| |
| |
| |
| |
| #endif /* __IDeckLinkMemoryAllocator_INTERFACE_DEFINED__ */ |
| |
| |
| #ifndef __IDeckLinkAudioOutputCallback_INTERFACE_DEFINED__ |
| #define __IDeckLinkAudioOutputCallback_INTERFACE_DEFINED__ |
| |
| /* interface IDeckLinkAudioOutputCallback */ |
| /* [helpstring][local][uuid][object] */ |
| |
| |
| EXTERN_C const IID IID_IDeckLinkAudioOutputCallback; |
| |
| #if defined(__cplusplus) && !defined(CINTERFACE) |
| |
| MIDL_INTERFACE("403C681B-7F46-4A12-B993-2BB127084EE6") |
| IDeckLinkAudioOutputCallback : public IUnknown |
| { |
| public: |
| virtual HRESULT STDMETHODCALLTYPE RenderAudioSamples( |
| /* [in] */ BOOL preroll) = 0; |
| |
| }; |
| |
| #else /* C style interface */ |
| |
| typedef struct IDeckLinkAudioOutputCallbackVtbl |
| { |
| BEGIN_INTERFACE |
| |
| HRESULT ( STDMETHODCALLTYPE *QueryInterface )( |
| IDeckLinkAudioOutputCallback * This, |
| /* [in] */ REFIID riid, |
| /* [iid_is][out] */ |
| __RPC__deref_out void **ppvObject); |
| |
| ULONG ( STDMETHODCALLTYPE *AddRef )( |
| IDeckLinkAudioOutputCallback * This); |
| |
| ULONG ( STDMETHODCALLTYPE *Release )( |
| IDeckLinkAudioOutputCallback * This); |
| |
| HRESULT ( STDMETHODCALLTYPE *RenderAudioSamples )( |
| IDeckLinkAudioOutputCallback * This, |
| /* [in] */ BOOL preroll); |
| |
| END_INTERFACE |
| } IDeckLinkAudioOutputCallbackVtbl; |
| |
| interface IDeckLinkAudioOutputCallback |
| { |
| CONST_VTBL struct IDeckLinkAudioOutputCallbackVtbl *lpVtbl; |
| }; |
| |
| |
| |
| #ifdef COBJMACROS |
| |
| |
| #define IDeckLinkAudioOutputCallback_QueryInterface(This,riid,ppvObject) \ |
| ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) |
| |
| #define IDeckLinkAudioOutputCallback_AddRef(This) \ |
| ( (This)->lpVtbl -> AddRef(This) ) |
| |
| #define IDeckLinkAudioOutputCallback_Release(This) \ |
| ( (This)->lpVtbl -> Release(This) ) |
| |
| |
| #define IDeckLinkAudioOutputCallback_RenderAudioSamples(This,preroll) \ |
| ( (This)->lpVtbl -> RenderAudioSamples(This,preroll) ) |
| |
| #endif /* COBJMACROS */ |
| |
| |
| #endif /* C style interface */ |
| |
| |
| |
| |
| #endif /* __IDeckLinkAudioOutputCallback_INTERFACE_DEFINED__ */ |
| |
| |
| #ifndef __IDeckLinkIterator_INTERFACE_DEFINED__ |
| #define __IDeckLinkIterator_INTERFACE_DEFINED__ |
| |
| /* interface IDeckLinkIterator */ |
| /* [helpstring][uuid][object] */ |
| |
| |
| EXTERN_C const IID IID_IDeckLinkIterator; |
| |
| #if defined(__cplusplus) && !defined(CINTERFACE) |
| |
| MIDL_INTERFACE("74E936FC-CC28-4A67-81A0-1E94E52D4E69") |
| IDeckLinkIterator : public IUnknown |
| { |
| public: |
| virtual HRESULT STDMETHODCALLTYPE Next( |
| /* [out] */ IDeckLink **deckLinkInstance) = 0; |
| |
| }; |
| |
| #else /* C style interface */ |
| |
| typedef struct IDeckLinkIteratorVtbl |
| { |
| BEGIN_INTERFACE |
| |
| HRESULT ( STDMETHODCALLTYPE *QueryInterface )( |
| IDeckLinkIterator * This, |
| /* [in] */ REFIID riid, |
| /* [iid_is][out] */ |
| __RPC__deref_out void **ppvObject); |
| |
| ULONG ( STDMETHODCALLTYPE *AddRef )( |
| IDeckLinkIterator * This); |
| |
| ULONG ( STDMETHODCALLTYPE *Release )( |
| IDeckLinkIterator * This); |
| |
| HRESULT ( STDMETHODCALLTYPE *Next )( |
| IDeckLinkIterator * This, |
| /* [out] */ IDeckLink **deckLinkInstance); |
| |
| END_INTERFACE |
| } IDeckLinkIteratorVtbl; |
| |
| interface IDeckLinkIterator |
| { |
| CONST_VTBL struct IDeckLinkIteratorVtbl *lpVtbl; |
| }; |
| |
| |
| |
| #ifdef COBJMACROS |
| |
| |
| #define IDeckLinkIterator_QueryInterface(This,riid,ppvObject) \ |
| ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) |
| |
| #define IDeckLinkIterator_AddRef(This) \ |
| ( (This)->lpVtbl -> AddRef(This) ) |
| |
| #define IDeckLinkIterator_Release(This) \ |
| ( (This)->lpVtbl -> Release(This) ) |
| |
| |
| #define IDeckLinkIterator_Next(This,deckLinkInstance) \ |
| ( (This)->lpVtbl -> Next(This,deckLinkInstance) ) |
| |
| #endif /* COBJMACROS */ |
| |
| |
| #endif /* C style interface */ |
| |
| |
| |
| |
| #endif /* __IDeckLinkIterator_INTERFACE_DEFINED__ */ |
| |
| |
| #ifndef __IDeckLinkAPIInformation_INTERFACE_DEFINED__ |
| #define __IDeckLinkAPIInformation_INTERFACE_DEFINED__ |
| |
| /* interface IDeckLinkAPIInformation */ |
| /* [helpstring][uuid][object] */ |
| |
| |
| EXTERN_C const IID IID_IDeckLinkAPIInformation; |
| |
| #if defined(__cplusplus) && !defined(CINTERFACE) |
| |
| MIDL_INTERFACE("7BEA3C68-730D-4322-AF34-8A7152B532A4") |
| IDeckLinkAPIInformation : public IUnknown |
| { |
| public: |
| virtual HRESULT STDMETHODCALLTYPE GetFlag( |
| /* [in] */ BMDDeckLinkAPIInformationID cfgID, |
| /* [out] */ BOOL *value) = 0; |
| |
| virtual HRESULT STDMETHODCALLTYPE GetInt( |
| /* [in] */ BMDDeckLinkAPIInformationID cfgID, |
| /* [out] */ LONGLONG *value) = 0; |
| |
| virtual HRESULT STDMETHODCALLTYPE GetFloat( |
| /* [in] */ BMDDeckLinkAPIInformationID cfgID, |
| /* [out] */ double *value) = 0; |
| |
| virtual HRESULT STDMETHODCALLTYPE GetString( |
| /* [in] */ BMDDeckLinkAPIInformationID cfgID, |
| /* [out] */ BSTR *value) = 0; |
| |
| }; |
| |
| #else /* C style interface */ |
| |
| typedef struct IDeckLinkAPIInformationVtbl |
| { |
| BEGIN_INTERFACE |
| |
| HRESULT ( STDMETHODCALLTYPE *QueryInterface )( |
| IDeckLinkAPIInformation * This, |
| /* [in] */ REFIID riid, |
| /* [iid_is][out] */ |
| __RPC__deref_out void **ppvObject); |
| |
| ULONG ( STDMETHODCALLTYPE *AddRef )( |
| IDeckLinkAPIInformation * This); |
| |
| ULONG ( STDMETHODCALLTYPE *Release )( |
| IDeckLinkAPIInformation * This); |
| |
| HRESULT ( STDMETHODCALLTYPE *GetFlag )( |
| IDeckLinkAPIInformation * This, |
| /* [in] */ BMDDeckLinkAPIInformationID cfgID, |
| /* [out] */ BOOL *value); |
| |
| HRESULT ( STDMETHODCALLTYPE *GetInt )( |
| IDeckLinkAPIInformation * This, |
| /* [in] */ BMDDeckLinkAPIInformationID cfgID, |
| /* [out] */ LONGLONG *value); |
| |
| HRESULT ( STDMETHODCALLTYPE *GetFloat )( |
| IDeckLinkAPIInformation * This, |
| /* [in] */ BMDDeckLinkAPIInformationID cfgID, |
| /* [out] */ double *value); |
| |
| HRESULT ( STDMETHODCALLTYPE *GetString )( |
| IDeckLinkAPIInformation * This, |
| /* [in] */ BMDDeckLinkAPIInformationID cfgID, |
| /* [out] */ BSTR *value); |
| |
| END_INTERFACE |
| } IDeckLinkAPIInformationVtbl; |
| |
| interface IDeckLinkAPIInformation |
| { |
| CONST_VTBL struct IDeckLinkAPIInformationVtbl *lpVtbl; |
| }; |
| |
| |
| |
| #ifdef COBJMACROS |
| |
| |
| #define IDeckLinkAPIInformation_QueryInterface(This,riid,ppvObject) \ |
| ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) |
| |
| #define IDeckLinkAPIInformation_AddRef(This) \ |
| ( (This)->lpVtbl -> AddRef(This) ) |
| |
| #define IDeckLinkAPIInformation_Release(This) \ |
| ( (This)->lpVtbl -> Release(This) ) |
| |
| |
| #define IDeckLinkAPIInformation_GetFlag(This,cfgID,value) \ |
| ( (This)->lpVtbl -> GetFlag(This,cfgID,value) ) |
| |
| #define IDeckLinkAPIInformation_GetInt(This,cfgID,value) \ |
| ( (This)->lpVtbl -> GetInt(This,cfgID,value) ) |
| |
| #define IDeckLinkAPIInformation_GetFloat(This,cfgID,value) \ |
| ( (This)->lpVtbl -> GetFloat(This,cfgID,value) ) |
| |
| #define IDeckLinkAPIInformation_GetString(This,cfgID,value) \ |
| ( (This)->lpVtbl -> GetString(This,cfgID,value) ) |
| |
| #endif /* COBJMACROS */ |
| |
| |
| #endif /* C style interface */ |
| |
| |
| |
| |
| #endif /* __IDeckLinkAPIInformation_INTERFACE_DEFINED__ */ |
| |
| |
| #ifndef __IDeckLinkDisplayModeIterator_INTERFACE_DEFINED__ |
| #define __IDeckLinkDisplayModeIterator_INTERFACE_DEFINED__ |
| |
| /* interface IDeckLinkDisplayModeIterator */ |
| /* [helpstring][uuid][object] */ |
| |
| |
| EXTERN_C const IID IID_IDeckLinkDisplayModeIterator; |
| |
| #if defined(__cplusplus) && !defined(CINTERFACE) |
| |
| MIDL_INTERFACE("9C88499F-F601-4021-B80B-032E4EB41C35") |
| IDeckLinkDisplayModeIterator : public IUnknown |
| { |
| public: |
| virtual HRESULT STDMETHODCALLTYPE Next( |
| /* [out] */ IDeckLinkDisplayMode **deckLinkDisplayMode) = 0; |
| |
| }; |
| |
| #else /* C style interface */ |
| |
| typedef struct IDeckLinkDisplayModeIteratorVtbl |
| { |
| BEGIN_INTERFACE |
| |
| HRESULT ( STDMETHODCALLTYPE *QueryInterface )( |
| IDeckLinkDisplayModeIterator * This, |
| /* [in] */ REFIID riid, |
| /* [iid_is][out] */ |
| __RPC__deref_out void **ppvObject); |
| |
| ULONG ( STDMETHODCALLTYPE *AddRef )( |
| IDeckLinkDisplayModeIterator * This); |
| |
| ULONG ( STDMETHODCALLTYPE *Release )( |
| IDeckLinkDisplayModeIterator * This); |
| |
| HRESULT ( STDMETHODCALLTYPE *Next )( |
| IDeckLinkDisplayModeIterator * This, |
| /* [out] */ IDeckLinkDisplayMode **deckLinkDisplayMode); |
| |
| END_INTERFACE |
| } IDeckLinkDisplayModeIteratorVtbl; |
| |
| interface IDeckLinkDisplayModeIterator |
| { |
| CONST_VTBL struct IDeckLinkDisplayModeIteratorVtbl *lpVtbl; |
| }; |
| |
| |
| |
| #ifdef COBJMACROS |
| |
| |
| #define IDeckLinkDisplayModeIterator_QueryInterface(This,riid,ppvObject) \ |
| ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) |
| |
| #define IDeckLinkDisplayModeIterator_AddRef(This) \ |
| ( (This)->lpVtbl -> AddRef(This) ) |
| |
| #define IDeckLinkDisplayModeIterator_Release(This) \ |
| ( (This)->lpVtbl -> Release(This) ) |
| |
| |
| #define IDeckLinkDisplayModeIterator_Next(This,deckLinkDisplayMode) \ |
| ( (This)->lpVtbl -> Next(This,deckLinkDisplayMode) ) |
| |
| #endif /* COBJMACROS */ |
| |
| |
| #endif /* C style interface */ |
| |
| |
| |
| |
| #endif /* __IDeckLinkDisplayModeIterator_INTERFACE_DEFINED__ */ |
| |
| |
| #ifndef __IDeckLinkDisplayMode_INTERFACE_DEFINED__ |
| #define __IDeckLinkDisplayMode_INTERFACE_DEFINED__ |
| |
| /* interface IDeckLinkDisplayMode */ |
| /* [helpstring][uuid][object] */ |
| |
| |
| EXTERN_C const IID IID_IDeckLinkDisplayMode; |
| |
| #if defined(__cplusplus) && !defined(CINTERFACE) |
| |
| MIDL_INTERFACE("3EB2C1AB-0A3D-4523-A3AD-F40D7FB14E78") |
| IDeckLinkDisplayMode : public IUnknown |
| { |
| public: |
| virtual HRESULT STDMETHODCALLTYPE GetName( |
| /* [out] */ BSTR *name) = 0; |
| |
| virtual BMDDisplayMode STDMETHODCALLTYPE GetDisplayMode( void) = 0; |
| |
| virtual long STDMETHODCALLTYPE GetWidth( void) = 0; |
| |
| virtual long STDMETHODCALLTYPE GetHeight( void) = 0; |
| |
| virtual HRESULT STDMETHODCALLTYPE GetFrameRate( |
| /* [out] */ BMDTimeValue *frameDuration, |
| /* [out] */ BMDTimeScale *timeScale) = 0; |
| |
| virtual BMDFieldDominance STDMETHODCALLTYPE GetFieldDominance( void) = 0; |
| |
| virtual BMDDisplayModeFlags STDMETHODCALLTYPE GetFlags( void) = 0; |
| |
| }; |
| |
| #else /* C style interface */ |
| |
| typedef struct IDeckLinkDisplayModeVtbl |
| { |
| BEGIN_INTERFACE |
| |
| HRESULT ( STDMETHODCALLTYPE *QueryInterface )( |
| IDeckLinkDisplayMode * This, |
| /* [in] */ REFIID riid, |
| /* [iid_is][out] */ |
| __RPC__deref_out void **ppvObject); |
| |
| ULONG ( STDMETHODCALLTYPE *AddRef )( |
| IDeckLinkDisplayMode * This); |
| |
| ULONG ( STDMETHODCALLTYPE *Release )( |
| IDeckLinkDisplayMode * This); |
| |
| HRESULT ( STDMETHODCALLTYPE *GetName )( |
| IDeckLinkDisplayMode * This, |
| /* [out] */ BSTR *name); |
| |
| BMDDisplayMode ( STDMETHODCALLTYPE *GetDisplayMode )( |
| IDeckLinkDisplayMode * This); |
| |
| long ( STDMETHODCALLTYPE *GetWidth )( |
| IDeckLinkDisplayMode * This); |
| |
| long ( STDMETHODCALLTYPE *GetHeight )( |
| IDeckLinkDisplayMode * This); |
| |
| HRESULT ( STDMETHODCALLTYPE *GetFrameRate )( |
| IDeckLinkDisplayMode * This, |
| /* [out] */ BMDTimeValue *frameDuration, |
| /* [out] */ BMDTimeScale *timeScale); |
| |
| BMDFieldDominance ( STDMETHODCALLTYPE *GetFieldDominance )( |
| IDeckLinkDisplayMode * This); |
| |
| BMDDisplayModeFlags ( STDMETHODCALLTYPE *GetFlags )( |
| IDeckLinkDisplayMode * This); |
| |
| END_INTERFACE |
| } IDeckLinkDisplayModeVtbl; |
| |
| interface IDeckLinkDisplayMode |
| { |
| CONST_VTBL struct IDeckLinkDisplayModeVtbl *lpVtbl; |
| }; |
| |
| |
| |
| #ifdef COBJMACROS |
| |
| |
| #define IDeckLinkDisplayMode_QueryInterface(This,riid,ppvObject) \ |
| ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) |
| |
| #define IDeckLinkDisplayMode_AddRef(This) \ |
| ( (This)->lpVtbl -> AddRef(This) ) |
| |
| #define IDeckLinkDisplayMode_Release(This) \ |
| ( (This)->lpVtbl -> Release(This) ) |
| |
| |
| #define IDeckLinkDisplayMode_GetName(This,name) \ |
| ( (This)->lpVtbl -> GetName(This,name) ) |
| |
| #define IDeckLinkDisplayMode_GetDisplayMode(This) \ |
| ( (This)->lpVtbl -> GetDisplayMode(This) ) |
| |
| #define IDeckLinkDisplayMode_GetWidth(This) \ |
| ( (This)->lpVtbl -> GetWidth(This) ) |
| |
| #define IDeckLinkDisplayMode_GetHeight(This) \ |
| ( (This)->lpVtbl -> GetHeight(This) ) |
| |
| #define IDeckLinkDisplayMode_GetFrameRate(This,frameDuration,timeScale) \ |
| ( (This)->lpVtbl -> GetFrameRate(This,frameDuration,timeScale) ) |
| |
| #define IDeckLinkDisplayMode_GetFieldDominance(This) \ |
| ( (This)->lpVtbl -> GetFieldDominance(This) ) |
| |
| #define IDeckLinkDisplayMode_GetFlags(This) \ |
| ( (This)->lpVtbl -> GetFlags(This) ) |
| |
| #endif /* COBJMACROS */ |
| |
| |
| #endif /* C style interface */ |
| |
| |
| |
| |
| #endif /* __IDeckLinkDisplayMode_INTERFACE_DEFINED__ */ |
| |
| |
| #ifndef __IDeckLink_INTERFACE_DEFINED__ |
| #define __IDeckLink_INTERFACE_DEFINED__ |
| |
| /* interface IDeckLink */ |
| /* [helpstring][uuid][object] */ |
| |
| |
| EXTERN_C const IID IID_IDeckLink; |
| |
| #if defined(__cplusplus) && !defined(CINTERFACE) |
| |
| MIDL_INTERFACE("62BFF75D-6569-4E55-8D4D-66AA03829ABC") |
| IDeckLink : public IUnknown |
| { |
| public: |
| virtual HRESULT STDMETHODCALLTYPE GetModelName( |
| /* [out] */ BSTR *modelName) = 0; |
| |
| }; |
| |
| #else /* C style interface */ |
| |
| typedef struct IDeckLinkVtbl |
| { |
| BEGIN_INTERFACE |
| |
| HRESULT ( STDMETHODCALLTYPE *QueryInterface )( |
| IDeckLink * This, |
| /* [in] */ REFIID riid, |
| /* [iid_is][out] */ |
| __RPC__deref_out void **ppvObject); |
| |
| ULONG ( STDMETHODCALLTYPE *AddRef )( |
| IDeckLink * This); |
| |
| ULONG ( STDMETHODCALLTYPE *Release )( |
| IDeckLink * This); |
| |
| HRESULT ( STDMETHODCALLTYPE *GetModelName )( |
| IDeckLink * This, |
| /* [out] */ BSTR *modelName); |
| |
| END_INTERFACE |
| } IDeckLinkVtbl; |
| |
| interface IDeckLink |
| { |
| CONST_VTBL struct IDeckLinkVtbl *lpVtbl; |
| }; |
| |
| |
| |
| #ifdef COBJMACROS |
| |
| |
| #define IDeckLink_QueryInterface(This,riid,ppvObject) \ |
| ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) |
| |
| #define IDeckLink_AddRef(This) \ |
| ( (This)->lpVtbl -> AddRef(This) ) |
| |
| #define IDeckLink_Release(This) \ |
| ( (This)->lpVtbl -> Release(This) ) |
| |
| |
| #define IDeckLink_GetModelName(This,modelName) \ |
| ( (This)->lpVtbl -> GetModelName(This,modelName) ) |
| |
| #endif /* COBJMACROS */ |
| |
| |
| #endif /* C style interface */ |
| |
| |
| |
| |
| #endif /* __IDeckLink_INTERFACE_DEFINED__ */ |
| |
| |
| #ifndef __IDeckLinkOutput_INTERFACE_DEFINED__ |
| #define __IDeckLinkOutput_INTERFACE_DEFINED__ |
| |
| /* interface IDeckLinkOutput */ |
| /* [helpstring][local][uuid][object] */ |
| |
| |
| EXTERN_C const IID IID_IDeckLinkOutput; |
| |
| #if defined(__cplusplus) && !defined(CINTERFACE) |
| |
| MIDL_INTERFACE("A3EF0963-0862-44ED-92A9-EE89ABF431C7") |
| IDeckLinkOutput : public IUnknown |
| { |
| public: |
| virtual HRESULT STDMETHODCALLTYPE DoesSupportVideoMode( |
| /* [in] */ BMDDisplayMode displayMode, |
| /* [in] */ BMDPixelFormat pixelFormat, |
| /* [in] */ BMDVideoOutputFlags flags, |
| /* [out] */ BMDDisplayModeSupport *result, |
| /* [out] */ IDeckLinkDisplayMode **resultDisplayMode) = 0; |
| |
| virtual HRESULT STDMETHODCALLTYPE GetDisplayModeIterator( |
| /* [out] */ IDeckLinkDisplayModeIterator **iterator) = 0; |
| |
| virtual HRESULT STDMETHODCALLTYPE SetScreenPreviewCallback( |
| /* [in] */ IDeckLinkScreenPreviewCallback *previewCallback) = 0; |
| |
| virtual HRESULT STDMETHODCALLTYPE EnableVideoOutput( |
| /* [in] */ BMDDisplayMode displayMode, |
| /* [in] */ BMDVideoOutputFlags flags) = 0; |
| |
| virtual HRESULT STDMETHODCALLTYPE DisableVideoOutput( void) = 0; |
| |
| virtual HRESULT STDMETHODCALLTYPE SetVideoOutputFrameMemoryAllocator( |
| /* [in] */ IDeckLinkMemoryAllocator *theAllocator) = 0; |
| |
| virtual HRESULT STDMETHODCALLTYPE CreateVideoFrame( |
| /* [in] */ long width, |
| /* [in] */ long height, |
| /* [in] */ long rowBytes, |
| /* [in] */ BMDPixelFormat pixelFormat, |
| /* [in] */ BMDFrameFlags flags, |
| /* [out] */ IDeckLinkMutableVideoFrame **outFrame) = 0; |
| |
| virtual HRESULT STDMETHODCALLTYPE CreateAncillaryData( |
| /* [in] */ BMDPixelFormat pixelFormat, |
| /* [out] */ IDeckLinkVideoFrameAncillary **outBuffer) = 0; |
| |
| virtual HRESULT STDMETHODCALLTYPE DisplayVideoFrameSync( |
| /* [in] */ IDeckLinkVideoFrame *theFrame) = 0; |
| |
| virtual HRESULT STDMETHODCALLTYPE ScheduleVideoFrame( |
| /* [in] */ IDeckLinkVideoFrame *theFrame, |
| /* [in] */ BMDTimeValue displayTime, |
| /* [in] */ BMDTimeValue displayDuration, |
| /* [in] */ BMDTimeScale timeScale) = 0; |
| |
| virtual HRESULT STDMETHODCALLTYPE SetScheduledFrameCompletionCallback( |
| /* [in] */ IDeckLinkVideoOutputCallback *theCallback) = 0; |
| |
| virtual HRESULT STDMETHODCALLTYPE GetBufferedVideoFrameCount( |
| /* [out] */ unsigned long *bufferedFrameCount) = 0; |
| |
| virtual HRESULT STDMETHODCALLTYPE EnableAudioOutput( |
| /* [in] */ BMDAudioSampleRate sampleRate, |
| /* [in] */ BMDAudioSampleType sampleType, |
| /* [in] */ unsigned long channelCount, |
| /* [in] */ BMDAudioOutputStreamType streamType) = 0; |
| |
| virtual HRESULT STDMETHODCALLTYPE DisableAudioOutput( void) = 0; |
| |
| virtual HRESULT STDMETHODCALLTYPE WriteAudioSamplesSync( |
| /* [in] */ void *buffer, |
| /* [in] */ unsigned long sampleFrameCount, |
| /* [out] */ unsigned long *sampleFramesWritten) = 0; |
| |
| virtual HRESULT STDMETHODCALLTYPE BeginAudioPreroll( void) = 0; |
| |
| virtual HRESULT STDMETHODCALLTYPE EndAudioPreroll( void) = 0; |
| |
| virtual HRESULT STDMETHODCALLTYPE ScheduleAudioSamples( |
| /* [in] */ void *buffer, |
| /* [in] */ unsigned long sampleFrameCount, |
| /* [in] */ BMDTimeValue streamTime, |
| /* [in] */ BMDTimeScale timeScale, |
| /* [out] */ unsigned long *sampleFramesWritten) = 0; |
| |
| virtual HRESULT STDMETHODCALLTYPE GetBufferedAudioSampleFrameCount( |
| /* [out] */ unsigned long *bufferedSampleFrameCount) = 0; |
| |
| virtual HRESULT STDMETHODCALLTYPE FlushBufferedAudioSamples( void) = 0; |
| |
| virtual HRESULT STDMETHODCALLTYPE SetAudioCallback( |
| /* [in] */ IDeckLinkAudioOutputCallback *theCallback) = 0; |
| |
| virtual HRESULT STDMETHODCALLTYPE StartScheduledPlayback( |
| /* [in] */ BMDTimeValue playbackStartTime, |
| /* [in] */ BMDTimeScale timeScale, |
| /* [in] */ double playbackSpeed) = 0; |
| |
| virtual HRESULT STDMETHODCALLTYPE StopScheduledPlayback( |
| /* [in] */ BMDTimeValue stopPlaybackAtTime, |
| /* [out] */ BMDTimeValue *actualStopTime, |
| /* [in] */ BMDTimeScale timeScale) = 0; |
| |
| virtual HRESULT STDMETHODCALLTYPE IsScheduledPlaybackRunning( |
| /* [out] */ BOOL *active) = 0; |
| |
| virtual HRESULT STDMETHODCALLTYPE GetScheduledStreamTime( |
| /* [in] */ BMDTimeScale desiredTimeScale, |
| /* [out] */ BMDTimeValue *streamTime, |
| /* [out] */ double *playbackSpeed) = 0; |
| |
| virtual HRESULT STDMETHODCALLTYPE GetReferenceStatus( |
| /* [out] */ BMDReferenceStatus *referenceStatus) = 0; |
| |
| virtual HRESULT STDMETHODCALLTYPE GetHardwareReferenceClock( |
| /* [in] */ BMDTimeScale desiredTimeScale, |
| /* [out] */ BMDTimeValue *hardwareTime, |
| /* [out] */ BMDTimeValue *timeInFrame, |
| /* [out] */ BMDTimeValue *ticksPerFrame) = 0; |
| |
| }; |
| |
| #else /* C style interface */ |
| |
| typedef struct IDeckLinkOutputVtbl |
| { |
| BEGIN_INTERFACE |
| |
| HRESULT ( STDMETHODCALLTYPE *QueryInterface )( |
| IDeckLinkOutput * This, |
| /* [in] */ REFIID riid, |
| /* [iid_is][out] */ |
| __RPC__deref_out void **ppvObject); |
| |
| ULONG ( STDMETHODCALLTYPE *AddRef )( |
| IDeckLinkOutput * This); |
| |
| ULONG ( STDMETHODCALLTYPE *Release )( |
| IDeckLinkOutput * This); |
| |
| HRESULT ( STDMETHODCALLTYPE *DoesSupportVideoMode )( |
| IDeckLinkOutput * This, |
| /* [in] */ BMDDisplayMode displayMode, |
| /* [in] */ BMDPixelFormat pixelFormat, |
| /* [in] */ BMDVideoOutputFlags flags, |
| /* [out] */ BMDDisplayModeSupport *result, |
| /* [out] */ IDeckLinkDisplayMode **resultDisplayMode); |
| |
| HRESULT ( STDMETHODCALLTYPE *GetDisplayModeIterator )( |
| IDeckLinkOutput * This, |
| /* [out] */ IDeckLinkDisplayModeIterator **iterator); |
| |
| HRESULT ( STDMETHODCALLTYPE *SetScreenPreviewCallback )( |
| IDeckLinkOutput * This, |
| /* [in] */ IDeckLinkScreenPreviewCallback *previewCallback); |
| |
| HRESULT ( STDMETHODCALLTYPE *EnableVideoOutput )( |
| IDeckLinkOutput * This, |
| /* [in] */ BMDDisplayMode displayMode, |
| /* [in] */ BMDVideoOutputFlags flags); |
| |
| HRESULT ( STDMETHODCALLTYPE *DisableVideoOutput )( |
| IDeckLinkOutput * This); |
| |
| HRESULT ( STDMETHODCALLTYPE *SetVideoOutputFrameMemoryAllocator )( |
| IDeckLinkOutput * This, |
| /* [in] */ IDeckLinkMemoryAllocator *theAllocator); |
| |
| HRESULT ( STDMETHODCALLTYPE *CreateVideoFrame )( |
| IDeckLinkOutput * This, |
| /* [in] */ long width, |
| /* [in] */ long height, |
| /* [in] */ long rowBytes, |
| /* [in] */ BMDPixelFormat pixelFormat, |
| /* [in] */ BMDFrameFlags flags, |
| /* [out] */ IDeckLinkMutableVideoFrame **outFrame); |
| |
| HRESULT ( STDMETHODCALLTYPE *CreateAncillaryData )( |
| IDeckLinkOutput * This, |
| /* [in] */ BMDPixelFormat pixelFormat, |
| /* [out] */ IDeckLinkVideoFrameAncillary **outBuffer); |
| |
| HRESULT ( STDMETHODCALLTYPE *DisplayVideoFrameSync )( |
| IDeckLinkOutput * This, |
| /* [in] */ IDeckLinkVideoFrame *theFrame); |
| |
| HRESULT ( STDMETHODCALLTYPE *ScheduleVideoFrame )( |
| IDeckLinkOutput * This, |
| /* [in] */ IDeckLinkVideoFrame *theFrame, |
| /* [in] */ BMDTimeValue displayTime, |
| /* [in] */ BMDTimeValue displayDuration, |
| /* [in] */ BMDTimeScale timeScale); |
| |
| HRESULT ( STDMETHODCALLTYPE *SetScheduledFrameCompletionCallback )( |
| IDeckLinkOutput * This, |
| /* [in] */ IDeckLinkVideoOutputCallback *theCallback); |
| |
| HRESULT ( STDMETHODCALLTYPE *GetBufferedVideoFrameCount )( |
| IDeckLinkOutput * This, |
| /* [out] */ unsigned long *bufferedFrameCount); |
| |
| HRESULT ( STDMETHODCALLTYPE *EnableAudioOutput )( |
| IDeckLinkOutput * This, |
| /* [in] */ BMDAudioSampleRate sampleRate, |
| /* [in] */ BMDAudioSampleType sampleType, |
| /* [in] */ unsigned long channelCount, |
| /* [in] */ BMDAudioOutputStreamType streamType); |
| |
| HRESULT ( STDMETHODCALLTYPE *DisableAudioOutput )( |
| IDeckLinkOutput * This); |
| |
| HRESULT ( STDMETHODCALLTYPE *WriteAudioSamplesSync )( |
| IDeckLinkOutput * This, |
| /* [in] */ void *buffer, |
| /* [in] */ unsigned long sampleFrameCount, |
| /* [out] */ unsigned long *sampleFramesWritten); |
| |
| HRESULT ( STDMETHODCALLTYPE *BeginAudioPreroll )( |
| IDeckLinkOutput * This); |
| |
| HRESULT ( STDMETHODCALLTYPE *EndAudioPreroll )( |
| IDeckLinkOutput * This); |
| |
| HRESULT ( STDMETHODCALLTYPE *ScheduleAudioSamples )( |
| IDeckLinkOutput * This, |
| /* [in] */ void *buffer, |
| /* [in] */ unsigned long sampleFrameCount, |
| /* [in] */ BMDTimeValue streamTime, |
| /* [in] */ BMDTimeScale timeScale, |
| /* [out] */ unsigned long *sampleFramesWritten); |
| |
| HRESULT ( STDMETHODCALLTYPE *GetBufferedAudioSampleFrameCount )( |
| IDeckLinkOutput * This, |
| /* [out] */ unsigned long *bufferedSampleFrameCount); |
| |
| HRESULT ( STDMETHODCALLTYPE *FlushBufferedAudioSamples )( |
| IDeckLinkOutput * This); |
| |
| HRESULT ( STDMETHODCALLTYPE *SetAudioCallback )( |
| IDeckLinkOutput * This, |
| /* [in] */ IDeckLinkAudioOutputCallback *theCallback); |
| |
| HRESULT ( STDMETHODCALLTYPE *StartScheduledPlayback )( |
| IDeckLinkOutput * This, |
| /* [in] */ BMDTimeValue playbackStartTime, |
| /* [in] */ BMDTimeScale timeScale, |
| /* [in] */ double playbackSpeed); |
| |
| HRESULT ( STDMETHODCALLTYPE *StopScheduledPlayback )( |
| IDeckLinkOutput * This, |
| /* [in] */ BMDTimeValue stopPlaybackAtTime, |
| /* [out] */ BMDTimeValue *actualStopTime, |
| /* [in] */ BMDTimeScale timeScale); |
| |
| HRESULT ( STDMETHODCALLTYPE *IsScheduledPlaybackRunning )( |
| IDeckLinkOutput * This, |
| /* [out] */ BOOL *active); |
| |
| HRESULT ( STDMETHODCALLTYPE *GetScheduledStreamTime )( |
| IDeckLinkOutput * This, |
| /* [in] */ BMDTimeScale desiredTimeScale, |
| /* [out] */ BMDTimeValue *streamTime, |
| /* [out] */ double *playbackSpeed); |
| |
| HRESULT ( STDMETHODCALLTYPE *GetReferenceStatus )( |
| IDeckLinkOutput * This, |
| /* [out] */ BMDReferenceStatus *referenceStatus); |
| |
| HRESULT ( STDMETHODCALLTYPE *GetHardwareReferenceClock )( |
| IDeckLinkOutput * This, |
| /* [in] */ BMDTimeScale desiredTimeScale, |
| /* [out] */ BMDTimeValue *hardwareTime, |
| /* [out] */ BMDTimeValue *timeInFrame, |
| /* [out] */ BMDTimeValue *ticksPerFrame); |
| |
| END_INTERFACE |
| } IDeckLinkOutputVtbl; |
| |
| interface IDeckLinkOutput |
| { |
| CONST_VTBL struct IDeckLinkOutputVtbl *lpVtbl; |
| }; |
| |
| |
| |
| #ifdef COBJMACROS |
| |
| |
| #define IDeckLinkOutput_QueryInterface(This,riid,ppvObject) \ |
| ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) |
| |
| #define IDeckLinkOutput_AddRef(This) \ |
| ( (This)->lpVtbl -> AddRef(This) ) |
| |
| #define IDeckLinkOutput_Release(This) \ |
| ( (This)->lpVtbl -> Release(This) ) |
| |
| |
| #define IDeckLinkOutput_DoesSupportVideoMode(This,displayMode,pixelFormat,flags,result,resultDisplayMode) \ |
| ( (This)->lpVtbl -> DoesSupportVideoMode(This,displayMode,pixelFormat,flags,result,resultDisplayMode) ) |
| |
| #define IDeckLinkOutput_GetDisplayModeIterator(This,iterator) \ |
| ( (This)->lpVtbl -> GetDisplayModeIterator(This,iterator) ) |
| |
| #define IDeckLinkOutput_SetScreenPreviewCallback(This,previewCallback) \ |
| ( (This)->lpVtbl -> SetScreenPreviewCallback(This,previewCallback) ) |
| |
| #define IDeckLinkOutput_EnableVideoOutput(This,displayMode,flags) \ |
| ( (This)->lpVtbl -> EnableVideoOutput(This,displayMode,flags) ) |
| |
| #define IDeckLinkOutput_DisableVideoOutput(This) \ |
| ( (This)->lpVtbl -> DisableVideoOutput(This) ) |
| |
| #define IDeckLinkOutput_SetVideoOutputFrameMemoryAllocator(This,theAllocator) \ |
| ( (This)->lpVtbl -> SetVideoOutputFrameMemoryAllocator(This,theAllocator) ) |
| |
| #define IDeckLinkOutput_CreateVideoFrame(This,width,height,rowBytes,pixelFormat,flags,outFrame) \ |
| ( (This)->lpVtbl -> CreateVideoFrame(This,width,height,rowBytes,pixelFormat,flags,outFrame) ) |
| |
| #define IDeckLinkOutput_CreateAncillaryData(This,pixelFormat,outBuffer) \ |
| ( (This)->lpVtbl -> CreateAncillaryData(This,pixelFormat,outBuffer) ) |
| |
| #define IDeckLinkOutput_DisplayVideoFrameSync(This,theFrame) \ |
| ( (This)->lpVtbl -> DisplayVideoFrameSync(This,theFrame) ) |
| |
| #define IDeckLinkOutput_ScheduleVideoFrame(This,theFrame,displayTime,displayDuration,timeScale) \ |
| ( (This)->lpVtbl -> ScheduleVideoFrame(This,theFrame,displayTime,displayDuration,timeScale) ) |
| |
| #define IDeckLinkOutput_SetScheduledFrameCompletionCallback(This,theCallback) \ |
| ( (This)->lpVtbl -> SetScheduledFrameCompletionCallback(This,theCallback) ) |
| |
| #define IDeckLinkOutput_GetBufferedVideoFrameCount(This,bufferedFrameCount) \ |
| ( (This)->lpVtbl -> GetBufferedVideoFrameCount(This,bufferedFrameCount) ) |
| |
| #define IDeckLinkOutput_EnableAudioOutput(This,sampleRate,sampleType,channelCount,streamType) \ |
| ( (This)->lpVtbl -> EnableAudioOutput(This,sampleRate,sampleType,channelCount,streamType) ) |
| |
| #define IDeckLinkOutput_DisableAudioOutput(This) \ |
| ( (This)->lpVtbl -> DisableAudioOutput(This) ) |
| |
| #define IDeckLinkOutput_WriteAudioSamplesSync(This,buffer,sampleFrameCount,sampleFramesWritten) \ |
| ( (This)->lpVtbl -> WriteAudioSamplesSync(This,buffer,sampleFrameCount,sampleFramesWritten) ) |
| |
| #define IDeckLinkOutput_BeginAudioPreroll(This) \ |
| ( (This)->lpVtbl -> BeginAudioPreroll(This) ) |
| |
| #define IDeckLinkOutput_EndAudioPreroll(This) \ |
| ( (This)->lpVtbl -> EndAudioPreroll(This) ) |
| |
| #define IDeckLinkOutput_ScheduleAudioSamples(This,buffer,sampleFrameCount,streamTime,timeScale,sampleFramesWritten) \ |
| ( (This)->lpVtbl -> ScheduleAudioSamples(This,buffer,sampleFrameCount,streamTime,timeScale,sampleFramesWritten) ) |
| |
| #define IDeckLinkOutput_GetBufferedAudioSampleFrameCount(This,bufferedSampleFrameCount) \ |
| ( (This)->lpVtbl -> GetBufferedAudioSampleFrameCount(This,bufferedSampleFrameCount) ) |
| |
| #define IDeckLinkOutput_FlushBufferedAudioSamples(This) \ |
| ( (This)->lpVtbl -> FlushBufferedAudioSamples(This) ) |
| |
| #define IDeckLinkOutput_SetAudioCallback(This,theCallback) \ |
| ( (This)->lpVtbl -> SetAudioCallback(This,theCallback) ) |
| |
| #define IDeckLinkOutput_StartScheduledPlayback(This,playbackStartTime,timeScale,playbackSpeed) \ |
| ( (This)->lpVtbl -> StartScheduledPlayback(This,playbackStartTime,timeScale,playbackSpeed) ) |
| |
| #define IDeckLinkOutput_StopScheduledPlayback(This,stopPlaybackAtTime,actualStopTime,timeScale) \ |
| ( (This)->lpVtbl -> StopScheduledPlayback(This,stopPlaybackAtTime,actualStopTime,timeScale) ) |
| |
| #define IDeckLinkOutput_IsScheduledPlaybackRunning(This,active) \ |
| ( (This)->lpVtbl -> IsScheduledPlaybackRunning(This,active) ) |
| |
| #define IDeckLinkOutput_GetScheduledStreamTime(This,desiredTimeScale,streamTime,playbackSpeed) \ |
| ( (This)->lpVtbl -> GetScheduledStreamTime(This,desiredTimeScale,streamTime,playbackSpeed) ) |
| |
| #define IDeckLinkOutput_GetReferenceStatus(This,referenceStatus) \ |
| ( (This)->lpVtbl -> GetReferenceStatus(This,referenceStatus) ) |
| |
| #define IDeckLinkOutput_GetHardwareReferenceClock(This,desiredTimeScale,hardwareTime,timeInFrame,ticksPerFrame) \ |
| ( (This)->lpVtbl -> GetHardwareReferenceClock(This,desiredTimeScale,hardwareTime,timeInFrame,ticksPerFrame) ) |
| |
| #endif /* COBJMACROS */ |
| |
| |
| #endif /* C style interface */ |
| |
| |
| |
| |
| #endif /* __IDeckLinkOutput_INTERFACE_DEFINED__ */ |
| |
| |
| #ifndef __IDeckLinkInput_INTERFACE_DEFINED__ |
| #define __IDeckLinkInput_INTERFACE_DEFINED__ |
| |
| /* interface IDeckLinkInput */ |
| /* [helpstring][uuid][object] */ |
| |
| |
| EXTERN_C const IID IID_IDeckLinkInput; |
| |
| #if defined(__cplusplus) && !defined(CINTERFACE) |
| |
| MIDL_INTERFACE("6D40EF78-28B9-4E21-990D-95BB7750A04F") |
| IDeckLinkInput : public IUnknown |
| { |
| public: |
| virtual HRESULT STDMETHODCALLTYPE DoesSupportVideoMode( |
| /* [in] */ BMDDisplayMode displayMode, |
| /* [in] */ BMDPixelFormat pixelFormat, |
| /* [in] */ BMDVideoInputFlags flags, |
| /* [out] */ BMDDisplayModeSupport *result, |
| /* [out] */ IDeckLinkDisplayMode **resultDisplayMode) = 0; |
| |
| virtual HRESULT STDMETHODCALLTYPE GetDisplayModeIterator( |
| /* [out] */ IDeckLinkDisplayModeIterator **iterator) = 0; |
| |
| virtual HRESULT STDMETHODCALLTYPE SetScreenPreviewCallback( |
| /* [in] */ IDeckLinkScreenPreviewCallback *previewCallback) = 0; |
| |
| virtual HRESULT STDMETHODCALLTYPE EnableVideoInput( |
| /* [in] */ BMDDisplayMode displayMode, |
| /* [in] */ BMDPixelFormat pixelFormat, |
| /* [in] */ BMDVideoInputFlags flags) = 0; |
| |
| virtual HRESULT STDMETHODCALLTYPE DisableVideoInput( void) = 0; |
| |
| virtual HRESULT STDMETHODCALLTYPE GetAvailableVideoFrameCount( |
| /* [out] */ unsigned long *availableFrameCount) = 0; |
| |
| virtual HRESULT STDMETHODCALLTYPE EnableAudioInput( |
| /* [in] */ BMDAudioSampleRate sampleRate, |
| /* [in] */ BMDAudioSampleType sampleType, |
| /* [in] */ unsigned long channelCount) = 0; |
| |
| virtual HRESULT STDMETHODCALLTYPE DisableAudioInput( void) = 0; |
| |
| virtual HRESULT STDMETHODCALLTYPE GetAvailableAudioSampleFrameCount( |
| /* [out] */ unsigned long *availableSampleFrameCount) = 0; |
| |
| virtual HRESULT STDMETHODCALLTYPE StartStreams( void) = 0; |
| |
| virtual HRESULT STDMETHODCALLTYPE StopStreams( void) = 0; |
| |
| virtual HRESULT STDMETHODCALLTYPE PauseStreams( void) = 0; |
| |
| virtual HRESULT STDMETHODCALLTYPE FlushStreams( void) = 0; |
| |
| virtual HRESULT STDMETHODCALLTYPE SetCallback( |
| /* [in] */ IDeckLinkInputCallback *theCallback) = 0; |
| |
| virtual HRESULT STDMETHODCALLTYPE GetHardwareReferenceClock( |
| /* [in] */ BMDTimeScale desiredTimeScale, |
| /* [out] */ BMDTimeValue *hardwareTime, |
| /* [out] */ BMDTimeValue *timeInFrame, |
| /* [out] */ BMDTimeValue *ticksPerFrame) = 0; |
| |
| }; |
| |
| #else /* C style interface */ |
| |
| typedef struct IDeckLinkInputVtbl |
| { |
| BEGIN_INTERFACE |
| |
| HRESULT ( STDMETHODCALLTYPE *QueryInterface )( |
| IDeckLinkInput * This, |
| /* [in] */ REFIID riid, |
| /* [iid_is][out] */ |
| __RPC__deref_out void **ppvObject); |
| |
| ULONG ( STDMETHODCALLTYPE *AddRef )( |
| IDeckLinkInput * This); |
| |
| ULONG ( STDMETHODCALLTYPE *Release )( |
| IDeckLinkInput * This); |
| |
| HRESULT ( STDMETHODCALLTYPE *DoesSupportVideoMode )( |
| IDeckLinkInput * This, |
| /* [in] */ BMDDisplayMode displayMode, |
| /* [in] */ BMDPixelFormat pixelFormat, |
| /* [in] */ BMDVideoInputFlags flags, |
| /* [out] */ BMDDisplayModeSupport *result, |
| /* [out] */ IDeckLinkDisplayMode **resultDisplayMode); |
| |
| HRESULT ( STDMETHODCALLTYPE *GetDisplayModeIterator )( |
| IDeckLinkInput * This, |
| /* [out] */ IDeckLinkDisplayModeIterator **iterator); |
| |
| HRESULT ( STDMETHODCALLTYPE *SetScreenPreviewCallback )( |
| IDeckLinkInput * This, |
| /* [in] */ IDeckLinkScreenPreviewCallback *previewCallback); |
| |
| HRESULT ( STDMETHODCALLTYPE *EnableVideoInput )( |
| IDeckLinkInput * This, |
| /* [in] */ BMDDisplayMode displayMode, |
| /* [in] */ BMDPixelFormat pixelFormat, |
| /* [in] */ BMDVideoInputFlags flags); |
| |
| HRESULT ( STDMETHODCALLTYPE *DisableVideoInput )( |
| IDeckLinkInput * This); |
| |
| HRESULT ( STDMETHODCALLTYPE *GetAvailableVideoFrameCount )( |
| IDeckLinkInput * This, |
| /* [out] */ unsigned long *availableFrameCount); |
| |
| HRESULT ( STDMETHODCALLTYPE *EnableAudioInput )( |
| IDeckLinkInput * This, |
| /* [in] */ BMDAudioSampleRate sampleRate, |
| /* [in] */ BMDAudioSampleType sampleType, |
| /* [in] */ unsigned long channelCount); |
| |
| HRESULT ( STDMETHODCALLTYPE *DisableAudioInput )( |
| IDeckLinkInput * This); |
| |
| HRESULT ( STDMETHODCALLTYPE *GetAvailableAudioSampleFrameCount )( |
| IDeckLinkInput * This, |
| /* [out] */ unsigned long *availableSampleFrameCount); |
| |
| HRESULT ( STDMETHODCALLTYPE *StartStreams )( |
| IDeckLinkInput * This); |
| |
| HRESULT ( STDMETHODCALLTYPE *StopStreams )( |
| IDeckLinkInput * This); |
| |
| HRESULT ( STDMETHODCALLTYPE *PauseStreams )( |
| IDeckLinkInput * This); |
| |
| HRESULT ( STDMETHODCALLTYPE *FlushStreams )( |
| IDeckLinkInput * This); |
| |
| HRESULT ( STDMETHODCALLTYPE *SetCallback )( |
| IDeckLinkInput * This, |
| /* [in] */ IDeckLinkInputCallback *theCallback); |
| |
| HRESULT ( STDMETHODCALLTYPE *GetHardwareReferenceClock )( |
| IDeckLinkInput * This, |
| /* [in] */ BMDTimeScale desiredTimeScale, |
| /* [out] */ BMDTimeValue *hardwareTime, |
| /* [out] */ BMDTimeValue *timeInFrame, |
| /* [out] */ BMDTimeValue *ticksPerFrame); |
| |
| END_INTERFACE |
| } IDeckLinkInputVtbl; |
| |
| interface IDeckLinkInput |
| { |
| CONST_VTBL struct IDeckLinkInputVtbl *lpVtbl; |
| }; |
| |
| |
| |
| #ifdef COBJMACROS |
| |
| |
| #define IDeckLinkInput_QueryInterface(This,riid,ppvObject) \ |
| ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) |
| |
| #define IDeckLinkInput_AddRef(This) \ |
| ( (This)->lpVtbl -> AddRef(This) ) |
| |
| #define IDeckLinkInput_Release(This) \ |
| ( (This)->lpVtbl -> Release(This) ) |
| |
| |
| #define IDeckLinkInput_DoesSupportVideoMode(This,displayMode,pixelFormat,flags,result,resultDisplayMode) \ |
| ( (This)->lpVtbl -> DoesSupportVideoMode(This,displayMode,pixelFormat,flags,result,resultDisplayMode) ) |
| |
| #define IDeckLinkInput_GetDisplayModeIterator(This,iterator) \ |
| ( (This)->lpVtbl -> GetDisplayModeIterator(This,iterator) ) |
| |
| #define IDeckLinkInput_SetScreenPreviewCallback(This,previewCallback) \ |
| ( (This)->lpVtbl -> SetScreenPreviewCallback(This,previewCallback) ) |
| |
| #define IDeckLinkInput_EnableVideoInput(This,displayMode,pixelFormat,flags) \ |
| ( (This)->lpVtbl -> EnableVideoInput(This,displayMode,pixelFormat,flags) ) |
| |
| #define IDeckLinkInput_DisableVideoInput(This) \ |
| ( (This)->lpVtbl -> DisableVideoInput(This) ) |
| |
| #define IDeckLinkInput_GetAvailableVideoFrameCount(This,availableFrameCount) \ |
| ( (This)->lpVtbl -> GetAvailableVideoFrameCount(This,availableFrameCount) ) |
| |
| #define IDeckLinkInput_EnableAudioInput(This,sampleRate,sampleType,channelCount) \ |
| ( (This)->lpVtbl -> EnableAudioInput(This,sampleRate,sampleType,channelCount) ) |
| |
| #define IDeckLinkInput_DisableAudioInput(This) \ |
| ( (This)->lpVtbl -> DisableAudioInput(This) ) |
| |
| #define IDeckLinkInput_GetAvailableAudioSampleFrameCount(This,availableSampleFrameCount) \ |
| ( (This)->lpVtbl -> GetAvailableAudioSampleFrameCount(This,availableSampleFrameCount) ) |
| |
| #define IDeckLinkInput_StartStreams(This) \ |
| ( (This)->lpVtbl -> StartStreams(This) ) |
| |
| #define IDeckLinkInput_StopStreams(This) \ |
| ( (This)->lpVtbl -> StopStreams(This) ) |
| |
| #define IDeckLinkInput_PauseStreams(This) \ |
| ( (This)->lpVtbl -> PauseStreams(This) ) |
| |
| #define IDeckLinkInput_FlushStreams(This) \ |
| ( (This)->lpVtbl -> FlushStreams(This) ) |
| |
| #define IDeckLinkInput_SetCallback(This,theCallback) \ |
| ( (This)->lpVtbl -> SetCallback(This,theCallback) ) |
| |
| #define IDeckLinkInput_GetHardwareReferenceClock(This,desiredTimeScale,hardwareTime,timeInFrame,ticksPerFrame) \ |
| ( (This)->lpVtbl -> GetHardwareReferenceClock(This,desiredTimeScale,hardwareTime,timeInFrame,ticksPerFrame) ) |
| |
| #endif /* COBJMACROS */ |
| |
| |
| #endif /* C style interface */ |
| |
| |
| |
| |
| #endif /* __IDeckLinkInput_INTERFACE_DEFINED__ */ |
| |
| |
| #ifndef __IDeckLinkTimecode_INTERFACE_DEFINED__ |
| #define __IDeckLinkTimecode_INTERFACE_DEFINED__ |
| |
| /* interface IDeckLinkTimecode */ |
| /* [helpstring][uuid][object] */ |
| |
| |
| EXTERN_C const IID IID_IDeckLinkTimecode; |
| |
| #if defined(__cplusplus) && !defined(CINTERFACE) |
| |
| MIDL_INTERFACE("BC6CFBD3-8317-4325-AC1C-1216391E9340") |
| IDeckLinkTimecode : public IUnknown |
| { |
| public: |
| virtual BMDTimecodeBCD STDMETHODCALLTYPE GetBCD( void) = 0; |
| |
| virtual HRESULT STDMETHODCALLTYPE GetComponents( |
| /* [out] */ unsigned char *hours, |
| /* [out] */ unsigned char *minutes, |
| /* [out] */ unsigned char *seconds, |
| /* [out] */ unsigned char *frames) = 0; |
| |
| virtual HRESULT STDMETHODCALLTYPE GetString( |
| /* [out] */ BSTR *timecode) = 0; |
| |
| virtual BMDTimecodeFlags STDMETHODCALLTYPE GetFlags( void) = 0; |
| |
| virtual HRESULT STDMETHODCALLTYPE GetTimecodeUserBits( |
| /* [out] */ BMDTimecodeUserBits *userBits) = 0; |
| |
| }; |
| |
| #else /* C style interface */ |
| |
| typedef struct IDeckLinkTimecodeVtbl |
| { |
| BEGIN_INTERFACE |
| |
| HRESULT ( STDMETHODCALLTYPE *QueryInterface )( |
| IDeckLinkTimecode * This, |
| /* [in] */ REFIID riid, |
| /* [iid_is][out] */ |
| __RPC__deref_out void **ppvObject); |
| |
| ULONG ( STDMETHODCALLTYPE *AddRef )( |
| IDeckLinkTimecode * This); |
| |
| ULONG ( STDMETHODCALLTYPE *Release )( |
| IDeckLinkTimecode * This); |
| |
| BMDTimecodeBCD ( STDMETHODCALLTYPE *GetBCD )( |
| IDeckLinkTimecode * This); |
| |
| HRESULT ( STDMETHODCALLTYPE *GetComponents )( |
| IDeckLinkTimecode * This, |
| /* [out] */ unsigned char *hours, |
| /* [out] */ unsigned char *minutes, |
| /* [out] */ unsigned char *seconds, |
| /* [out] */ unsigned char *frames); |
| |
| HRESULT ( STDMETHODCALLTYPE *GetString )( |
| IDeckLinkTimecode * This, |
| /* [out] */ BSTR *timecode); |
| |
| BMDTimecodeFlags ( STDMETHODCALLTYPE *GetFlags )( |
| IDeckLinkTimecode * This); |
| |
| HRESULT ( STDMETHODCALLTYPE *GetTimecodeUserBits )( |
| IDeckLinkTimecode * This, |
| /* [out] */ BMDTimecodeUserBits *userBits); |
| |
| END_INTERFACE |
| } IDeckLinkTimecodeVtbl; |
| |
| interface IDeckLinkTimecode |
| { |
| CONST_VTBL struct IDeckLinkTimecodeVtbl *lpVtbl; |
| }; |
| |
| |
| |
| #ifdef COBJMACROS |
| |
| |
| #define IDeckLinkTimecode_QueryInterface(This,riid,ppvObject) \ |
| ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) |
| |
| #define IDeckLinkTimecode_AddRef(This) \ |
| ( (This)->lpVtbl -> AddRef(This) ) |
| |
| #define IDeckLinkTimecode_Release(This) \ |
| ( (This)->lpVtbl -> Release(This) ) |
| |
| |
| #define IDeckLinkTimecode_GetBCD(This) \ |
| ( (This)->lpVtbl -> GetBCD(This) ) |
| |
| #define IDeckLinkTimecode_GetComponents(This,hours,minutes,seconds,frames) \ |
| ( (This)->lpVtbl -> GetComponents(This,hours,minutes,seconds,frames) ) |
| |
| #define IDeckLinkTimecode_GetString(This,timecode) \ |
| ( (This)->lpVtbl -> GetString(This,timecode) ) |
| |
| #define IDeckLinkTimecode_GetFlags(This) \ |
| ( (This)->lpVtbl -> GetFlags(This) ) |
| |
| #define IDeckLinkTimecode_GetTimecodeUserBits(This,userBits) \ |
| ( (This)->lpVtbl -> GetTimecodeUserBits(This,userBits) ) |
| |
| #endif /* COBJMACROS */ |
| |
| |
| #endif /* C style interface */ |
| |
| |
| |
| |
| #endif /* __IDeckLinkTimecode_INTERFACE_DEFINED__ */ |
| |
| |
| #ifndef __IDeckLinkVideoFrame_INTERFACE_DEFINED__ |
| #define __IDeckLinkVideoFrame_INTERFACE_DEFINED__ |
| |
| /* interface IDeckLinkVideoFrame */ |
| /* [helpstring][local][uuid][object] */ |
| |
| |
| EXTERN_C const IID IID_IDeckLinkVideoFrame; |
| |
| #if defined(__cplusplus) && !defined(CINTERFACE) |
| |
| MIDL_INTERFACE("3F716FE0-F023-4111-BE5D-EF4414C05B17") |
| IDeckLinkVideoFrame : public IUnknown |
| { |
| public: |
| virtual long STDMETHODCALLTYPE GetWidth( void) = 0; |
| |
| virtual long STDMETHODCALLTYPE GetHeight( void) = 0; |
| |
| virtual long STDMETHODCALLTYPE GetRowBytes( void) = 0; |
| |
| virtual BMDPixelFormat STDMETHODCALLTYPE GetPixelFormat( void) = 0; |
| |
| virtual BMDFrameFlags STDMETHODCALLTYPE GetFlags( void) = 0; |
| |
| virtual HRESULT STDMETHODCALLTYPE GetBytes( |
| /* [out] */ void **buffer) = 0; |
| |
| virtual HRESULT STDMETHODCALLTYPE GetTimecode( |
| /* [in] */ BMDTimecodeFormat format, |
| /* [out] */ IDeckLinkTimecode **timecode) = 0; |
| |
| virtual HRESULT STDMETHODCALLTYPE GetAncillaryData( |
| /* [out] */ IDeckLinkVideoFrameAncillary **ancillary) = 0; |
| |
| }; |
| |
| #else /* C style interface */ |
| |
| typedef struct IDeckLinkVideoFrameVtbl |
| { |
| BEGIN_INTERFACE |
| |
| HRESULT ( STDMETHODCALLTYPE *QueryInterface )( |
| IDeckLinkVideoFrame * This, |
| /* [in] */ REFIID riid, |
| /* [iid_is][out] */ |
| __RPC__deref_out void **ppvObject); |
| |
| ULONG ( STDMETHODCALLTYPE *AddRef )( |
| IDeckLinkVideoFrame * This); |
| |
| ULONG ( STDMETHODCALLTYPE *Release )( |
| IDeckLinkVideoFrame * This); |
| |
| long ( STDMETHODCALLTYPE *GetWidth )( |
| IDeckLinkVideoFrame * This); |
| |
| long ( STDMETHODCALLTYPE *GetHeight )( |
| IDeckLinkVideoFrame * This); |
| |
| long ( STDMETHODCALLTYPE *GetRowBytes )( |
| IDeckLinkVideoFrame * This); |
| |
| BMDPixelFormat ( STDMETHODCALLTYPE *GetPixelFormat )( |
| IDeckLinkVideoFrame * This); |
| |
| BMDFrameFlags ( STDMETHODCALLTYPE *GetFlags )( |
| IDeckLinkVideoFrame * This); |
| |
| HRESULT ( STDMETHODCALLTYPE *GetBytes )( |
| IDeckLinkVideoFrame * This, |
| /* [out] */ void **buffer); |
| |
| HRESULT ( STDMETHODCALLTYPE *GetTimecode )( |
| IDeckLinkVideoFrame * This, |
| /* [in] */ BMDTimecodeFormat format, |
| /* [out] */ IDeckLinkTimecode **timecode); |
| |
| HRESULT ( STDMETHODCALLTYPE *GetAncillaryData )( |
| IDeckLinkVideoFrame * This, |
| /* [out] */ IDeckLinkVideoFrameAncillary **ancillary); |
| |
| END_INTERFACE |
| } IDeckLinkVideoFrameVtbl; |
| |
| interface IDeckLinkVideoFrame |
| { |
| CONST_VTBL struct IDeckLinkVideoFrameVtbl *lpVtbl; |
| }; |
| |
| |
| |
| #ifdef COBJMACROS |
| |
| |
| #define IDeckLinkVideoFrame_QueryInterface(This,riid,ppvObject) \ |
| ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) |
| |
| #define IDeckLinkVideoFrame_AddRef(This) \ |
| ( (This)->lpVtbl -> AddRef(This) ) |
| |
| #define IDeckLinkVideoFrame_Release(This) \ |
| ( (This)->lpVtbl -> Release(This) ) |
| |
| |
| #define IDeckLinkVideoFrame_GetWidth(This) \ |
| ( (This)->lpVtbl -> GetWidth(This) ) |
| |
| #define IDeckLinkVideoFrame_GetHeight(This) \ |
| ( (This)->lpVtbl -> GetHeight(This) ) |
| |
| #define IDeckLinkVideoFrame_GetRowBytes(This) \ |
| ( (This)->lpVtbl -> GetRowBytes(This) ) |
| |
| #define IDeckLinkVideoFrame_GetPixelFormat(This) \ |
| ( (This)->lpVtbl -> GetPixelFormat(This) ) |
| |
| #define IDeckLinkVideoFrame_GetFlags(This) \ |
| ( (This)->lpVtbl -> GetFlags(This) ) |
| |
| #define IDeckLinkVideoFrame_GetBytes(This,buffer) \ |
| ( (This)->lpVtbl -> GetBytes(This,buffer) ) |
| |
| #define IDeckLinkVideoFrame_GetTimecode(This,format,timecode) \ |
| ( (This)->lpVtbl -> GetTimecode(This,format,timecode) ) |
| |
| #define IDeckLinkVideoFrame_GetAncillaryData(This,ancillary) \ |
| ( (This)->lpVtbl -> GetAncillaryData(This,ancillary) ) |
| |
| #endif /* COBJMACROS */ |
| |
| |
| #endif /* C style interface */ |
| |
| |
| |
| |
| #endif /* __IDeckLinkVideoFrame_INTERFACE_DEFINED__ */ |
| |
| |
| #ifndef __IDeckLinkMutableVideoFrame_INTERFACE_DEFINED__ |
| #define __IDeckLinkMutableVideoFrame_INTERFACE_DEFINED__ |
| |
| /* interface IDeckLinkMutableVideoFrame */ |
| /* [helpstring][local][uuid][object] */ |
| |
| |
| EXTERN_C const IID IID_IDeckLinkMutableVideoFrame; |
| |
| #if defined(__cplusplus) && !defined(CINTERFACE) |
| |
| MIDL_INTERFACE("69E2639F-40DA-4E19-B6F2-20ACE815C390") |
| IDeckLinkMutableVideoFrame : public IDeckLinkVideoFrame |
| { |
| public: |
| virtual HRESULT STDMETHODCALLTYPE SetFlags( |
| /* [in] */ BMDFrameFlags newFlags) = 0; |
| |
| virtual HRESULT STDMETHODCALLTYPE SetTimecode( |
| /* [in] */ BMDTimecodeFormat format, |
| /* [in] */ IDeckLinkTimecode *timecode) = 0; |
| |
| virtual HRESULT STDMETHODCALLTYPE SetTimecodeFromComponents( |
| /* [in] */ BMDTimecodeFormat format, |
| /* [in] */ unsigned char hours, |
| /* [in] */ unsigned char minutes, |
| /* [in] */ unsigned char seconds, |
| /* [in] */ unsigned char frames, |
| /* [in] */ BMDTimecodeFlags flags) = 0; |
| |
| virtual HRESULT STDMETHODCALLTYPE SetAncillaryData( |
| /* [in] */ IDeckLinkVideoFrameAncillary *ancillary) = 0; |
| |
| virtual HRESULT STDMETHODCALLTYPE SetTimecodeUserBits( |
| /* [in] */ BMDTimecodeFormat format, |
| /* [in] */ BMDTimecodeUserBits userBits) = 0; |
| |
| }; |
| |
| #else /* C style interface */ |
| |
| typedef struct IDeckLinkMutableVideoFrameVtbl |
| { |
| BEGIN_INTERFACE |
| |
| HRESULT ( STDMETHODCALLTYPE *QueryInterface )( |
| IDeckLinkMutableVideoFrame * This, |
| /* [in] */ REFIID riid, |
| /* [iid_is][out] */ |
| __RPC__deref_out void **ppvObject); |
| |
| ULONG ( STDMETHODCALLTYPE *AddRef )( |
| IDeckLinkMutableVideoFrame * This); |
| |
| ULONG ( STDMETHODCALLTYPE *Release )( |
| IDeckLinkMutableVideoFrame * This); |
| |
| long ( STDMETHODCALLTYPE *GetWidth )( |
| IDeckLinkMutableVideoFrame * This); |
| |
| long ( STDMETHODCALLTYPE *GetHeight )( |
| IDeckLinkMutableVideoFrame * This); |
| |
| long ( STDMETHODCALLTYPE *GetRowBytes )( |
| IDeckLinkMutableVideoFrame * This); |
| |
| BMDPixelFormat ( STDMETHODCALLTYPE *GetPixelFormat )( |
| IDeckLinkMutableVideoFrame * This); |
| |
| BMDFrameFlags ( STDMETHODCALLTYPE *GetFlags )( |
| IDeckLinkMutableVideoFrame * This); |
| |
| HRESULT ( STDMETHODCALLTYPE *GetBytes )( |
| IDeckLinkMutableVideoFrame * This, |
| /* [out] */ void **buffer); |
| |
| HRESULT ( STDMETHODCALLTYPE *GetTimecode )( |
| IDeckLinkMutableVideoFrame * This, |
| /* [in] */ BMDTimecodeFormat format, |
| /* [out] */ IDeckLinkTimecode **timecode); |
| |
| HRESULT ( STDMETHODCALLTYPE *GetAncillaryData )( |
| IDeckLinkMutableVideoFrame * This, |
| /* [out] */ IDeckLinkVideoFrameAncillary **ancillary); |
| |
| HRESULT ( STDMETHODCALLTYPE *SetFlags )( |
| IDeckLinkMutableVideoFrame * This, |
| /* [in] */ BMDFrameFlags newFlags); |
| |
| HRESULT ( STDMETHODCALLTYPE *SetTimecode )( |
| IDeckLinkMutableVideoFrame * This, |
| /* [in] */ BMDTimecodeFormat format, |
| /* [in] */ IDeckLinkTimecode *timecode); |
| |
| HRESULT ( STDMETHODCALLTYPE *SetTimecodeFromComponents )( |
| IDeckLinkMutableVideoFrame * This, |
| /* [in] */ BMDTimecodeFormat format, |
| /* [in] */ unsigned char hours, |
| /* [in] */ unsigned char minutes, |
| /* [in] */ unsigned char seconds, |
| /* [in] */ unsigned char frames, |
| /* [in] */ BMDTimecodeFlags flags); |
| |
| HRESULT ( STDMETHODCALLTYPE *SetAncillaryData )( |
| IDeckLinkMutableVideoFrame * This, |
| /* [in] */ IDeckLinkVideoFrameAncillary *ancillary); |
| |
| HRESULT ( STDMETHODCALLTYPE *SetTimecodeUserBits )( |
| IDeckLinkMutableVideoFrame * This, |
| /* [in] */ BMDTimecodeFormat format, |
| /* [in] */ BMDTimecodeUserBits userBits); |
| |
| END_INTERFACE |
| } IDeckLinkMutableVideoFrameVtbl; |
| |
| interface IDeckLinkMutableVideoFrame |
| { |
| CONST_VTBL struct IDeckLinkMutableVideoFrameVtbl *lpVtbl; |
| }; |
| |
| |
| |
| #ifdef COBJMACROS |
| |
| |
| #define IDeckLinkMutableVideoFrame_QueryInterface(This,riid,ppvObject) \ |
| ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) |
| |
| #define IDeckLinkMutableVideoFrame_AddRef(This) \ |
| ( (This)->lpVtbl -> AddRef(This) ) |
| |
| #define IDeckLinkMutableVideoFrame_Release(This) \ |
| ( (This)->lpVtbl -> Release(This) ) |
| |
| |
| #define IDeckLinkMutableVideoFrame_GetWidth(This) \ |
| ( (This)->lpVtbl -> GetWidth(This) ) |
| |
| #define IDeckLinkMutableVideoFrame_GetHeight(This) \ |
| ( (This)->lpVtbl -> GetHeight(This) ) |
| |
| #define IDeckLinkMutableVideoFrame_GetRowBytes(This) \ |
| ( (This)->lpVtbl -> GetRowBytes(This) ) |
| |
| #define IDeckLinkMutableVideoFrame_GetPixelFormat(This) \ |
| ( (This)->lpVtbl -> GetPixelFormat(This) ) |
| |
| #define IDeckLinkMutableVideoFrame_GetFlags(This) \ |
| ( (This)->lpVtbl -> GetFlags(This) ) |
| |
| #define IDeckLinkMutableVideoFrame_GetBytes(This,buffer) \ |
| ( (This)->lpVtbl -> GetBytes(This,buffer) ) |
| |
| #define IDeckLinkMutableVideoFrame_GetTimecode(This,format,timecode) \ |
| ( (This)->lpVtbl -> GetTimecode(This,format,timecode) ) |
| |
| #define IDeckLinkMutableVideoFrame_GetAncillaryData(This,ancillary) \ |
| ( (This)->lpVtbl -> GetAncillaryData(This,ancillary) ) |
| |
| |
| #define IDeckLinkMutableVideoFrame_SetFlags(This,newFlags) \ |
| ( (This)->lpVtbl -> SetFlags(This,newFlags) ) |
| |
| #define IDeckLinkMutableVideoFrame_SetTimecode(This,format,timecode) \ |
| ( (This)->lpVtbl -> SetTimecode(This,format,timecode) ) |
| |
| #define IDeckLinkMutableVideoFrame_SetTimecodeFromComponents(This,format,hours,minutes,seconds,frames,flags) \ |
| ( (This)->lpVtbl -> SetTimecodeFromComponents(This,format,hours,minutes,seconds,frames,flags) ) |
| |
| #define IDeckLinkMutableVideoFrame_SetAncillaryData(This,ancillary) \ |
| ( (This)->lpVtbl -> SetAncillaryData(This,ancillary) ) |
| |
| #define IDeckLinkMutableVideoFrame_SetTimecodeUserBits(This,format,userBits) \ |
| ( (This)->lpVtbl -> SetTimecodeUserBits(This,format,userBits) ) |
| |
| #endif /* COBJMACROS */ |
| |
| |
| #endif /* C style interface */ |
| |
| |
| |
| |
| #endif /* __IDeckLinkMutableVideoFrame_INTERFACE_DEFINED__ */ |
| |
| |
| #ifndef __IDeckLinkVideoFrame3DExtensions_INTERFACE_DEFINED__ |
| #define __IDeckLinkVideoFrame3DExtensions_INTERFACE_DEFINED__ |
| |
| /* interface IDeckLinkVideoFrame3DExtensions */ |
| /* [helpstring][local][uuid][object] */ |
| |
| |
| EXTERN_C const IID IID_IDeckLinkVideoFrame3DExtensions; |
| |
| #if defined(__cplusplus) && !defined(CINTERFACE) |
| |
| MIDL_INTERFACE("DA0F7E4A-EDC7-48A8-9CDD-2DB51C729CD7") |
| IDeckLinkVideoFrame3DExtensions : public IUnknown |
| { |
| public: |
| virtual BMDVideo3DPackingFormat STDMETHODCALLTYPE Get3DPackingFormat( void) = 0; |
| |
| virtual HRESULT STDMETHODCALLTYPE GetFrameForRightEye( |
| /* [out] */ IDeckLinkVideoFrame **rightEyeFrame) = 0; |
| |
| }; |
| |
| #else /* C style interface */ |
| |
| typedef struct IDeckLinkVideoFrame3DExtensionsVtbl |
| { |
| BEGIN_INTERFACE |
| |
| HRESULT ( STDMETHODCALLTYPE *QueryInterface )( |
| IDeckLinkVideoFrame3DExtensions * This, |
| /* [in] */ REFIID riid, |
| /* [iid_is][out] */ |
| __RPC__deref_out void **ppvObject); |
| |
| ULONG ( STDMETHODCALLTYPE *AddRef )( |
| IDeckLinkVideoFrame3DExtensions * This); |
| |
| ULONG ( STDMETHODCALLTYPE *Release )( |
| IDeckLinkVideoFrame3DExtensions * This); |
| |
| BMDVideo3DPackingFormat ( STDMETHODCALLTYPE *Get3DPackingFormat )( |
| IDeckLinkVideoFrame3DExtensions * This); |
| |
| HRESULT ( STDMETHODCALLTYPE *GetFrameForRightEye )( |
| IDeckLinkVideoFrame3DExtensions * This, |
| /* [out] */ IDeckLinkVideoFrame **rightEyeFrame); |
| |
| END_INTERFACE |
| } IDeckLinkVideoFrame3DExtensionsVtbl; |
| |
| interface IDeckLinkVideoFrame3DExtensions |
| { |
| CONST_VTBL struct IDeckLinkVideoFrame3DExtensionsVtbl *lpVtbl; |
| }; |
| |
| |
| |
| #ifdef COBJMACROS |
| |
| |
| #define IDeckLinkVideoFrame3DExtensions_QueryInterface(This,riid,ppvObject) \ |
| ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) |
| |
| #define IDeckLinkVideoFrame3DExtensions_AddRef(This) \ |
| ( (This)->lpVtbl -> AddRef(This) ) |
| |
| #define IDeckLinkVideoFrame3DExtensions_Release(This) \ |
| ( (This)->lpVtbl -> Release(This) ) |
| |
| |
| #define IDeckLinkVideoFrame3DExtensions_Get3DPackingFormat(This) \ |
| ( (This)->lpVtbl -> Get3DPackingFormat(This) ) |
| |
| #define IDeckLinkVideoFrame3DExtensions_GetFrameForRightEye(This,rightEyeFrame) \ |
| ( (This)->lpVtbl -> GetFrameForRightEye(This,rightEyeFrame) ) |
| |
| #endif /* COBJMACROS */ |
| |
| |
| #endif /* C style interface */ |
| |
| |
| |
| |
| #endif /* __IDeckLinkVideoFrame3DExtensions_INTERFACE_DEFINED__ */ |
| |
| |
| #ifndef __IDeckLinkVideoInputFrame_INTERFACE_DEFINED__ |
| #define __IDeckLinkVideoInputFrame_INTERFACE_DEFINED__ |
| |
| /* interface IDeckLinkVideoInputFrame */ |
| /* [helpstring][local][uuid][object] */ |
| |
| |
| EXTERN_C const IID IID_IDeckLinkVideoInputFrame; |
| |
| #if defined(__cplusplus) && !defined(CINTERFACE) |
| |
| MIDL_INTERFACE("05CFE374-537C-4094-9A57-680525118F44") |
| IDeckLinkVideoInputFrame : public IDeckLinkVideoFrame |
| { |
| public: |
| virtual HRESULT STDMETHODCALLTYPE GetStreamTime( |
| /* [out] */ BMDTimeValue *frameTime, |
| /* [out] */ BMDTimeValue *frameDuration, |
| /* [in] */ BMDTimeScale timeScale) = 0; |
| |
| virtual HRESULT STDMETHODCALLTYPE GetHardwareReferenceTimestamp( |
| /* [in] */ BMDTimeScale timeScale, |
| /* [out] */ BMDTimeValue *frameTime, |
| /* [out] */ BMDTimeValue *frameDuration) = 0; |
| |
| }; |
| |
| #else /* C style interface */ |
| |
| typedef struct IDeckLinkVideoInputFrameVtbl |
| { |
| BEGIN_INTERFACE |
| |
| HRESULT ( STDMETHODCALLTYPE *QueryInterface )( |
| IDeckLinkVideoInputFrame * This, |
| /* [in] */ REFIID riid, |
| /* [iid_is][out] */ |
| __RPC__deref_out void **ppvObject); |
| |
| ULONG ( STDMETHODCALLTYPE *AddRef )( |
| IDeckLinkVideoInputFrame * This); |
| |
| ULONG ( STDMETHODCALLTYPE *Release )( |
| IDeckLinkVideoInputFrame * This); |
| |
| long ( STDMETHODCALLTYPE *GetWidth )( |
| IDeckLinkVideoInputFrame * This); |
| |
| long ( STDMETHODCALLTYPE *GetHeight )( |
| IDeckLinkVideoInputFrame * This); |
| |
| long ( STDMETHODCALLTYPE *GetRowBytes )( |
| IDeckLinkVideoInputFrame * This); |
| |
| BMDPixelFormat ( STDMETHODCALLTYPE *GetPixelFormat )( |
| IDeckLinkVideoInputFrame * This); |
| |
| BMDFrameFlags ( STDMETHODCALLTYPE *GetFlags )( |
| IDeckLinkVideoInputFrame * This); |
| |
| HRESULT ( STDMETHODCALLTYPE *GetBytes )( |
| IDeckLinkVideoInputFrame * This, |
| /* [out] */ void **buffer); |
| |
| HRESULT ( STDMETHODCALLTYPE *GetTimecode )( |
| IDeckLinkVideoInputFrame * This, |
| /* [in] */ BMDTimecodeFormat format, |
| /* [out] */ IDeckLinkTimecode **timecode); |
| |
| HRESULT ( STDMETHODCALLTYPE *GetAncillaryData )( |
| IDeckLinkVideoInputFrame * This, |
| /* [out] */ IDeckLinkVideoFrameAncillary **ancillary); |
| |
| HRESULT ( STDMETHODCALLTYPE *GetStreamTime )( |
| IDeckLinkVideoInputFrame * This, |
| /* [out] */ BMDTimeValue *frameTime, |
| /* [out] */ BMDTimeValue *frameDuration, |
| /* [in] */ BMDTimeScale timeScale); |
| |
| HRESULT ( STDMETHODCALLTYPE *GetHardwareReferenceTimestamp )( |
| IDeckLinkVideoInputFrame * This, |
| /* [in] */ BMDTimeScale timeScale, |
| /* [out] */ BMDTimeValue *frameTime, |
| /* [out] */ BMDTimeValue *frameDuration); |
| |
| END_INTERFACE |
| } IDeckLinkVideoInputFrameVtbl; |
| |
| interface IDeckLinkVideoInputFrame |
| { |
| CONST_VTBL struct IDeckLinkVideoInputFrameVtbl *lpVtbl; |
| }; |
| |
| |
| |
| #ifdef COBJMACROS |
| |
| |
| #define IDeckLinkVideoInputFrame_QueryInterface(This,riid,ppvObject) \ |
| ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) |
| |
| #define IDeckLinkVideoInputFrame_AddRef(This) \ |
| ( (This)->lpVtbl -> AddRef(This) ) |
| |
| #define IDeckLinkVideoInputFrame_Release(This) \ |
| ( (This)->lpVtbl -> Release(This) ) |
| |
| |
| #define IDeckLinkVideoInputFrame_GetWidth(This) \ |
| ( (This)->lpVtbl -> GetWidth(This) ) |
| |
| #define IDeckLinkVideoInputFrame_GetHeight(This) \ |
| ( (This)->lpVtbl -> GetHeight(This) ) |
| |
| #define IDeckLinkVideoInputFrame_GetRowBytes(This) \ |
| ( (This)->lpVtbl -> GetRowBytes(This) ) |
| |
| #define IDeckLinkVideoInputFrame_GetPixelFormat(This) \ |
| ( (This)->lpVtbl -> GetPixelFormat(This) ) |
| |
| #define IDeckLinkVideoInputFrame_GetFlags(This) \ |
| ( (This)->lpVtbl -> GetFlags(This) ) |
| |
| #define IDeckLinkVideoInputFrame_GetBytes(This,buffer) \ |
| ( (This)->lpVtbl -> GetBytes(This,buffer) ) |
| |
| #define IDeckLinkVideoInputFrame_GetTimecode(This,format,timecode) \ |
| ( (This)->lpVtbl -> GetTimecode(This,format,timecode) ) |
| |
| #define IDeckLinkVideoInputFrame_GetAncillaryData(This,ancillary) \ |
| ( (This)->lpVtbl -> GetAncillaryData(This,ancillary) ) |
| |
| |
| #define IDeckLinkVideoInputFrame_GetStreamTime(This,frameTime,frameDuration,timeScale) \ |
| ( (This)->lpVtbl -> GetStreamTime(This,frameTime,frameDuration,timeScale) ) |
| |
| #define IDeckLinkVideoInputFrame_GetHardwareReferenceTimestamp(This,timeScale,frameTime,frameDuration) \ |
| ( (This)->lpVtbl -> GetHardwareReferenceTimestamp(This,timeScale,frameTime,frameDuration) ) |
| |
| #endif /* COBJMACROS */ |
| |
| |
| #endif /* C style interface */ |
| |
| |
| |
| |
| #endif /* __IDeckLinkVideoInputFrame_INTERFACE_DEFINED__ */ |
| |