blob: 90d1a2885665613cedf1e2aeac59ac8cce9b354a [file] [log] [blame]
/* this ALWAYS GENERATED file contains the definitions for the interfaces */
/* File created by MIDL compiler version 8.00.0595 */
/* at Wed Dec 03 06:04:46 2014
*/
/* Compiler settings for DeckLinkAPI.idl:
Oicf, W1, Zp8, env=Win32 (32b run), target_arch=X86 8.00.0595
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 __IDeckLinkTimecode_FWD_DEFINED__
#define __IDeckLinkTimecode_FWD_DEFINED__
typedef interface IDeckLinkTimecode IDeckLinkTimecode;
#endif /* __IDeckLinkTimecode_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 __IDeckLinkConfiguration_FWD_DEFINED__
#define __IDeckLinkConfiguration_FWD_DEFINED__
typedef interface IDeckLinkConfiguration IDeckLinkConfiguration;
#endif /* __IDeckLinkConfiguration_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 __IBMDStreamingDeviceNotificationCallback_FWD_DEFINED__
#define __IBMDStreamingDeviceNotificationCallback_FWD_DEFINED__
typedef interface IBMDStreamingDeviceNotificationCallback IBMDStreamingDeviceNotificationCallback;
#endif /* __IBMDStreamingDeviceNotificationCallback_FWD_DEFINED__ */
#ifndef __IBMDStreamingH264InputCallback_FWD_DEFINED__
#define __IBMDStreamingH264InputCallback_FWD_DEFINED__
typedef interface IBMDStreamingH264InputCallback IBMDStreamingH264InputCallback;
#endif /* __IBMDStreamingH264InputCallback_FWD_DEFINED__ */
#ifndef __IBMDStreamingDiscovery_FWD_DEFINED__
#define __IBMDStreamingDiscovery_FWD_DEFINED__
typedef interface IBMDStreamingDiscovery IBMDStreamingDiscovery;
#endif /* __IBMDStreamingDiscovery_FWD_DEFINED__ */
#ifndef __IBMDStreamingVideoEncodingMode_FWD_DEFINED__
#define __IBMDStreamingVideoEncodingMode_FWD_DEFINED__
typedef interface IBMDStreamingVideoEncodingMode IBMDStreamingVideoEncodingMode;
#endif /* __IBMDStreamingVideoEncodingMode_FWD_DEFINED__ */
#ifndef __IBMDStreamingMutableVideoEncodingMode_FWD_DEFINED__
#define __IBMDStreamingMutableVideoEncodingMode_FWD_DEFINED__
typedef interface IBMDStreamingMutableVideoEncodingMode IBMDStreamingMutableVideoEncodingMode;
#endif /* __IBMDStreamingMutableVideoEncodingMode_FWD_DEFINED__ */
#ifndef __IBMDStreamingVideoEncodingModePresetIterator_FWD_DEFINED__
#define __IBMDStreamingVideoEncodingModePresetIterator_FWD_DEFINED__
typedef interface IBMDStreamingVideoEncodingModePresetIterator IBMDStreamingVideoEncodingModePresetIterator;
#endif /* __IBMDStreamingVideoEncodingModePresetIterator_FWD_DEFINED__ */
#ifndef __IBMDStreamingDeviceInput_FWD_DEFINED__
#define __IBMDStreamingDeviceInput_FWD_DEFINED__
typedef interface IBMDStreamingDeviceInput IBMDStreamingDeviceInput;
#endif /* __IBMDStreamingDeviceInput_FWD_DEFINED__ */
#ifndef __IBMDStreamingH264NALPacket_FWD_DEFINED__
#define __IBMDStreamingH264NALPacket_FWD_DEFINED__
typedef interface IBMDStreamingH264NALPacket IBMDStreamingH264NALPacket;
#endif /* __IBMDStreamingH264NALPacket_FWD_DEFINED__ */
#ifndef __IBMDStreamingAudioPacket_FWD_DEFINED__
#define __IBMDStreamingAudioPacket_FWD_DEFINED__
typedef interface IBMDStreamingAudioPacket IBMDStreamingAudioPacket;
#endif /* __IBMDStreamingAudioPacket_FWD_DEFINED__ */
#ifndef __IBMDStreamingMPEG2TSPacket_FWD_DEFINED__
#define __IBMDStreamingMPEG2TSPacket_FWD_DEFINED__
typedef interface IBMDStreamingMPEG2TSPacket IBMDStreamingMPEG2TSPacket;
#endif /* __IBMDStreamingMPEG2TSPacket_FWD_DEFINED__ */
#ifndef __IBMDStreamingH264NALParser_FWD_DEFINED__
#define __IBMDStreamingH264NALParser_FWD_DEFINED__
typedef interface IBMDStreamingH264NALParser IBMDStreamingH264NALParser;
#endif /* __IBMDStreamingH264NALParser_FWD_DEFINED__ */
#ifndef __CBMDStreamingDiscovery_FWD_DEFINED__
#define __CBMDStreamingDiscovery_FWD_DEFINED__
#ifdef __cplusplus
typedef class CBMDStreamingDiscovery CBMDStreamingDiscovery;
#else
typedef struct CBMDStreamingDiscovery CBMDStreamingDiscovery;
#endif /* __cplusplus */
#endif /* __CBMDStreamingDiscovery_FWD_DEFINED__ */
#ifndef __CBMDStreamingH264NALParser_FWD_DEFINED__
#define __CBMDStreamingH264NALParser_FWD_DEFINED__
#ifdef __cplusplus
typedef class CBMDStreamingH264NALParser CBMDStreamingH264NALParser;
#else
typedef struct CBMDStreamingH264NALParser CBMDStreamingH264NALParser;
#endif /* __cplusplus */
#endif /* __CBMDStreamingH264NALParser_FWD_DEFINED__ */
#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 __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 __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 __IDeckLinkDX9ScreenPreviewHelper_FWD_DEFINED__
#define __IDeckLinkDX9ScreenPreviewHelper_FWD_DEFINED__
typedef interface IDeckLinkDX9ScreenPreviewHelper IDeckLinkDX9ScreenPreviewHelper;
#endif /* __IDeckLinkDX9ScreenPreviewHelper_FWD_DEFINED__ */
#ifndef __IDeckLinkNotificationCallback_FWD_DEFINED__
#define __IDeckLinkNotificationCallback_FWD_DEFINED__
typedef interface IDeckLinkNotificationCallback IDeckLinkNotificationCallback;
#endif /* __IDeckLinkNotificationCallback_FWD_DEFINED__ */
#ifndef __IDeckLinkNotification_FWD_DEFINED__
#define __IDeckLinkNotification_FWD_DEFINED__
typedef interface IDeckLinkNotification IDeckLinkNotification;
#endif /* __IDeckLinkNotification_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 __IDeckLinkDeviceNotificationCallback_FWD_DEFINED__
#define __IDeckLinkDeviceNotificationCallback_FWD_DEFINED__
typedef interface IDeckLinkDeviceNotificationCallback IDeckLinkDeviceNotificationCallback;
#endif /* __IDeckLinkDeviceNotificationCallback_FWD_DEFINED__ */
#ifndef __IDeckLinkDiscovery_FWD_DEFINED__
#define __IDeckLinkDiscovery_FWD_DEFINED__
typedef interface IDeckLinkDiscovery IDeckLinkDiscovery;
#endif /* __IDeckLinkDiscovery_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 __CDeckLinkDX9ScreenPreviewHelper_FWD_DEFINED__
#define __CDeckLinkDX9ScreenPreviewHelper_FWD_DEFINED__
#ifdef __cplusplus
typedef class CDeckLinkDX9ScreenPreviewHelper CDeckLinkDX9ScreenPreviewHelper;
#else
typedef struct CDeckLinkDX9ScreenPreviewHelper CDeckLinkDX9ScreenPreviewHelper;
#endif /* __cplusplus */
#endif /* __CDeckLinkDX9ScreenPreviewHelper_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 __CDeckLinkDiscovery_FWD_DEFINED__
#define __CDeckLinkDiscovery_FWD_DEFINED__
#ifdef __cplusplus
typedef class CDeckLinkDiscovery CDeckLinkDiscovery;
#else
typedef struct CDeckLinkDiscovery CDeckLinkDiscovery;
#endif /* __cplusplus */
#endif /* __CDeckLinkDiscovery_FWD_DEFINED__ */
#ifndef __IDeckLinkConfiguration_v10_2_FWD_DEFINED__
#define __IDeckLinkConfiguration_v10_2_FWD_DEFINED__
typedef interface IDeckLinkConfiguration_v10_2 IDeckLinkConfiguration_v10_2;
#endif /* __IDeckLinkConfiguration_v10_2_FWD_DEFINED__ */
#ifndef __IDeckLinkOutput_v9_9_FWD_DEFINED__
#define __IDeckLinkOutput_v9_9_FWD_DEFINED__
typedef interface IDeckLinkOutput_v9_9 IDeckLinkOutput_v9_9;
#endif /* __IDeckLinkOutput_v9_9_FWD_DEFINED__ */
#ifndef __IDeckLinkInput_v9_2_FWD_DEFINED__
#define __IDeckLinkInput_v9_2_FWD_DEFINED__
typedef interface IDeckLinkInput_v9_2 IDeckLinkInput_v9_2;
#endif /* __IDeckLinkInput_v9_2_FWD_DEFINED__ */
#ifndef __IDeckLinkDeckControlStatusCallback_v8_1_FWD_DEFINED__
#define __IDeckLinkDeckControlStatusCallback_v8_1_FWD_DEFINED__
typedef interface IDeckLinkDeckControlStatusCallback_v8_1 IDeckLinkDeckControlStatusCallback_v8_1;
#endif /* __IDeckLinkDeckControlStatusCallback_v8_1_FWD_DEFINED__ */
#ifndef __IDeckLinkDeckControl_v8_1_FWD_DEFINED__
#define __IDeckLinkDeckControl_v8_1_FWD_DEFINED__
typedef interface IDeckLinkDeckControl_v8_1 IDeckLinkDeckControl_v8_1;
#endif /* __IDeckLinkDeckControl_v8_1_FWD_DEFINED__ */
#ifndef __IDeckLink_v8_0_FWD_DEFINED__
#define __IDeckLink_v8_0_FWD_DEFINED__
typedef interface IDeckLink_v8_0 IDeckLink_v8_0;
#endif /* __IDeckLink_v8_0_FWD_DEFINED__ */
#ifndef __IDeckLinkIterator_v8_0_FWD_DEFINED__
#define __IDeckLinkIterator_v8_0_FWD_DEFINED__
typedef interface IDeckLinkIterator_v8_0 IDeckLinkIterator_v8_0;
#endif /* __IDeckLinkIterator_v8_0_FWD_DEFINED__ */
#ifndef __CDeckLinkIterator_v8_0_FWD_DEFINED__
#define __CDeckLinkIterator_v8_0_FWD_DEFINED__
#ifdef __cplusplus
typedef class CDeckLinkIterator_v8_0 CDeckLinkIterator_v8_0;
#else
typedef struct CDeckLinkIterator_v8_0 CDeckLinkIterator_v8_0;
#endif /* __cplusplus */
#endif /* __CDeckLinkIterator_v8_0_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 BMDTimecodeFlags;
#if 0
typedef enum _BMDTimecodeFlags BMDTimecodeFlags;
#endif
/* [v1_enum] */
enum _BMDTimecodeFlags
{
bmdTimecodeFlagDefault = 0,
bmdTimecodeIsDropFrame = ( 1 << 0 ) ,
bmdTimecodeFieldMark = ( 1 << 1 )
} ;
typedef /* [v1_enum] */
enum _BMDVideoConnection
{
bmdVideoConnectionSDI = ( 1 << 0 ) ,
bmdVideoConnectionHDMI = ( 1 << 1 ) ,
bmdVideoConnectionOpticalSDI = ( 1 << 2 ) ,
bmdVideoConnectionComponent = ( 1 << 3 ) ,
bmdVideoConnectionComposite = ( 1 << 4 ) ,
bmdVideoConnectionSVideo = ( 1 << 5 )
} BMDVideoConnection;
typedef /* [v1_enum] */
enum _BMDAudioConnection
{
bmdAudioConnectionEmbedded = ( 1 << 0 ) ,
bmdAudioConnectionAESEBU = ( 1 << 1 ) ,
bmdAudioConnectionAnalog = ( 1 << 2 ) ,
bmdAudioConnectionAnalogXLR = ( 1 << 3 ) ,
bmdAudioConnectionAnalogRCA = ( 1 << 4 )
} BMDAudioConnection;
typedef unsigned long BMDDisplayModeFlags;
#if 0
typedef enum _BMDDisplayModeFlags BMDDisplayModeFlags;
#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,
bmdMode2kDCI2398 = 0x32643233,
bmdMode2kDCI24 = 0x32643234,
bmdMode2kDCI25 = 0x32643235,
bmdMode4K2160p2398 = 0x346b3233,
bmdMode4K2160p24 = 0x346b3234,
bmdMode4K2160p25 = 0x346b3235,
bmdMode4K2160p2997 = 0x346b3239,
bmdMode4K2160p30 = 0x346b3330,
bmdMode4K2160p50 = 0x346b3530,
bmdMode4K2160p5994 = 0x346b3539,
bmdMode4K2160p60 = 0x346b3630,
bmdMode4kDCI2398 = 0x34643233,
bmdMode4kDCI24 = 0x34643234,
bmdMode4kDCI25 = 0x34643235,
bmdModeUnknown = 0x69756e6b
} 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,
bmdFormat12BitRGB = 0x52313242,
bmdFormat12BitRGBLE = 0x5231324c,
bmdFormat10BitRGBXLE = 0x5231306c,
bmdFormat10BitRGBX = 0x52313062
} BMDPixelFormat;
/* [v1_enum] */
enum _BMDDisplayModeFlags
{
bmdDisplayModeSupports3D = ( 1 << 0 ) ,
bmdDisplayModeColorspaceRec601 = ( 1 << 1 ) ,
bmdDisplayModeColorspaceRec709 = ( 1 << 2 )
} ;
#if 0
#endif
#if 0
#endif
typedef /* [v1_enum] */
enum _BMDDeckLinkConfigurationID
{
bmdDeckLinkConfigSwapSerialRxTx = 0x73737274,
bmdDeckLinkConfigUse1080pNotPsF = 0x6670726f,
bmdDeckLinkConfigHDMI3DPackingFormat = 0x33647066,
bmdDeckLinkConfigBypass = 0x62797073,
bmdDeckLinkConfigClockTimingAdjustment = 0x63746164,
bmdDeckLinkConfigAnalogAudioConsumerLevels = 0x6161636c,
bmdDeckLinkConfigFieldFlickerRemoval = 0x66646672,
bmdDeckLinkConfigHD1080p24ToHD1080i5994Conversion = 0x746f3539,
bmdDeckLinkConfig444SDIVideoOutput = 0x3434346f,
bmdDeckLinkConfigSingleLinkVideoOutput = 0x73676c6f,
bmdDeckLinkConfigBlackVideoOutputDuringCapture = 0x62766f63,
bmdDeckLinkConfigLowLatencyVideoOutput = 0x6c6c766f,
bmdDeckLinkConfigVideoOutputConnection = 0x766f636e,
bmdDeckLinkConfigVideoOutputConversionMode = 0x766f636d,
bmdDeckLinkConfigAnalogVideoOutputFlags = 0x61766f66,
bmdDeckLinkConfigReferenceInputTimingOffset = 0x676c6f74,
bmdDeckLinkConfigVideoOutputIdleOperation = 0x766f696f,
bmdDeckLinkConfigDefaultVideoOutputMode = 0x64766f6d,
bmdDeckLinkConfigDefaultVideoOutputModeFlags = 0x64766f66,
bmdDeckLinkConfigVideoOutputComponentLumaGain = 0x6f636c67,
bmdDeckLinkConfigVideoOutputComponentChromaBlueGain = 0x6f636362,
bmdDeckLinkConfigVideoOutputComponentChromaRedGain = 0x6f636372,
bmdDeckLinkConfigVideoOutputCompositeLumaGain = 0x6f696c67,
bmdDeckLinkConfigVideoOutputCompositeChromaGain = 0x6f696367,
bmdDeckLinkConfigVideoOutputSVideoLumaGain = 0x6f736c67,
bmdDeckLinkConfigVideoOutputSVideoChromaGain = 0x6f736367,
bmdDeckLinkConfigVideoInputScanning = 0x76697363,
bmdDeckLinkConfigUseDedicatedLTCInput = 0x646c7463,
bmdDeckLinkConfigVideoInputConnection = 0x7669636e,
bmdDeckLinkConfigAnalogVideoInputFlags = 0x61766966,
bmdDeckLinkConfigVideoInputConversionMode = 0x7669636d,
bmdDeckLinkConfig32PulldownSequenceInitialTimecodeFrame = 0x70646966,
bmdDeckLinkConfigVANCSourceLine1Mapping = 0x76736c31,
bmdDeckLinkConfigVANCSourceLine2Mapping = 0x76736c32,
bmdDeckLinkConfigVANCSourceLine3Mapping = 0x76736c33,
bmdDeckLinkConfigCapturePassThroughMode = 0x6370746d,
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 unsigned long BMDDeckControlStatusFlags;
typedef unsigned long BMDDeckControlExportModeOpsFlags;
#if 0
typedef enum _BMDDeckControlStatusFlags BMDDeckControlStatusFlags;
typedef enum _BMDDeckControlExportModeOpsFlags BMDDeckControlExportModeOpsFlags;
#endif
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,
bmdDeckControlVTRControlShuttleForward = 0x76747366,
bmdDeckControlVTRControlShuttleReverse = 0x76747372,
bmdDeckControlVTRControlJogForward = 0x76746a66,
bmdDeckControlVTRControlJogReverse = 0x76746a72,
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;
#if 0
#endif
typedef /* [v1_enum] */
enum _BMDStreamingDeviceMode
{
bmdStreamingDeviceIdle = 0x69646c65,
bmdStreamingDeviceEncoding = 0x656e636f,
bmdStreamingDeviceStopping = 0x73746f70,
bmdStreamingDeviceUnknown = 0x6d756e6b
} BMDStreamingDeviceMode;
typedef /* [v1_enum] */
enum _BMDStreamingEncodingFrameRate
{
bmdStreamingEncodedFrameRate50i = 0x65353069,
bmdStreamingEncodedFrameRate5994i = 0x65353969,
bmdStreamingEncodedFrameRate60i = 0x65363069,
bmdStreamingEncodedFrameRate2398p = 0x65323370,
bmdStreamingEncodedFrameRate24p = 0x65323470,
bmdStreamingEncodedFrameRate25p = 0x65323570,
bmdStreamingEncodedFrameRate2997p = 0x65323970,
bmdStreamingEncodedFrameRate30p = 0x65333070,
bmdStreamingEncodedFrameRate50p = 0x65353070,
bmdStreamingEncodedFrameRate5994p = 0x65353970,
bmdStreamingEncodedFrameRate60p = 0x65363070
} BMDStreamingEncodingFrameRate;
typedef /* [v1_enum] */
enum _BMDStreamingEncodingSupport
{
bmdStreamingEncodingModeNotSupported = 0,
bmdStreamingEncodingModeSupported = ( bmdStreamingEncodingModeNotSupported + 1 ) ,
bmdStreamingEncodingModeSupportedWithChanges = ( bmdStreamingEncodingModeSupported + 1 )
} BMDStreamingEncodingSupport;
typedef /* [v1_enum] */
enum _BMDStreamingVideoCodec
{
bmdStreamingVideoCodecH264 = 0x48323634
} BMDStreamingVideoCodec;
typedef /* [v1_enum] */
enum _BMDStreamingH264Profile
{
bmdStreamingH264ProfileHigh = 0x68696768,
bmdStreamingH264ProfileMain = 0x6d61696e,
bmdStreamingH264ProfileBaseline = 0x62617365
} BMDStreamingH264Profile;
typedef /* [v1_enum] */
enum _BMDStreamingH264Level
{
bmdStreamingH264Level12 = 0x6c763132,
bmdStreamingH264Level13 = 0x6c763133,
bmdStreamingH264Level2 = 0x6c763220,
bmdStreamingH264Level21 = 0x6c763231,
bmdStreamingH264Level22 = 0x6c763232,
bmdStreamingH264Level3 = 0x6c763320,
bmdStreamingH264Level31 = 0x6c763331,
bmdStreamingH264Level32 = 0x6c763332,
bmdStreamingH264Level4 = 0x6c763420,
bmdStreamingH264Level41 = 0x6c763431,
bmdStreamingH264Level42 = 0x6c763432
} BMDStreamingH264Level;
typedef /* [v1_enum] */
enum _BMDStreamingH264EntropyCoding
{
bmdStreamingH264EntropyCodingCAVLC = 0x45564c43,
bmdStreamingH264EntropyCodingCABAC = 0x45424143
} BMDStreamingH264EntropyCoding;
typedef /* [v1_enum] */
enum _BMDStreamingAudioCodec
{
bmdStreamingAudioCodecAAC = 0x41414320
} BMDStreamingAudioCodec;
typedef /* [v1_enum] */
enum _BMDStreamingEncodingModePropertyID
{
bmdStreamingEncodingPropertyVideoFrameRate = 0x76667274,
bmdStreamingEncodingPropertyVideoBitRateKbps = 0x76627274,
bmdStreamingEncodingPropertyH264Profile = 0x68707266,
bmdStreamingEncodingPropertyH264Level = 0x686c766c,
bmdStreamingEncodingPropertyH264EntropyCoding = 0x68656e74,
bmdStreamingEncodingPropertyH264HasBFrames = 0x68426672,
bmdStreamingEncodingPropertyAudioCodec = 0x61636463,
bmdStreamingEncodingPropertyAudioSampleRate = 0x61737274,
bmdStreamingEncodingPropertyAudioChannelCount = 0x61636863,
bmdStreamingEncodingPropertyAudioBitRateKbps = 0x61627274
} BMDStreamingEncodingModePropertyID;
typedef unsigned long BMDFrameFlags;
typedef unsigned long BMDVideoInputFlags;
typedef unsigned long BMDVideoInputFormatChangedEvents;
typedef unsigned long BMDDetectedVideoInputFormatFlags;
typedef unsigned long BMDDeckLinkCapturePassthroughMode;
typedef unsigned long BMDAnalogVideoFlags;
typedef unsigned long BMDDeviceBusyState;
#if 0
typedef enum _BMDFrameFlags BMDFrameFlags;
typedef enum _BMDVideoInputFlags BMDVideoInputFlags;
typedef enum _BMDVideoInputFormatChangedEvents BMDVideoInputFormatChangedEvents;
typedef enum _BMDDetectedVideoInputFormatFlags BMDDetectedVideoInputFormatFlags;
typedef enum _BMDDeckLinkCapturePassthroughMode BMDDeckLinkCapturePassthroughMode;
typedef enum _BMDAnalogVideoFlags BMDAnalogVideoFlags;
typedef enum _BMDDeviceBusyState BMDDeviceBusyState;
#endif
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 ) ,
bmdDetectedVideoInputDualStream3D = ( 1 << 2 )
} ;
/* [v1_enum] */
enum _BMDDeckLinkCapturePassthroughMode
{
bmdDeckLinkCapturePassthroughModeDirect = 0x70646972,
bmdDeckLinkCapturePassthroughModeCleanSwitch = 0x70636c6e
} ;
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
{
bmdTimecodeRP188VITC1 = 0x72707631,
bmdTimecodeRP188VITC2 = 0x72703132,
bmdTimecodeRP188LTC = 0x72706c74,
bmdTimecodeRP188Any = 0x72703138,
bmdTimecodeVITC = 0x76697463,
bmdTimecodeVITCField2 = 0x76697432,
bmdTimecodeSerial = 0x73657269
} BMDTimecodeFormat;
/* [v1_enum] */
enum _BMDAnalogVideoFlags
{
bmdAnalogVideoFlagCompositeSetup75 = ( 1 << 0 ) ,
bmdAnalogVideoFlagComponentBetacamLevels = ( 1 << 1 )
} ;
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,
bmdIdleVideoOutputDesktop = 0x6465736b
} BMDIdleVideoOutputOperation;
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,
BMDDeckLinkSupportsDesktopDisplay = 0x65787464,
BMDDeckLinkSupportsClockTimingAdjustment = 0x63746164,
BMDDeckLinkSupportsFullDuplex = 0x66647570,
BMDDeckLinkSupportsFullFrameReferenceInputTimingOffset = 0x6672696e,
BMDDeckLinkMaximumAudioChannels = 0x6d616368,
BMDDeckLinkMaximumAnalogAudioChannels = 0x61616368,
BMDDeckLinkNumberOfSubDevices = 0x6e736264,
BMDDeckLinkSubDeviceIndex = 0x73756269,
BMDDeckLinkPersistentID = 0x70656964,
BMDDeckLinkTopologicalID = 0x746f6964,
BMDDeckLinkVideoOutputConnections = 0x766f636e,
BMDDeckLinkVideoInputConnections = 0x7669636e,
BMDDeckLinkAudioOutputConnections = 0x616f636e,
BMDDeckLinkAudioInputConnections = 0x6169636e,
BMDDeckLinkDeviceBusyState = 0x64627374,
BMDDeckLinkVideoIOSupport = 0x76696f73,
BMDDeckLinkVideoInputGainMinimum = 0x7669676d,
BMDDeckLinkVideoInputGainMaximum = 0x76696778,
BMDDeckLinkVideoOutputGainMinimum = 0x766f676d,
BMDDeckLinkVideoOutputGainMaximum = 0x766f6778,
BMDDeckLinkSerialPortDeviceName = 0x736c706e
} BMDDeckLinkAttributeID;
typedef /* [v1_enum] */
enum _BMDDeckLinkAPIInformationID
{
BMDDeckLinkAPIVersion = 0x76657273
} BMDDeckLinkAPIInformationID;
/* [v1_enum] */
enum _BMDDeviceBusyState
{
bmdDeviceCaptureBusy = ( 1 << 0 ) ,
bmdDevicePlaybackBusy = ( 1 << 1 ) ,
bmdDeviceSerialPortBusy = ( 1 << 2 )
} ;
typedef /* [v1_enum] */
enum _BMDVideoIOSupport
{
bmdDeviceSupportsCapture = ( 1 << 0 ) ,
bmdDeviceSupportsPlayback = ( 1 << 1 )
} BMDVideoIOSupport;
typedef /* [v1_enum] */
enum _BMD3DPreviewFormat
{
bmd3DPreviewFormatDefault = 0x64656661,
bmd3DPreviewFormatLeftOnly = 0x6c656674,
bmd3DPreviewFormatRightOnly = 0x72696768,
bmd3DPreviewFormatSideBySide = 0x73696465,
bmd3DPreviewFormatTopBottom = 0x746f7062
} BMD3DPreviewFormat;
typedef /* [v1_enum] */
enum _BMDNotifications
{
bmdPreferencesChanged = 0x70726566
} BMDNotifications;
typedef /* [v1_enum] */
enum _BMDDeckLinkConfigurationID_v10_2
{
bmdDeckLinkConfig3GBpsVideoOutput_v10_2 = 0x33676273
} BMDDeckLinkConfigurationID_v10_2;
typedef /* [v1_enum] */
enum _BMDAudioConnection_v10_2
{
bmdAudioConnectionEmbedded_v10_2 = 0x656d6264,
bmdAudioConnectionAESEBU_v10_2 = 0x61657320,
bmdAudioConnectionAnalog_v10_2 = 0x616e6c67,
bmdAudioConnectionAnalogXLR_v10_2 = 0x61786c72,
bmdAudioConnectionAnalogRCA_v10_2 = 0x61726361
} BMDAudioConnection_v10_2;
typedef /* [v1_enum] */
enum _BMDDeckControlVTRControlState_v8_1
{
bmdDeckControlNotInVTRControlMode_v8_1 = 0x6e76636d,
bmdDeckControlVTRControlPlaying_v8_1 = 0x76747270,
bmdDeckControlVTRControlRecording_v8_1 = 0x76747272,
bmdDeckControlVTRControlStill_v8_1 = 0x76747261,
bmdDeckControlVTRControlSeeking_v8_1 = 0x76747273,
bmdDeckControlVTRControlStopped_v8_1 = 0x7674726f
} BMDDeckControlVTRControlState_v8_1;
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 __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,
/* [annotation][iid_is][out] */
_COM_Outptr_ 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 __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,
/* [annotation][iid_is][out] */
_COM_Outptr_ 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,
/* [annotation][iid_is][out] */
_COM_Outptr_ 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("C418FBDD-0587-48ED-8FE5-640F0A14AF91")
IDeckLink : public IUnknown
{
public:
virtual HRESULT STDMETHODCALLTYPE GetModelName(
/* [out] */ BSTR *modelName) = 0;
virtual HRESULT STDMETHODCALLTYPE GetDisplayName(
/* [out] */ BSTR *displayName) = 0;
};
#else /* C style interface */
typedef struct IDeckLinkVtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
IDeckLink * This,
/* [in] */ REFIID riid,
/* [annotation][iid_is][out] */
_COM_Outptr_ void **ppvObject);
ULONG ( STDMETHODCALLTYPE *AddRef )(
IDeckLink * This);
ULONG ( STDMETHODCALLTYPE *Release )(
IDeckLink * This);
HRESULT ( STDMETHODCALLTYPE *GetModelName )(
IDeckLink * This,
/* [out] */ BSTR *modelName);
HRESULT ( STDMETHODCALLTYPE *GetDisplayName )(
IDeckLink * This,
/* [out] */ BSTR *displayName);
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) )
#define IDeckLink_GetDisplayName(This,displayName) \
( (This)->lpVtbl -> GetDisplayName(This,displayName) )
#endif /* COBJMACROS */
#endif /* C style interface */
#endif /* __IDeckLink_INTERFACE_DEFINED__ */
#ifndef __IDeckLinkConfiguration_INTERFACE_DEFINED__
#define __IDeckLinkConfiguration_INTERFACE_DEFINED__
/* interface IDeckLinkConfiguration */
/* [helpstring][local][uuid][object] */
EXTERN_C const IID IID_IDeckLinkConfiguration;
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("1E69FCF6-4203-4936-8076-2A9F4CFD50CB")
IDeckLinkConfiguration : public IUnknown
{
public:
virtual HRESULT STDMETHODCALLTYPE SetFlag(
/* [in] */ BMDDeckLinkConfigurationID cfgID,
/* [in] */ BOOL value) = 0;
virtual HRESULT STDMETHODCALLTYPE GetFlag(
/* [in] */ BMDDeckLinkConfigurationID cfgID,
/* [out] */ BOOL *value) = 0;
virtual HRESULT STDMETHODCALLTYPE SetInt(
/* [in] */ BMDDeckLinkConfigurationID cfgID,
/* [in] */ LONGLONG value) = 0;
virtual HRESULT STDMETHODCALLTYPE GetInt(
/* [in] */ BMDDeckLinkConfigurationID cfgID,
/* [out] */ LONGLONG *value) = 0;
virtual HRESULT STDMETHODCALLTYPE SetFloat(
/* [in] */ BMDDeckLinkConfigurationID cfgID,
/* [in] */ double value) = 0;
virtual HRESULT STDMETHODCALLTYPE GetFloat(
/* [in] */ BMDDeckLinkConfigurationID cfgID,
/* [out] */ double *value) = 0;
virtual HRESULT STDMETHODCALLTYPE SetString(
/* [in] */ BMDDeckLinkConfigurationID cfgID,
/* [in] */ BSTR value) = 0;
virtual HRESULT STDMETHODCALLTYPE GetString(
/* [in] */ BMDDeckLinkConfigurationID cfgID,
/* [out] */ BSTR *value) = 0;
virtual HRESULT STDMETHODCALLTYPE WriteConfigurationToPreferences( void) = 0;
};
#else /* C style interface */
typedef struct IDeckLinkConfigurationVtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
IDeckLinkConfiguration * This,
/* [in] */ REFIID riid,
/* [annotation][iid_is][out] */
_COM_Outptr_ void **ppvObject);
ULONG ( STDMETHODCALLTYPE *AddRef )(
IDeckLinkConfiguration * This);
ULONG ( STDMETHODCALLTYPE *Release )(
IDeckLinkConfiguration * This);
HRESULT ( STDMETHODCALLTYPE *SetFlag )(
IDeckLinkConfiguration * This,
/* [in] */ BMDDeckLinkConfigurationID cfgID,
/* [in] */ BOOL value);
HRESULT ( STDMETHODCALLTYPE *GetFlag )(
IDeckLinkConfiguration * This,
/* [in] */ BMDDeckLinkConfigurationID cfgID,
/* [out] */ BOOL *value);
HRESULT ( STDMETHODCALLTYPE *SetInt )(
IDeckLinkConfiguration * This,
/* [in] */ BMDDeckLinkConfigurationID cfgID,
/* [in] */ LONGLONG value);
HRESULT ( STDMETHODCALLTYPE *GetInt )(
IDeckLinkConfiguration * This,
/* [in] */ BMDDeckLinkConfigurationID cfgID,
/* [out] */ LONGLONG *value);
HRESULT ( STDMETHODCALLTYPE *SetFloat )(
IDeckLinkConfiguration * This,
/* [in] */ BMDDeckLinkConfigurationID cfgID,
/* [in] */ double value);
HRESULT ( STDMETHODCALLTYPE *GetFloat )(
IDeckLinkConfiguration * This,
/* [in] */ BMDDeckLinkConfigurationID cfgID,
/* [out] */ double *value);
HRESULT ( STDMETHODCALLTYPE *SetString )(
IDeckLinkConfiguration * This,
/* [in] */ BMDDeckLinkConfigurationID cfgID,
/* [in] */ BSTR value);
HRESULT ( STDMETHODCALLTYPE *GetString )(
IDeckLinkConfiguration * This,
/* [in] */ BMDDeckLinkConfigurationID cfgID,
/* [out] */ BSTR *value);
HRESULT ( STDMETHODCALLTYPE *WriteConfigurationToPreferences )(
IDeckLinkConfiguration * This);
END_INTERFACE
} IDeckLinkConfigurationVtbl;
interface IDeckLinkConfiguration
{
CONST_VTBL struct IDeckLinkConfigurationVtbl *lpVtbl;
};
#ifdef COBJMACROS
#define IDeckLinkConfiguration_QueryInterface(This,riid,ppvObject) \
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
#define IDeckLinkConfiguration_AddRef(This) \
( (This)->lpVtbl -> AddRef(This) )
#define IDeckLinkConfiguration_Release(This) \
( (This)->lpVtbl -> Release(This) )
#define IDeckLinkConfiguration_SetFlag(This,cfgID,value) \
( (This)->lpVtbl -> SetFlag(This,cfgID,value) )
#define IDeckLinkConfiguration_GetFlag(This,cfgID,value) \
( (This)->lpVtbl -> GetFlag(This,cfgID,value) )
#define IDeckLinkConfiguration_SetInt(This,cfgID,value) \
( (This)->lpVtbl -> SetInt(This,cfgID,value) )
#define IDeckLinkConfiguration_GetInt(This,cfgID,value) \
( (This)->lpVtbl -> GetInt(This,cfgID,value) )
#define IDeckLinkConfiguration_SetFloat(This,cfgID,value) \
( (This)->lpVtbl -> SetFloat(This,cfgID,value) )
#define IDeckLinkConfiguration_GetFloat(This,cfgID,value) \
( (This)->lpVtbl -> GetFloat(This,cfgID,value) )
#define IDeckLinkConfiguration_SetString(This,cfgID,value) \
( (This)->lpVtbl -> SetString(This,cfgID,value) )
#define IDeckLinkConfiguration_GetString(This,cfgID,value) \
( (This)->lpVtbl -> GetString(This,cfgID,value) )
#define IDeckLinkConfiguration_WriteConfigurationToPreferences(This) \
( (This)->lpVtbl -> WriteConfigurationToPreferences(This) )
#endif /* COBJMACROS */
#endif /* C style interface */
#endif /* __IDeckLinkConfiguration_INTERFACE_DEFINED__ */
#ifndef __IDeckLinkDeckControlStatusCallback_INTERFACE_DEFINED__
#define __IDeckLinkDeckControlStatusCallback_INTERFACE_DEFINED__
/* interface IDeckLinkDeckControlStatusCallback */
/* [helpstring][uuid][object] */
EXTERN_C const IID IID_IDeckLinkDeckControlStatusCallback;
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("53436FFB-B434-4906-BADC-AE3060FFE8EF")
IDeckLinkDeckControlStatusCallback : public IUnknown
{
public:
virtual HRESULT STDMETHODCALLTYPE TimecodeUpdate(
/* [in] */ BMDTimecodeBCD currentTimecode) = 0;
virtual HRESULT STDMETHODCALLTYPE VTRControlStateChanged(
/* [in] */ BMDDeckControlVTRControlState newState,
/* [in] */ BMDDeckControlError error) = 0;
virtual HRESULT STDMETHODCALLTYPE DeckControlEventReceived(
/* [in] */ BMDDeckControlEvent event,
/* [in] */ BMDDeckControlError error) = 0;
virtual HRESULT STDMETHODCALLTYPE DeckControlStatusChanged(
/* [in] */ BMDDeckControlStatusFlags flags,
/* [in] */ unsigned long mask) = 0;
};
#else /* C style interface */
typedef struct IDeckLinkDeckControlStatusCallbackVtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
IDeckLinkDeckControlStatusCallback * This,
/* [in] */ REFIID riid,
/* [annotation][iid_is][out] */
_COM_Outptr_ void **ppvObject);
ULONG ( STDMETHODCALLTYPE *AddRef )(
IDeckLinkDeckControlStatusCallback * This);
ULONG ( STDMETHODCALLTYPE *Release )(
IDeckLinkDeckControlStatusCallback * This);
HRESULT ( STDMETHODCALLTYPE *TimecodeUpdate )(
IDeckLinkDeckControlStatusCallback * This,
/* [in] */ BMDTimecodeBCD currentTimecode);
HRESULT ( STDMETHODCALLTYPE *VTRControlStateChanged )(
IDeckLinkDeckControlStatusCallback * This,
/* [in] */ BMDDeckControlVTRControlState newState,
/* [in] */ BMDDeckControlError error);
HRESULT ( STDMETHODCALLTYPE *DeckControlEventReceived )(
IDeckLinkDeckControlStatusCallback * This,
/* [in] */ BMDDeckControlEvent event,
/* [in] */ BMDDeckControlError error);
HRESULT ( STDMETHODCALLTYPE *DeckControlStatusChanged )(
IDeckLinkDeckControlStatusCallback * This,
/* [in] */ BMDDeckControlStatusFlags flags,
/* [in] */ unsigned long mask);
END_INTERFACE
} IDeckLinkDeckControlStatusCallbackVtbl;
interface IDeckLinkDeckControlStatusCallback
{
CONST_VTBL struct IDeckLinkDeckControlStatusCallbackVtbl *lpVtbl;
};
#ifdef COBJMACROS
#define IDeckLinkDeckControlStatusCallback_QueryInterface(This,riid,ppvObject) \
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
#define IDeckLinkDeckControlStatusCallback_AddRef(This) \
( (This)->lpVtbl -> AddRef(This) )
#define IDeckLinkDeckControlStatusCallback_Release(This) \
( (This)->lpVtbl -> Release(This) )
#define IDeckLinkDeckControlStatusCallback_TimecodeUpdate(This,currentTimecode) \
( (This)->lpVtbl -> TimecodeUpdate(This,currentTimecode) )
#define IDeckLinkDeckControlStatusCallback_VTRControlStateChanged(This,newState,error) \
( (This)->lpVtbl -> VTRControlStateChanged(This,newState,error) )
#define IDeckLinkDeckControlStatusCallback_DeckControlEventReceived(This,event,error) \
( (This)->lpVtbl -> DeckControlEventReceived(This,event,error) )
#define IDeckLinkDeckControlStatusCallback_DeckControlStatusChanged(This,flags,mask) \
( (This)->lpVtbl -> DeckControlStatusChanged(This,flags,mask) )
#endif /* COBJMACROS */
#endif /* C style interface */
#endif /* __IDeckLinkDeckControlStatusCallback_INTERFACE_DEFINED__ */
#ifndef __IDeckLinkDeckControl_INTERFACE_DEFINED__
#define __IDeckLinkDeckControl_INTERFACE_DEFINED__
/* interface IDeckLinkDeckControl */
/* [helpstring][uuid][object] */
EXTERN_C const IID IID_IDeckLinkDeckControl;
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("8E1C3ACE-19C7-4E00-8B92-D80431D958BE")
IDeckLinkDeckControl : public IUnknown
{
public:
virtual HRESULT STDMETHODCALLTYPE Open(
/* [in] */ BMDTimeScale timeScale,
/* [in] */ BMDTimeValue timeValue,
/* [in] */ BOOL timecodeIsDropFrame,
/* [out] */ BMDDeckControlError *error) = 0;
virtual HRESULT STDMETHODCALLTYPE Close(
/* [in] */ BOOL standbyOn) = 0;
virtual HRESULT STDMETHODCALLTYPE GetCurrentState(
/* [out] */ BMDDeckControlMode *mode,
/* [out] */ BMDDeckControlVTRControlState *vtrControlState,
/* [out] */ BMDDeckControlStatusFlags *flags) = 0;
virtual HRESULT STDMETHODCALLTYPE SetStandby(
/* [in] */ BOOL standbyOn) = 0;
virtual HRESULT STDMETHODCALLTYPE SendCommand(
/* [in] */ unsigned char *inBuffer,
/* [in] */ unsigned long inBufferSize,
/* [out] */ unsigned char *outBuffer,
/* [out] */ unsigned long *outDataSize,
/* [in] */ unsigned long outBufferSize,
/* [out] */ BMDDeckControlError *error) = 0;
virtual HRESULT STDMETHODCALLTYPE Play(
/* [out] */ BMDDeckControlError *error) = 0;
virtual HRESULT STDMETHODCALLTYPE Stop(
/* [out] */ BMDDeckControlError *error) = 0;
virtual HRESULT STDMETHODCALLTYPE TogglePlayStop(
/* [out] */ BMDDeckControlError *error) = 0;
virtual HRESULT STDMETHODCALLTYPE Eject(
/* [out] */ BMDDeckControlError *error) = 0;
virtual HRESULT STDMETHODCALLTYPE GoToTimecode(
/* [in] */ BMDTimecodeBCD timecode,
/* [out] */ BMDDeckControlError *error) = 0;
virtual HRESULT STDMETHODCALLTYPE FastForward(
/* [in] */ BOOL viewTape,
/* [out] */ BMDDeckControlError *error) = 0;
virtual HRESULT STDMETHODCALLTYPE Rewind(
/* [in] */ BOOL viewTape,
/* [out] */ BMDDeckControlError *error) = 0;
virtual HRESULT STDMETHODCALLTYPE StepForward(
/* [out] */ BMDDeckControlError *error) = 0;
virtual HRESULT STDMETHODCALLTYPE StepBack(
/* [out] */ BMDDeckControlError *error) = 0;
virtual HRESULT STDMETHODCALLTYPE Jog(
/* [in] */ double rate,
/* [out] */ BMDDeckControlError *error) = 0;
virtual HRESULT STDMETHODCALLTYPE Shuttle(
/* [in] */ double rate,
/* [out] */ BMDDeckControlError *error) = 0;
virtual HRESULT STDMETHODCALLTYPE GetTimecodeString(
/* [out] */ BSTR *currentTimeCode,
/* [out] */ BMDDeckControlError *error) = 0;
virtual HRESULT STDMETHODCALLTYPE GetTimecode(
/* [out] */ IDeckLinkTimecode **currentTimecode,
/* [out] */ BMDDeckControlError *error) = 0;
virtual HRESULT STDMETHODCALLTYPE GetTimecodeBCD(
/* [out] */ BMDTimecodeBCD *currentTimecode,
/* [out] */ BMDDeckControlError *error) = 0;
virtual HRESULT STDMETHODCALLTYPE SetPreroll(
/* [in] */ unsigned long prerollSeconds) = 0;
virtual HRESULT STDMETHODCALLTYPE GetPreroll(
/* [out] */ unsigned long *prerollSeconds) = 0;
virtual HRESULT STDMETHODCALLTYPE SetExportOffset(
/* [in] */ long exportOffsetFields) = 0;
virtual HRESULT STDMETHODCALLTYPE GetExportOffset(
/* [out] */ long *exportOffsetFields) = 0;
virtual HRESULT STDMETHODCALLTYPE GetManualExportOffset(
/* [out] */ long *deckManualExportOffsetFields) = 0;
virtual HRESULT STDMETHODCALLTYPE SetCaptureOffset(
/* [in] */ long captureOffsetFields) = 0;
virtual HRESULT STDMETHODCALLTYPE GetCaptureOffset(
/* [out] */ long *captureOffsetFields) = 0;
virtual HRESULT STDMETHODCALLTYPE StartExport(
/* [in] */ BMDTimecodeBCD inTimecode,
/* [in] */ BMDTimecodeBCD outTimecode,
/* [in] */ BMDDeckControlExportModeOpsFlags exportModeOps,
/* [out] */ BMDDeckControlError *error) = 0;
virtual HRESULT STDMETHODCALLTYPE StartCapture(
/* [in] */ BOOL useVITC,
/* [in] */ BMDTimecodeBCD inTimecode,
/* [in] */ BMDTimecodeBCD outTimecode,
/* [out] */ BMDDeckControlError *error) = 0;
virtual HRESULT STDMETHODCALLTYPE GetDeviceID(
/* [out] */ unsigned short *deviceId,
/* [out] */ BMDDeckControlError *error) = 0;
virtual HRESULT STDMETHODCALLTYPE Abort( void) = 0;
virtual HRESULT STDMETHODCALLTYPE CrashRecordStart(
/* [out] */ BMDDeckControlError *error) = 0;
virtual HRESULT STDMETHODCALLTYPE CrashRecordStop(
/* [out] */ BMDDeckControlError *error) = 0;
virtual HRESULT STDMETHODCALLTYPE SetCallback(
/* [in] */ IDeckLinkDeckControlStatusCallback *callback) = 0;
};
#else /* C style interface */
typedef struct IDeckLinkDeckControlVtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
IDeckLinkDeckControl * This,
/* [in] */ REFIID riid,
/* [annotation][iid_is][out] */
_COM_Outptr_ void **ppvObject);
ULONG ( STDMETHODCALLTYPE *AddRef )(
IDeckLinkDeckControl * This);
ULONG ( STDMETHODCALLTYPE *Release )(
IDeckLinkDeckControl * This);
HRESULT ( STDMETHODCALLTYPE *Open )(
IDeckLinkDeckControl * This,
/* [in] */ BMDTimeScale timeScale,
/* [in] */ BMDTimeValue timeValue,
/* [in] */ BOOL timecodeIsDropFrame,
/* [out] */ BMDDeckControlError *error);
HRESULT ( STDMETHODCALLTYPE *Close )(
IDeckLinkDeckControl * This,
/* [in] */ BOOL standbyOn);
HRESULT ( STDMETHODCALLTYPE *GetCurrentState )(
IDeckLinkDeckControl * This,
/* [out] */ BMDDeckControlMode *mode,
/* [out] */ BMDDeckControlVTRControlState *vtrControlState,
/* [out] */ BMDDeckControlStatusFlags *flags);
HRESULT ( STDMETHODCALLTYPE *SetStandby )(
IDeckLinkDeckControl * This,
/* [in] */ BOOL standbyOn);
HRESULT ( STDMETHODCALLTYPE *SendCommand )(
IDeckLinkDeckControl * This,
/* [in] */ unsigned char *inBuffer,
/* [in] */ unsigned long inBufferSize,
/* [out] */ unsigned char *outBuffer,
/* [out] */ unsigned long *outDataSize,
/* [in] */ unsigned long outBufferSize,
/* [out] */ BMDDeckControlError *error);
HRESULT ( STDMETHODCALLTYPE *Play )(
IDeckLinkDeckControl * This,
/* [out] */ BMDDeckControlError *error);
HRESULT ( STDMETHODCALLTYPE *Stop )(
IDeckLinkDeckControl * This,
/* [out] */ BMDDeckControlError *error);
HRESULT ( STDMETHODCALLTYPE *TogglePlayStop )(
IDeckLinkDeckControl * This,
/* [out] */ BMDDeckControlError *error);
HRESULT ( STDMETHODCALLTYPE *Eject )(
IDeckLinkDeckControl * This,
/* [out] */ BMDDeckControlError *error);
HRESULT ( STDMETHODCALLTYPE *GoToTimecode )(
IDeckLinkDeckControl * This,
/* [in] */ BMDTimecodeBCD timecode,
/* [out] */ BMDDeckControlError *error);
HRESULT ( STDMETHODCALLTYPE *FastForward )(
IDeckLinkDeckControl * This,
/* [in] */ BOOL viewTape,
/* [out] */ BMDDeckControlError *error);
HRESULT ( STDMETHODCALLTYPE *Rewind )(
IDeckLinkDeckControl * This,
/* [in] */ BOOL viewTape,
/* [out] */ BMDDeckControlError *error);
HRESULT ( STDMETHODCALLTYPE *StepForward )(
IDeckLinkDeckControl * This,
/* [out] */ BMDDeckControlError *error);
HRESULT ( STDMETHODCALLTYPE *StepBack )(
IDeckLinkDeckControl * This,
/* [out] */ BMDDeckControlError *error);
HRESULT ( STDMETHODCALLTYPE *Jog )(
IDeckLinkDeckControl * This,
/* [in] */ double rate,
/* [out] */ BMDDeckControlError *error);
HRESULT ( STDMETHODCALLTYPE *Shuttle )(
IDeckLinkDeckControl * This,
/* [in] */ double rate,
/* [out] */ BMDDeckControlError *error);
HRESULT ( STDMETHODCALLTYPE *GetTimecodeString )(
IDeckLinkDeckControl * This,
/* [out] */ BSTR *currentTimeCode,
/* [out] */ BMDDeckControlError *error);
HRESULT ( STDMETHODCALLTYPE *GetTimecode )(
IDeckLinkDeckControl * This,
/* [out] */ IDeckLinkTimecode **currentTimecode,
/* [out] */ BMDDeckControlError *error);
HRESULT ( STDMETHODCALLTYPE *GetTimecodeBCD )(
IDeckLinkDeckControl * This,
/* [out] */ BMDTimecodeBCD *currentTimecode,
/* [out] */ BMDDeckControlError *error);
HRESULT ( STDMETHODCALLTYPE *SetPreroll )(
IDeckLinkDeckControl * This,
/* [in] */ unsigned long prerollSeconds);
HRESULT ( STDMETHODCALLTYPE *GetPreroll )(
IDeckLinkDeckControl * This,
/* [out] */ unsigned long *prerollSeconds);
HRESULT ( STDMETHODCALLTYPE *SetExportOffset )(
IDeckLinkDeckControl * This,
/* [in] */ long exportOffsetFields);
HRESULT ( STDMETHODCALLTYPE *GetExportOffset )(
IDeckLinkDeckControl * This,
/* [out] */ long *exportOffsetFields);
HRESULT ( STDMETHODCALLTYPE *GetManualExportOffset )(
IDeckLinkDeckControl * This,
/* [out] */ long *deckManualExportOffsetFields);
HRESULT ( STDMETHODCALLTYPE *SetCaptureOffset )(
IDeckLinkDeckControl * This,
/* [in] */ long captureOffsetFields);
HRESULT ( STDMETHODCALLTYPE *GetCaptureOffset )(
IDeckLinkDeckControl * This,
/* [out] */ long *captureOffsetFields);
HRESULT ( STDMETHODCALLTYPE *StartExport )(
IDeckLinkDeckControl * This,
/* [in] */ BMDTimecodeBCD inTimecode,
/* [in] */ BMDTimecodeBCD outTimecode,
/* [in] */ BMDDeckControlExportModeOpsFlags exportModeOps,
/* [out] */ BMDDeckControlError *error);
HRESULT ( STDMETHODCALLTYPE *StartCapture )(
IDeckLinkDeckControl * This,
/* [in] */ BOOL useVITC,
/* [in] */ BMDTimecodeBCD inTimecode,
/* [in] */ BMDTimecodeBCD outTimecode,
/* [out] */ BMDDeckControlError *error);
HRESULT ( STDMETHODCALLTYPE *GetDeviceID )(
IDeckLinkDeckControl * This,
/* [out] */ unsigned short *deviceId,
/* [out] */ BMDDeckControlError *error);
HRESULT ( STDMETHODCALLTYPE *Abort )(
IDeckLinkDeckControl * This);
HRESULT ( STDMETHODCALLTYPE *CrashRecordStart )(
IDeckLinkDeckControl * This,
/* [out] */ BMDDeckControlError *error);
HRESULT ( STDMETHODCALLTYPE *CrashRecordStop )(
IDeckLinkDeckControl * This,
/* [out] */ BMDDeckControlError *error);
HRESULT ( STDMETHODCALLTYPE *SetCallback )(
IDeckLinkDeckControl * This,
/* [in] */ IDeckLinkDeckControlStatusCallback *callback);
END_INTERFACE
} IDeckLinkDeckControlVtbl;
interface IDeckLinkDeckControl
{
CONST_VTBL struct IDeckLinkDeckControlVtbl *lpVtbl;
};
#ifdef COBJMACROS
#define IDeckLinkDeckControl_QueryInterface(This,riid,ppvObject) \
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
#define IDeckLinkDeckControl_AddRef(This) \
( (This)->lpVtbl -> AddRef(This) )
#define IDeckLinkDeckControl_Release(This) \
( (This)->lpVtbl -> Release(This) )
#define IDeckLinkDeckControl_Open(This,timeScale,timeValue,timecodeIsDropFrame,error) \
( (This)->lpVtbl -> Open(This,timeScale,timeValue,timecodeIsDropFrame,error) )
#define IDeckLinkDeckControl_Close(This,standbyOn) \
( (This)->lpVtbl -> Close(This,standbyOn) )
#define IDeckLinkDeckControl_GetCurrentState(This,mode,vtrControlState,flags) \
( (This)->lpVtbl -> GetCurrentState(This,mode,vtrControlState,flags) )
#define IDeckLinkDeckControl_SetStandby(This,standbyOn) \
( (This)->lpVtbl -> SetStandby(This,standbyOn) )
#define IDeckLinkDeckControl_SendCommand(This,inBuffer,inBufferSize,outBuffer,outDataSize,outBufferSize,error) \
( (This)->lpVtbl -> SendCommand(This,inBuffer,inBufferSize,outBuffer,outDataSize,outBufferSize,error) )
#define IDeckLinkDeckControl_Play(This,error) \
( (This)->lpVtbl -> Play(This,error) )
#define IDeckLinkDeckControl_Stop(This,error) \
( (This)->lpVtbl -> Stop(This,error) )
#define IDeckLinkDeckControl_TogglePlayStop(This,error) \
( (This)->lpVtbl -> TogglePlayStop(This,error) )
#define IDeckLinkDeckControl_Eject(This,error) \
( (This)->lpVtbl -> Eject(This,error) )
#define IDeckLinkDeckControl_GoToTimecode(This,timecode,error) \
( (This)->lpVtbl -> GoToTimecode(This,timecode,error) )
#define IDeckLinkDeckControl_FastForward(This,viewTape,error) \
( (This)->lpVtbl -> FastForward(This,viewTape,error) )
#define IDeckLinkDeckControl_Rewind(This,viewTape,error) \
( (This)->lpVtbl -> Rewind(This,viewTape,error) )
#define IDeckLinkDeckControl_StepForward(This,error) \
( (This)->lpVtbl -> StepForward(This,error) )
#define IDeckLinkDeckControl_StepBack(This,error) \
( (This)->lpVtbl -> StepBack(This,error) )
#define IDeckLinkDeckControl_Jog(This,rate,error) \
( (This)->lpVtbl -> Jog(This,rate,error) )
#define IDeckLinkDeckControl_Shuttle(This,rate,error) \
( (This)->lpVtbl -> Shuttle(This,rate,error) )
#define IDeckLinkDeckControl_GetTimecodeString(This,currentTimeCode,error) \
( (This)->lpVtbl -> GetTimecodeString(This,currentTimeCode,error) )
#define IDeckLinkDeckControl_GetTimecode(This,currentTimecode,error) \
( (This)->lpVtbl -> GetTimecode(This,currentTimecode,error) )
#define IDeckLinkDeckControl_GetTimecodeBCD(This,currentTimecode,error) \
( (This)->lpVtbl -> GetTimecodeBCD(This,currentTimecode,error) )
#define IDeckLinkDeckControl_SetPreroll(This,prerollSeconds) \
( (This)->lpVtbl -> SetPreroll(This,prerollSeconds) )
#define IDeckLinkDeckControl_GetPreroll(This,prerollSeconds) \
( (This)->lpVtbl -> GetPreroll(This,prerollSeconds) )
#define IDeckLinkDeckControl_SetExportOffset(This,exportOffsetFields) \
( (This)->lpVtbl -> SetExportOffset(This,exportOffsetFields) )
#define IDeckLinkDeckControl_GetExportOffset(This,exportOffsetFields) \
( (This)->lpVtbl -> GetExportOffset(This,exportOffsetFields) )
#define IDeckLinkDeckControl_GetManualExportOffset(This,deckManualExportOffsetFields) \
( (This)->lpVtbl -> GetManualExportOffset(This,deckManualExportOffsetFields) )
#define IDeckLinkDeckControl_SetCaptureOffset(This,captureOffsetFields) \
( (This)->lpVtbl -> SetCaptureOffset(This,captureOffsetFields) )
#define IDeckLinkDeckControl_GetCaptureOffset(This,captureOffsetFields) \
( (This)->lpVtbl -> GetCaptureOffset(This,captureOffsetFields) )
#define IDeckLinkDeckControl_StartExport(This,inTimecode,outTimecode,exportModeOps,error) \
( (This)->lpVtbl -> StartExport(This,inTimecode,outTimecode,exportModeOps,error) )
#define IDeckLinkDeckControl_StartCapture(This,useVITC,inTimecode,outTimecode,error) \
( (This)->lpVtbl -> StartCapture(This,useVITC,inTimecode,outTimecode,error) )
#define IDeckLinkDeckControl_GetDeviceID(This,deviceId,error) \
( (This)->lpVtbl -> GetDeviceID(This,deviceId,error) )
#define IDeckLinkDeckControl_Abort(This) \
( (This)->lpVtbl -> Abort(This) )
#define IDeckLinkDeckControl_CrashRecordStart(This,error) \
( (This)->lpVtbl -> CrashRecordStart(This,error) )
#define IDeckLinkDeckControl_CrashRecordStop(This,error) \
( (This)->lpVtbl -> CrashRecordStop(This,error) )
#define IDeckLinkDeckControl_SetCallback(This,callback) \
( (This)->lpVtbl -> SetCallback(This,callback) )
#endif /* COBJMACROS */
#endif /* C style interface */
#endif /* __IDeckLinkDeckControl_INTERFACE_DEFINED__ */
#ifndef __IBMDStreamingDeviceNotificationCallback_INTERFACE_DEFINED__
#define __IBMDStreamingDeviceNotificationCallback_INTERFACE_DEFINED__
/* interface IBMDStreamingDeviceNotificationCallback */
/* [helpstring][uuid][object] */
EXTERN_C const IID IID_IBMDStreamingDeviceNotificationCallback;
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("F9531D64-3305-4B29-A387-7F74BB0D0E84")
IBMDStreamingDeviceNotificationCallback : public IUnknown
{
public:
virtual HRESULT STDMETHODCALLTYPE StreamingDeviceArrived(
/* [in] */ IDeckLink *device) = 0;
virtual HRESULT STDMETHODCALLTYPE StreamingDeviceRemoved(
/* [in] */ IDeckLink *device) = 0;
virtual HRESULT STDMETHODCALLTYPE StreamingDeviceModeChanged(
/* [in] */ IDeckLink *device,
/* [in] */ BMDStreamingDeviceMode mode) = 0;
};
#else /* C style interface */
typedef struct IBMDStreamingDeviceNotificationCallbackVtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
IBMDStreamingDeviceNotificationCallback * This,
/* [in] */ REFIID riid,
/* [annotation][iid_is][out] */
_COM_Outptr_ void **ppvObject);
ULONG ( STDMETHODCALLTYPE *AddRef )(
IBMDStreamingDeviceNotificationCallback * This);
ULONG ( STDMETHODCALLTYPE *Release )(
IBMDStreamingDeviceNotificationCallback * This);
HRESULT ( STDMETHODCALLTYPE *StreamingDeviceArrived )(
IBMDStreamingDeviceNotificationCallback * This,
/* [in] */ IDeckLink *device);
HRESULT ( STDMETHODCALLTYPE *StreamingDeviceRemoved )(
IBMDStreamingDeviceNotificationCallback * This,
/* [in] */ IDeckLink *device);
HRESULT ( STDMETHODCALLTYPE *StreamingDeviceModeChanged )(
IBMDStreamingDeviceNotificationCallback * This,
/* [in] */ IDeckLink *device,
/* [in] */ BMDStreamingDeviceMode mode);
END_INTERFACE
} IBMDStreamingDeviceNotificationCallbackVtbl;
interface IBMDStreamingDeviceNotificationCallback
{
CONST_VTBL struct IBMDStreamingDeviceNotificationCallbackVtbl *lpVtbl;
};
#ifdef COBJMACROS
#define IBMDStreamingDeviceNotificationCallback_QueryInterface(This,riid,ppvObject) \
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
#define IBMDStreamingDeviceNotificationCallback_AddRef(This) \
( (This)->lpVtbl -> AddRef(This) )
#define IBMDStreamingDeviceNotificationCallback_Release(This) \
( (This)->lpVtbl -> Release(This) )
#define IBMDStreamingDeviceNotificationCallback_StreamingDeviceArrived(This,device) \
( (This)->lpVtbl -> StreamingDeviceArrived(This,device) )
#define IBMDStreamingDeviceNotificationCallback_StreamingDeviceRemoved(This,device) \
( (This)->lpVtbl -> StreamingDeviceRemoved(This,device) )
#define IBMDStreamingDeviceNotificationCallback_StreamingDeviceModeChanged(This,device,mode) \
( (This)->lpVtbl -> StreamingDeviceModeChanged(This,device,mode) )
#endif /* COBJMACROS */
#endif /* C style interface */
#endif /* __IBMDStreamingDeviceNotificationCallback_INTERFACE_DEFINED__ */
#ifndef __IBMDStreamingH264InputCallback_INTERFACE_DEFINED__
#define __IBMDStreamingH264InputCallback_INTERFACE_DEFINED__
/* interface IBMDStreamingH264InputCallback */
/* [helpstring][uuid][object] */
EXTERN_C const IID IID_IBMDStreamingH264InputCallback;
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("823C475F-55AE-46F9-890C-537CC5CEDCCA")
IBMDStreamingH264InputCallback : public IUnknown
{
public:
virtual HRESULT STDMETHODCALLTYPE H264NALPacketArrived(
/* [in] */ IBMDStreamingH264NALPacket *nalPacket) = 0;
virtual HRESULT STDMETHODCALLTYPE H264AudioPacketArrived(
/* [in] */ IBMDStreamingAudioPacket *audioPacket) = 0;
virtual HRESULT STDMETHODCALLTYPE MPEG2TSPacketArrived(
/* [in] */ IBMDStreamingMPEG2TSPacket *tsPacket) = 0;
virtual HRESULT STDMETHODCALLTYPE H264VideoInputConnectorScanningChanged( void) = 0;
virtual HRESULT STDMETHODCALLTYPE H264VideoInputConnectorChanged( void) = 0;
virtual HRESULT STDMETHODCALLTYPE H264VideoInputModeChanged( void) = 0;
};
#else /* C style interface */
typedef struct IBMDStreamingH264InputCallbackVtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
IBMDStreamingH264InputCallback * This,
/* [in] */ REFIID riid,
/* [annotation][iid_is][out] */
_COM_Outptr_ void **ppvObject);
ULONG ( STDMETHODCALLTYPE *AddRef )(
IBMDStreamingH264InputCallback * This);
ULONG ( STDMETHODCALLTYPE *Release )(
IBMDStreamingH264InputCallback * This);
HRESULT ( STDMETHODCALLTYPE *H264NALPacketArrived )(
IBMDStreamingH264InputCallback * This,
/* [in] */ IBMDStreamingH264NALPacket *nalPacket);
HRESULT ( STDMETHODCALLTYPE *H264AudioPacketArrived )(
IBMDStreamingH264InputCallback * This,
/* [in] */ IBMDStreamingAudioPacket *audioPacket);
HRESULT ( STDMETHODCALLTYPE *MPEG2TSPacketArrived )(
IBMDStreamingH264InputCallback * This,
/* [in] */ IBMDStreamingMPEG2TSPacket *tsPacket);
HRESULT ( STDMETHODCALLTYPE *H264VideoInputConnectorScanningChanged )(
IBMDStreamingH264InputCallback * This);
HRESULT ( STDMETHODCALLTYPE *H264VideoInputConnectorChanged )(
IBMDStreamingH264InputCallback * This);
HRESULT ( STDMETHODCALLTYPE *H264VideoInputModeChanged )(
IBMDStreamingH264InputCallback * This);
END_INTERFACE
} IBMDStreamingH264InputCallbackVtbl;
interface IBMDStreamingH264InputCallback
{
CONST_VTBL struct IBMDStreamingH264InputCallbackVtbl *lpVtbl;
};
#ifdef COBJMACROS
#define IBMDStreamingH264InputCallback_QueryInterface(This,riid,ppvObject) \
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
#define IBMDStreamingH264InputCallback_AddRef(This) \
( (This)->lpVtbl -> AddRef(This) )
#define IBMDStreamingH264InputCallback_Release(This) \
( (This)->lpVtbl -> Release(This) )
#define IBMDStreamingH264InputCallback_H264NALPacketArrived(This,nalPacket) \
( (This)->lpVtbl -> H264NALPacketArrived(This,nalPacket) )
#define IBMDStreamingH264InputCallback_H264AudioPacketArrived(This,audioPacket) \
( (This)->lpVtbl -> H264AudioPacketArrived(This,audioPacket) )
#define IBMDStreamingH264InputCallback_MPEG2TSPacketArrived(This,tsPacket) \
( (This)->lpVtbl -> MPEG2TSPacketArrived(This,tsPacket) )
#define IBMDStreamingH264InputCallback_H264VideoInputConnectorScanningChanged(This) \
( (This)->lpVtbl -> H264VideoInputConnectorScanningChanged(This) )
#define IBMDStreamingH264InputCallback_H264VideoInputConnectorChanged(This) \
( (This)->lpVtbl -> H264VideoInputConnectorChanged(This) )
#define IBMDStreamingH264InputCallback_H264VideoInputModeChanged(This) \
( (This)->lpVtbl -> H264VideoInputModeChanged(This) )
#endif /* COBJMACROS */
#endif /* C style interface */
#endif /* __IBMDStreamingH264InputCallback_INTERFACE_DEFINED__ */
#ifndef __IBMDStreamingDiscovery_INTERFACE_DEFINED__
#define __IBMDStreamingDiscovery_INTERFACE_DEFINED__
/* interface IBMDStreamingDiscovery */
/* [helpstring][uuid][object] */
EXTERN_C const IID IID_IBMDStreamingDiscovery;
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("2C837444-F989-4D87-901A-47C8A36D096D")
IBMDStreamingDiscovery : public IUnknown
{
public:
virtual HRESULT STDMETHODCALLTYPE InstallDeviceNotifications(
/* [in] */ IBMDStreamingDeviceNotificationCallback *theCallback) = 0;
virtual HRESULT STDMETHODCALLTYPE UninstallDeviceNotifications( void) = 0;
};
#else /* C style interface */
typedef struct IBMDStreamingDiscoveryVtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
IBMDStreamingDiscovery * This,
/* [in] */ REFIID riid,
/* [annotation][iid_is][out] */
_COM_Outptr_ void **ppvObject);
ULONG ( STDMETHODCALLTYPE *AddRef )(
IBMDStreamingDiscovery * This);
ULONG ( STDMETHODCALLTYPE *Release )(
IBMDStreamingDiscovery * This);
HRESULT ( STDMETHODCALLTYPE *InstallDeviceNotifications )(
IBMDStreamingDiscovery * This,
/* [in] */ IBMDStreamingDeviceNotificationCallback *theCallback);
HRESULT ( STDMETHODCALLTYPE *UninstallDeviceNotifications )(
IBMDStreamingDiscovery * This);
END_INTERFACE
} IBMDStreamingDiscoveryVtbl;
interface IBMDStreamingDiscovery
{
CONST_VTBL struct IBMDStreamingDiscoveryVtbl *lpVtbl;
};
#ifdef COBJMACROS
#define IBMDStreamingDiscovery_QueryInterface(This,riid,ppvObject) \
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
#define IBMDStreamingDiscovery_AddRef(This) \
( (This)->lpVtbl -> AddRef(This) )
#define IBMDStreamingDiscovery_Release(This) \
( (This)->lpVtbl -> Release(This) )
#define IBMDStreamingDiscovery_InstallDeviceNotifications(This,theCallback) \
( (This)->lpVtbl -> InstallDeviceNotifications(This,theCallback) )
#define IBMDStreamingDiscovery_UninstallDeviceNotifications(This) \
( (This)->lpVtbl -> UninstallDeviceNotifications(This) )
#endif /* COBJMACROS */
#endif /* C style interface */
#endif /* __IBMDStreamingDiscovery_INTERFACE_DEFINED__ */
#ifndef __IBMDStreamingVideoEncodingMode_INTERFACE_DEFINED__
#define __IBMDStreamingVideoEncodingMode_INTERFACE_DEFINED__
/* interface IBMDStreamingVideoEncodingMode */
/* [helpstring][uuid][object] */
EXTERN_C const IID IID_IBMDStreamingVideoEncodingMode;
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("1AB8035B-CD13-458D-B6DF-5E8F7C2141D9")
IBMDStreamingVideoEncodingMode : public IUnknown
{
public:
virtual HRESULT STDMETHODCALLTYPE GetName(
/* [out] */ BSTR *name) = 0;
virtual unsigned int STDMETHODCALLTYPE GetPresetID( void) = 0;
virtual unsigned int STDMETHODCALLTYPE GetSourcePositionX( void) = 0;
virtual unsigned int STDMETHODCALLTYPE GetSourcePositionY( void) = 0;
virtual unsigned int STDMETHODCALLTYPE GetSourceWidth( void) = 0;
virtual unsigned int STDMETHODCALLTYPE GetSourceHeight( void) = 0;
virtual unsigned int STDMETHODCALLTYPE GetDestWidth( void) = 0;
virtual unsigned int STDMETHODCALLTYPE GetDestHeight( void) = 0;
virtual HRESULT STDMETHODCALLTYPE GetFlag(
/* [in] */ BMDStreamingEncodingModePropertyID cfgID,
/* [out] */ BOOL *value) = 0;
virtual HRESULT STDMETHODCALLTYPE GetInt(
/* [in] */ BMDStreamingEncodingModePropertyID cfgID,
/* [out] */ LONGLONG *value) = 0;
virtual HRESULT STDMETHODCALLTYPE GetFloat(
/* [in] */ BMDStreamingEncodingModePropertyID cfgID,
/* [out] */ double *value) = 0;
virtual HRESULT STDMETHODCALLTYPE GetString(
/* [in] */ BMDStreamingEncodingModePropertyID cfgID,
/* [out] */ BSTR *value) = 0;
virtual HRESULT STDMETHODCALLTYPE CreateMutableVideoEncodingMode(
/* [out] */ IBMDStreamingMutableVideoEncodingMode **newEncodingMode) = 0;
};
#else /* C style interface */
typedef struct IBMDStreamingVideoEncodingModeVtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
IBMDStreamingVideoEncodingMode * This,
/* [in] */ REFIID riid,
/* [annotation][iid_is][out] */
_COM_Outptr_ void **ppvObject);
ULONG ( STDMETHODCALLTYPE *AddRef )(
IBMDStreamingVideoEncodingMode * This);
ULONG ( STDMETHODCALLTYPE *Release )(
IBMDStreamingVideoEncodingMode * This);
HRESULT ( STDMETHODCALLTYPE *GetName )(
IBMDStreamingVideoEncodingMode * This,
/* [out] */ BSTR *name);
unsigned int ( STDMETHODCALLTYPE *GetPresetID )(
IBMDStreamingVideoEncodingMode * This);
unsigned int ( STDMET