blob: 18a0c5208251afef4b9a15c37dc90ba4c72c8c45 [file] [log] [blame]
/* this ALWAYS GENERATED file contains the definitions for the interfaces */
/* File created by MIDL compiler version 8.00.0603 */
/* at Wed Jan 25 17:42:19 2017
*/
/* Compiler settings for ..\..\..\..\..\..\blackmagic\SDK\Win\include\DeckLinkAPI.idl:
Oicf, W1, Zp8, env=Win64 (32b run), target_arch=AMD64 8.00.0603
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_h__
#define __DeckLinkAPI_h_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 __IDeckLinkEncoderConfiguration_FWD_DEFINED__
#define __IDeckLinkEncoderConfiguration_FWD_DEFINED__
typedef interface IDeckLinkEncoderConfiguration IDeckLinkEncoderConfiguration;
#endif /* __IDeckLinkEncoderConfiguration_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 __IDeckLinkEncoderInputCallback_FWD_DEFINED__
#define __IDeckLinkEncoderInputCallback_FWD_DEFINED__
typedef interface IDeckLinkEncoderInputCallback IDeckLinkEncoderInputCallback;
#endif /* __IDeckLinkEncoderInputCallback_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 __IDeckLinkEncoderInput_FWD_DEFINED__
#define __IDeckLinkEncoderInput_FWD_DEFINED__
typedef interface IDeckLinkEncoderInput IDeckLinkEncoderInput;
#endif /* __IDeckLinkEncoderInput_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 __IDeckLinkVideoFrameMetadataExtensions_FWD_DEFINED__
#define __IDeckLinkVideoFrameMetadataExtensions_FWD_DEFINED__
typedef interface IDeckLinkVideoFrameMetadataExtensions IDeckLinkVideoFrameMetadataExtensions;
#endif /* __IDeckLinkVideoFrameMetadataExtensions_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 __IDeckLinkEncoderPacket_FWD_DEFINED__
#define __IDeckLinkEncoderPacket_FWD_DEFINED__
typedef interface IDeckLinkEncoderPacket IDeckLinkEncoderPacket;
#endif /* __IDeckLinkEncoderPacket_FWD_DEFINED__ */
#ifndef __IDeckLinkEncoderVideoPacket_FWD_DEFINED__
#define __IDeckLinkEncoderVideoPacket_FWD_DEFINED__
typedef interface IDeckLinkEncoderVideoPacket IDeckLinkEncoderVideoPacket;
#endif /* __IDeckLinkEncoderVideoPacket_FWD_DEFINED__ */
#ifndef __IDeckLinkEncoderAudioPacket_FWD_DEFINED__
#define __IDeckLinkEncoderAudioPacket_FWD_DEFINED__
typedef interface IDeckLinkEncoderAudioPacket IDeckLinkEncoderAudioPacket;
#endif /* __IDeckLinkEncoderAudioPacket_FWD_DEFINED__ */
#ifndef __IDeckLinkH265NALPacket_FWD_DEFINED__
#define __IDeckLinkH265NALPacket_FWD_DEFINED__
typedef interface IDeckLinkH265NALPacket IDeckLinkH265NALPacket;
#endif /* __IDeckLinkH265NALPacket_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 __IDeckLinkStatus_FWD_DEFINED__
#define __IDeckLinkStatus_FWD_DEFINED__
typedef interface IDeckLinkStatus IDeckLinkStatus;
#endif /* __IDeckLinkStatus_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 __IDeckLinkEncoderConfiguration_v10_5_FWD_DEFINED__
#define __IDeckLinkEncoderConfiguration_v10_5_FWD_DEFINED__
typedef interface IDeckLinkEncoderConfiguration_v10_5 IDeckLinkEncoderConfiguration_v10_5;
#endif /* __IDeckLinkEncoderConfiguration_v10_5_FWD_DEFINED__ */
#ifndef __IDeckLinkConfiguration_v10_4_FWD_DEFINED__
#define __IDeckLinkConfiguration_v10_4_FWD_DEFINED__
typedef interface IDeckLinkConfiguration_v10_4 IDeckLinkConfiguration_v10_4;
#endif /* __IDeckLinkConfiguration_v10_4_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 int BMDTimecodeBCD;
typedef unsigned int BMDTimecodeUserBits;
typedef unsigned int BMDTimecodeFlags;
#if 0
typedef enum _BMDTimecodeFlags BMDTimecodeFlags;
#endif
/* [v1_enum] */
enum _BMDTimecodeFlags
{
bmdTimecodeFlagDefault = 0,
bmdTimecodeIsDropFrame = ( 1 << 0 ) ,
bmdTimecodeFieldMark = ( 1 << 1 ) ,
bmdTimecodeColorFrame = ( 1 << 2 )
} ;
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 ) ,
bmdAudioConnectionMicrophone = ( 1 << 5 ) ,
bmdAudioConnectionHeadphones = ( 1 << 6 )
} BMDAudioConnection;
typedef /* [v1_enum] */
enum _BMDDeckControlConnection
{
bmdDeckControlConnectionRS422Remote1 = ( 1 << 0 ) ,
bmdDeckControlConnectionRS422Remote2 = ( 1 << 1 )
} BMDDeckControlConnection;
typedef unsigned int 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,
bmdFormatH265 = 0x68657631,
bmdFormatDNxHR = 0x41566468
} 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,
bmdDeckLinkConfigDuplexMode = 0x64757078,
bmdDeckLinkConfigAnalogAudioConsumerLevels = 0x6161636c,
bmdDeckLinkConfigFieldFlickerRemoval = 0x66646672,
bmdDeckLinkConfigHD1080p24ToHD1080i5994Conversion = 0x746f3539,
bmdDeckLinkConfig444SDIVideoOutput = 0x3434346f,
bmdDeckLinkConfigBlackVideoOutputDuringCapture = 0x62766f63,
bmdDeckLinkConfigLowLatencyVideoOutput = 0x6c6c766f,
bmdDeckLinkConfigDownConversionOnAllAnalogOutput = 0x6361616f,
bmdDeckLinkConfigSMPTELevelAOutput = 0x736d7461,
bmdDeckLinkConfigVideoOutputConnection = 0x766f636e,
bmdDeckLinkConfigVideoOutputConversionMode = 0x766f636d,
bmdDeckLinkConfigAnalogVideoOutputFlags = 0x61766f66,
bmdDeckLinkConfigReferenceInputTimingOffset = 0x676c6f74,
bmdDeckLinkConfigVideoOutputIdleOperation = 0x766f696f,
bmdDeckLinkConfigDefaultVideoOutputMode = 0x64766f6d,
bmdDeckLinkConfigDefaultVideoOutputModeFlags = 0x64766f66,
bmdDeckLinkConfigSDIOutputLinkConfiguration = 0x736f6c63,
bmdDeckLinkConfigVideoOutputComponentLumaGain = 0x6f636c67,
bmdDeckLinkConfigVideoOutputComponentChromaBlueGain = 0x6f636362,
bmdDeckLinkConfigVideoOutputComponentChromaRedGain = 0x6f636372,
bmdDeckLinkConfigVideoOutputCompositeLumaGain = 0x6f696c67,
bmdDeckLinkConfigVideoOutputCompositeChromaGain = 0x6f696367,
bmdDeckLinkConfigVideoOutputSVideoLumaGain = 0x6f736c67,
bmdDeckLinkConfigVideoOutputSVideoChromaGain = 0x6f736367,
bmdDeckLinkConfigVideoInputScanning = 0x76697363,
bmdDeckLinkConfigUseDedicatedLTCInput = 0x646c7463,
bmdDeckLinkConfigSDIInput3DPayloadOverride = 0x33646473,
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,
bmdDeckLinkConfigMicrophonePhantomPower = 0x6d706870,
bmdDeckLinkConfigAudioInputConnection = 0x6169636e,
bmdDeckLinkConfigAnalogAudioInputScaleChannel1 = 0x61697331,
bmdDeckLinkConfigAnalogAudioInputScaleChannel2 = 0x61697332,
bmdDeckLinkConfigAnalogAudioInputScaleChannel3 = 0x61697333,
bmdDeckLinkConfigAnalogAudioInputScaleChannel4 = 0x61697334,
bmdDeckLinkConfigDigitalAudioInputScale = 0x64616973,
bmdDeckLinkConfigMicrophoneInputGain = 0x6d696367,
bmdDeckLinkConfigAudioOutputAESAnalogSwitch = 0x616f6161,
bmdDeckLinkConfigAnalogAudioOutputScaleChannel1 = 0x616f7331,
bmdDeckLinkConfigAnalogAudioOutputScaleChannel2 = 0x616f7332,
bmdDeckLinkConfigAnalogAudioOutputScaleChannel3 = 0x616f7333,
bmdDeckLinkConfigAnalogAudioOutputScaleChannel4 = 0x616f7334,
bmdDeckLinkConfigDigitalAudioOutputScale = 0x64616f73,
bmdDeckLinkConfigHeadphoneVolume = 0x68766f6c,
bmdDeckLinkConfigDeviceInformationLabel = 0x64696c61,
bmdDeckLinkConfigDeviceInformationSerialNumber = 0x6469736e,
bmdDeckLinkConfigDeviceInformationCompany = 0x6469636f,
bmdDeckLinkConfigDeviceInformationPhone = 0x64697068,
bmdDeckLinkConfigDeviceInformationEmail = 0x6469656d,
bmdDeckLinkConfigDeviceInformationDate = 0x64696461,
bmdDeckLinkConfigDeckControlConnection = 0x6463636f
} BMDDeckLinkConfigurationID;
typedef /* [v1_enum] */
enum _BMDDeckLinkEncoderConfigurationID
{
bmdDeckLinkEncoderConfigPreferredBitDepth = 0x65706272,
bmdDeckLinkEncoderConfigFrameCodingMode = 0x6566636d,
bmdDeckLinkEncoderConfigH265TargetBitrate = 0x68746272,
bmdDeckLinkEncoderConfigDNxHRCompressionID = 0x64636964,
bmdDeckLinkEncoderConfigDNxHRLevel = 0x646c6576,
bmdDeckLinkEncoderConfigMPEG4SampleDescription = 0x73747345,
bmdDeckLinkEncoderConfigMPEG4CodecSpecificDesc = 0x65736473
} BMDDeckLinkEncoderConfigurationID;
typedef unsigned int BMDDeckControlStatusFlags;
typedef unsigned int 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 int BMDFrameFlags;
typedef unsigned int BMDVideoInputFlags;
typedef unsigned int BMDVideoInputFormatChangedEvents;
typedef unsigned int BMDDetectedVideoInputFormatFlags;
typedef unsigned int BMDDeckLinkCapturePassthroughMode;
typedef unsigned int BMDAnalogVideoFlags;
typedef unsigned int 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;
typedef /* [v1_enum] */
enum _BMDPacketType
{
bmdPacketTypeStreamInterruptedMarker = 0x73696e74,
bmdPacketTypeStreamData = 0x73646174
} BMDPacketType;
/* [v1_enum] */
enum _BMDFrameFlags
{
bmdFrameFlagDefault = 0,
bmdFrameFlagFlipVertical = ( 1 << 0 ) ,
bmdFrameContainsHDRMetadata = ( 1 << 1 ) ,
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
{
bmdDeckLinkCapturePassthroughModeDisabled = 0x70646973,
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 _BMDAudioFormat
{
bmdAudioFormatPCM = 0x6c70636d
} BMDAudioFormat;
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
} BMDIdleVideoOutputOperation;
typedef /* [v1_enum] */
enum _BMDVideoEncoderFrameCodingMode
{
bmdVideoEncoderFrameCodingModeInter = 0x696e7465,
bmdVideoEncoderFrameCodingModeIntra = 0x696e7472
} BMDVideoEncoderFrameCodingMode;
typedef /* [v1_enum] */
enum _BMDDNxHRLevel
{
bmdDNxHRLevelSQ = 0x646e7371,
bmdDNxHRLevelLB = 0x646e6c62,
bmdDNxHRLevelHQ = 0x646e6871,
bmdDNxHRLevelHQX = 0x64687178,
bmdDNxHRLevel444 = 0x64343434
} BMDDNxHRLevel;
typedef /* [v1_enum] */
enum _BMDLinkConfiguration
{
bmdLinkConfigurationSingleLink = 0x6c63736c,
bmdLinkConfigurationDualLink = 0x6c63646c,
bmdLinkConfigurationQuadLink = 0x6c63716c
} BMDLinkConfiguration;
typedef /* [v1_enum] */
enum _BMDDeviceInterface
{
bmdDeviceInterfacePCI = 0x70636920,
bmdDeviceInterfaceUSB = 0x75736220,
bmdDeviceInterfaceThunderbolt = 0x7468756e
} BMDDeviceInterface;
typedef /* [v1_enum] */
enum _BMDDeckLinkFrameMetadataID
{
bmdDeckLinkFrameMetadataHDRElectroOpticalTransferFunc = 0x656f7466,
bmdDeckLinkFrameMetadataHDRDisplayPrimariesRedX = 0x68647278,
bmdDeckLinkFrameMetadataHDRDisplayPrimariesRedY = 0x68647279,
bmdDeckLinkFrameMetadataHDRDisplayPrimariesGreenX = 0x68646778,
bmdDeckLinkFrameMetadataHDRDisplayPrimariesGreenY = 0x68646779,
bmdDeckLinkFrameMetadataHDRDisplayPrimariesBlueX = 0x68646278,
bmdDeckLinkFrameMetadataHDRDisplayPrimariesBlueY = 0x68646279,
bmdDeckLinkFrameMetadataHDRWhitePointX = 0x68647778,
bmdDeckLinkFrameMetadataHDRWhitePointY = 0x68647779,
bmdDeckLinkFrameMetadataHDRMaxDisplayMasteringLuminance = 0x68646d6c,
bmdDeckLinkFrameMetadataHDRMinDisplayMasteringLuminance = 0x686d696c,
bmdDeckLinkFrameMetadataHDRMaximumContentLightLevel = 0x6d636c6c,
bmdDeckLinkFrameMetadataHDRMaximumFrameAverageLightLevel = 0x66616c6c
} BMDDeckLinkFrameMetadataID;
typedef /* [v1_enum] */
enum _BMDDuplexMode
{
bmdDuplexModeFull = 0x66647570,
bmdDuplexModeHalf = 0x68647570
} BMDDuplexMode;
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,
BMDDeckLinkSupportsClockTimingAdjustment = 0x63746164,
BMDDeckLinkSupportsFullDuplex = 0x66647570,
BMDDeckLinkSupportsFullFrameReferenceInputTimingOffset = 0x6672696e,
BMDDeckLinkSupportsSMPTELevelAOutput = 0x6c766c61,
BMDDeckLinkSupportsDualLinkSDI = 0x73646c73,
BMDDeckLinkSupportsQuadLinkSDI = 0x73716c73,
BMDDeckLinkSupportsIdleOutput = 0x69646f75,
BMDDeckLinkHasLTCTimecodeInput = 0x686c7463,
BMDDeckLinkSupportsDuplexModeConfiguration = 0x64757078,
BMDDeckLinkSupportsHDRMetadata = 0x6864726d,
BMDDeckLinkMaximumAudioChannels = 0x6d616368,
BMDDeckLinkMaximumAnalogAudioChannels = 0x61616368,
BMDDeckLinkNumberOfSubDevices = 0x6e736264,
BMDDeckLinkSubDeviceIndex = 0x73756269,
BMDDeckLinkPersistentID = 0x70656964,
BMDDeckLinkDeviceGroupID = 0x64676964,
BMDDeckLinkTopologicalID = 0x746f6964,
BMDDeckLinkVideoOutputConnections = 0x766f636e,
BMDDeckLinkVideoInputConnections = 0x7669636e,
BMDDeckLinkAudioOutputConnections = 0x616f636e,
BMDDeckLinkAudioInputConnections = 0x6169636e,
BMDDeckLinkVideoIOSupport = 0x76696f73,
BMDDeckLinkDeckControlConnections = 0x6463636e,
BMDDeckLinkDeviceInterface = 0x64627573,
BMDDeckLinkAudioInputRCAChannelCount = 0x61697263,
BMDDeckLinkAudioInputXLRChannelCount = 0x61697863,
BMDDeckLinkAudioOutputRCAChannelCount = 0x616f7263,
BMDDeckLinkAudioOutputXLRChannelCount = 0x616f7863,
BMDDeckLinkPairedDevicePersistentID = 0x70706964,
BMDDeckLinkVideoInputGainMinimum = 0x7669676d,
BMDDeckLinkVideoInputGainMaximum = 0x76696778,
BMDDeckLinkVideoOutputGainMinimum = 0x766f676d,
BMDDeckLinkVideoOutputGainMaximum = 0x766f6778,
BMDDeckLinkMicrophoneInputGainMinimum = 0x6d69676d,
BMDDeckLinkMicrophoneInputGainMaximum = 0x6d696778,
BMDDeckLinkSerialPortDeviceName = 0x736c706e,
BMDDeckLinkVendorName = 0x766e6472,
BMDDeckLinkDisplayName = 0x6473706e,
BMDDeckLinkModelName = 0x6d646c6e,
BMDDeckLinkDeviceHandle = 0x64657668
} BMDDeckLinkAttributeID;
typedef /* [v1_enum] */
enum _BMDDeckLinkAPIInformationID
{
BMDDeckLinkAPIVersion = 0x76657273
} BMDDeckLinkAPIInformationID;
typedef /* [v1_enum] */
enum _BMDDeckLinkStatusID
{
bmdDeckLinkStatusDetectedVideoInputMode = 0x6476696d,
bmdDeckLinkStatusDetectedVideoInputFlags = 0x64766966,
bmdDeckLinkStatusCurrentVideoInputMode = 0x6376696d,
bmdDeckLinkStatusCurrentVideoInputPixelFormat = 0x63766970,
bmdDeckLinkStatusCurrentVideoInputFlags = 0x63766966,
bmdDeckLinkStatusCurrentVideoOutputMode = 0x63766f6d,
bmdDeckLinkStatusCurrentVideoOutputFlags = 0x63766f66,
bmdDeckLinkStatusPCIExpressLinkWidth = 0x70776964,
bmdDeckLinkStatusPCIExpressLinkSpeed = 0x706c6e6b,
bmdDeckLinkStatusLastVideoOutputPixelFormat = 0x6f706978,
bmdDeckLinkStatusReferenceSignalMode = 0x7265666d,
bmdDeckLinkStatusReferenceSignalFlags = 0x72656666,
bmdDeckLinkStatusDuplexMode = 0x64757078,
bmdDeckLinkStatusBusy = 0x62757379,
bmdDeckLinkStatusVideoInputSignalLocked = 0x7669736c,
bmdDeckLinkStatusReferenceSignalLocked = 0x7265666c
} BMDDeckLinkStatusID;
typedef /* [v1_enum] */
enum _BMDDeckLinkVideoStatusFlags
{
bmdDeckLinkVideoStatusPsF = ( 1 << 0 ) ,
bmdDeckLinkVideoStatusDualStream3D = ( 1 << 1 )
} BMDDeckLinkVideoStatusFlags;
typedef /* [v1_enum] */
enum _BMDDuplexStatus
{
bmdDuplexStatusFullDuplex = 0x66647570,
bmdDuplexStatusHalfDuplex = 0x68647570,
bmdDuplexStatusSimplex = 0x73706c78,
bmdDuplexStatusInactive = 0x696e6163
} BMDDuplexStatus;
/* [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,
bmdStatusChanged = 0x73746174
} BMDNotifications;
typedef /* [v1_enum] */
enum _BMDDeckLinkAttributeID_v10_6
{
BMDDeckLinkSupportsDesktopDisplay_v10_6 = 0x65787464
} BMDDeckLinkAttributeID_v10_6;
typedef /* [v1_enum] */
enum _BMDIdleVideoOutputOperation_v10_6
{
bmdIdleVideoOutputDesktop_v10_6 = 0x6465736b
} BMDIdleVideoOutputOperation_v10_6;
typedef /* [v1_enum] */
enum _BMDDeckLinkAttributeID_v10_5
{
BMDDeckLinkDeviceBusyState_v10_5 = 0x64627374
} BMDDeckLinkAttributeID_v10_5;
typedef /* [v1_enum] */
enum _BMDDeckLinkConfigurationID_v10_4
{
bmdDeckLinkConfigSingleLinkVideoOutput_v10_4 = 0x73676c6f
} BMDDeckLinkConfigurationID_v10_4;
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("CB71734A-FE37-4E8D-8E13-802133A1C3F2")
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 __IDeckLinkEncoderConfiguration_INTERFACE_DEFINED__
#define __IDeckLinkEncoderConfiguration_INTERFACE_DEFINED__
/* interface IDeckLinkEncoderConfiguration */
/* [helpstring][local][uuid][object] */
EXTERN_C const IID IID_IDeckLinkEncoderConfiguration;
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("138050E5-C60A-4552-BF3F-0F358049327E")
IDeckLinkEncoderConfiguration : public IUnknown
{
public:
virtual HRESULT STDMETHODCALLTYPE SetFlag(
/* [in] */ BMDDeckLinkEncoderConfigurationID cfgID,
/* [in] */ BOOL value) = 0;
virtual HRESULT STDMETHODCALLTYPE GetFlag(
/* [in] */ BMDDeckLinkEncoderConfigurationID cfgID,
/* [out] */ BOOL *value) = 0;
virtual HRESULT STDMETHODCALLTYPE SetInt(
/* [in] */ BMDDeckLinkEncoderConfigurationID cfgID,
/* [in] */ LONGLONG value) = 0;
virtual HRESULT STDMETHODCALLTYPE GetInt(
/* [in] */ BMDDeckLinkEncoderConfigurationID cfgID,
/* [out] */ LONGLONG *value) = 0;
virtual HRESULT STDMETHODCALLTYPE SetFloat(
/* [in] */ BMDDeckLinkEncoderConfigurationID cfgID,
/* [in] */ double value) = 0;
virtual HRESULT STDMETHODCALLTYPE GetFloat(
/* [in] */ BMDDeckLinkEncoderConfigurationID cfgID,
/* [out] */ double *value) = 0;
virtual HRESULT STDMETHODCALLTYPE SetString(
/* [in] */ BMDDeckLinkEncoderConfigurationID cfgID,
/* [in] */ BSTR value) = 0;
virtual HRESULT STDMETHODCALLTYPE GetString(
/* [in] */ BMDDeckLinkEncoderConfigurationID cfgID,
/* [out] */ BSTR *value) = 0;
virtual HRESULT STDMETHODCALLTYPE GetBytes(
/* [in] */ BMDDeckLinkEncoderConfigurationID cfgID,
/* [out] */ void *buffer,
/* [out][in] */ unsigned int *bufferSize) = 0;
};
#else /* C style interface */
typedef struct IDeckLinkEncoderConfigurationVtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
IDeckLinkEncoderConfiguration * This,
/* [in] */ REFIID riid,
/* [annotation][iid_is][out] */
_COM_Outptr_ void **ppvObject);
ULONG ( STDMETHODCALLTYPE *AddRef )(
IDeckLinkEncoderConfiguration * This);
ULONG ( STDMETHODCALLTYPE *Release )(
IDeckLinkEncoderConfiguration * This);
HRESULT ( STDMETHODCALLTYPE *SetFlag )(
IDeckLinkEncoderConfiguration * This,
/* [in] */ BMDDeckLinkEncoderConfigurationID cfgID,
/* [in] */ BOOL value);
HRESULT ( STDMETHODCALLTYPE *GetFlag )(
IDeckLinkEncoderConfiguration * This,
/* [in] */ BMDDeckLinkEncoderConfigurationID cfgID,
/* [out] */ BOOL *value);
HRESULT ( STDMETHODCALLTYPE *SetInt )(
IDeckLinkEncoderConfiguration * This,
/* [in] */ BMDDeckLinkEncoderConfigurationID cfgID,
/* [in] */ LONGLONG value);
HRESULT ( STDMETHODCALLTYPE *GetInt )(
IDeckLinkEncoderConfiguration * This,
/* [in] */ BMDDeckLinkEncoderConfigurationID cfgID,
/* [out] */ LONGLONG *value);
HRESULT ( STDMETHODCALLTYPE *SetFloat )(
IDeckLinkEncoderConfiguration * This,
/* [in] */ BMDDeckLinkEncoderConfigurationID cfgID,
/* [in] */ double value);
HRESULT ( STDMETHODCALLTYPE *GetFloat )(
IDeckLinkEncoderConfiguration * This,
/* [in] */ BMDDeckLinkEncoderConfigurationID cfgID,
/* [out] */ double *value);
HRESULT ( STDMETHODCALLTYPE *SetString )(
IDeckLinkEncoderConfiguration * This,
/* [in] */ BMDDeckLinkEncoderConfigurationID cfgID,
/* [in] */ BSTR value);
HRESULT ( STDMETHODCALLTYPE *GetString )(
IDeckLinkEncoderConfiguration * This,
/* [in] */ BMDDeckLinkEncoderConfigurationID cfgID,
/* [out] */ BSTR *value);
HRESULT ( STDMETHODCALLTYPE *GetBytes )(
IDeckLinkEncoderConfiguration * This,
/* [in] */ BMDDeckLinkEncoderConfigurationID cfgID,
/* [out] */ void *buffer,
/* [out][in] */ unsigned int *bufferSize);
END_INTERFACE
} IDeckLinkEncoderConfigurationVtbl;
interface IDeckLinkEncoderConfiguration
{
CONST_VTBL struct IDeckLinkEncoderConfigurationVtbl *lpVtbl;
};
#ifdef COBJMACROS
#define IDeckLinkEncoderConfiguration_QueryInterface(This,riid,ppvObject) \
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
#define IDeckLinkEncoderConfiguration_AddRef(This) \
( (This)->lpVtbl -> AddRef(This) )
#define IDeckLinkEncoderConfiguration_Release(This) \
( (This)->lpVtbl -> Release(This) )
#define IDeckLinkEncoderConfiguration_SetFlag(This,cfgID,value) \
( (This)->lpVtbl -> SetFlag(This,cfgID,value) )
#define IDeckLinkEncoderConfiguration_GetFlag(This,cfgID,value) \
( (This)->lpVtbl -> GetFlag(This,cfgID,value) )
#define IDeckLinkEncoderConfiguration_SetInt(This,cfgID,value) \
( (This)->lpVtbl -> SetInt(This,cfgID,value) )
#define IDeckLinkEncoderConfiguration_GetInt(This,cfgID,value) \
( (This)->lpVtbl -> GetInt(This,cfgID,value) )
#define IDeckLinkEncoderConfiguration_SetFloat(This,cfgID,value) \
( (This)->lpVtbl -> SetFloat(This,cfgID,value) )
#define IDeckLinkEncoderConfiguration_GetFloat(This,cfgID,value) \
( (This)->lpVtbl -> GetFloat(This,cfgID,value) )
#define IDeckLinkEncoderConfiguration_SetString(This,cfgID,value) \
( (This)->lpVtbl -> SetString(This,cfgID,value) )
#define IDeckLinkEncoderConfiguration_GetString(This,cfgID,value) \
( (This)->lpVtbl -> GetString(This,cfgID,value) )
#define IDeckLinkEncoderConfiguration_GetBytes(This,cfgID,buffer,bufferSize) \
( (This)->lpVtbl -> GetBytes(This,cfgID,buffer,bufferSize) )
#endif /* COBJMACROS */
#endif /* C style interface */
#endif /* __IDeckLinkEncoderConfiguration_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 int 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 int 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 int inBufferSize,
/* [out] */ unsigned char *outBuffer,
/* [out] */ unsigned int *outDataSize,
/* [in] */ unsigned int 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 int prerollSeconds) = 0;
virtual HRESULT STDMETHODCALLTYPE GetPreroll(
/* [out] */ unsigned int *prerollSeconds) = 0;
virtual HRESULT STDMETHODCALLTYPE SetExportOffset(
/* [in] */ int exportOffsetFields) = 0;
virtual HRESULT STDMETHODCALLTYPE GetExportOffset(
/* [out] */ int *exportOffsetFields) = 0;
virtual HRESULT STDMETHODCALLTYPE GetManualExportOffset(
/* [out] */ int *deckManualExportOffsetFields) = 0;
virtual HRESULT STDMETHODCALLTYPE SetCaptureOffset(
/* [in] */ int captureOffsetFields) = 0;
virtual HRESULT STDMETHODCALLTYPE GetCaptureOffset(
/* [out] */ int *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 int inBufferSize,
/* [out] */ unsigned char *outBuffer,
/* [out] */ unsigned int *outDataSize,
/* [in] */ unsigned int 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 int prerollSeconds);
HRESULT ( STDMETHODCALLTYPE *GetPreroll )(
IDeckLinkDeckControl * This,
/* [out] */ unsigned int *prerollSeconds);
HRESULT ( STDMETHODCALLTYPE *SetExportOffset )(
IDeckLinkDeckControl * This,
/* [in] */ int exportOffsetFields);
HRESULT ( STDMETHODCALLTYPE *GetExportOffset )(
IDeckLinkDeckControl * This,
/* [out] */ int *exportOffsetFields);
HRESULT ( STDMETHODCALLTYPE *GetManualExportOffset )(
IDeckLinkDeckControl * This,
/* [out] */ int *deckManualExportOffsetFields);
HRESULT ( STDMETHODCALLTYPE *SetCaptureOffset )(
IDeckLinkDeckControl * This,
/* [in] */ int captureOffsetFields);
HRESULT ( STDMETHODCALLTYPE *GetCaptureOffset )(
IDeckLinkDeckControl * This,
/* [out] */ int *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) )