mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-12-22 16:26:39 +00:00
15217 lines
523 KiB
C++
15217 lines
523 KiB
C++
|
|
|
|
/* 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( ) */
|
|
|
|
#ifdef _MSC_VER
|
|
#pragma warning( disable: 4049 ) /* more than 64k source lines */
|
|
#endif
|
|
|
|
|
|
/* 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) )
|
|
|
|
#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 ( STDMETHODCALLTYPE *GetSourcePositionX )(
|
|
IBMDStreamingVideoEncodingMode * This);
|
|
|
|
unsigned int ( STDMETHODCALLTYPE *GetSourcePositionY )(
|
|
IBMDStreamingVideoEncodingMode * This);
|
|
|
|
unsigned int ( STDMETHODCALLTYPE *GetSourceWidth )(
|
|
IBMDStreamingVideoEncodingMode * This);
|
|
|
|
unsigned int ( STDMETHODCALLTYPE *GetSourceHeight )(
|
|
IBMDStreamingVideoEncodingMode * This);
|
|
|
|
unsigned int ( STDMETHODCALLTYPE *GetDestWidth )(
|
|
IBMDStreamingVideoEncodingMode * This);
|
|
|
|
unsigned int ( STDMETHODCALLTYPE *GetDestHeight )(
|
|
IBMDStreamingVideoEncodingMode * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetFlag )(
|
|
IBMDStreamingVideoEncodingMode * This,
|
|
/* [in] */ BMDStreamingEncodingModePropertyID cfgID,
|
|
/* [out] */ BOOL *value);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetInt )(
|
|
IBMDStreamingVideoEncodingMode * This,
|
|
/* [in] */ BMDStreamingEncodingModePropertyID cfgID,
|
|
/* [out] */ LONGLONG *value);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetFloat )(
|
|
IBMDStreamingVideoEncodingMode * This,
|
|
/* [in] */ BMDStreamingEncodingModePropertyID cfgID,
|
|
/* [out] */ double *value);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetString )(
|
|
IBMDStreamingVideoEncodingMode * This,
|
|
/* [in] */ BMDStreamingEncodingModePropertyID cfgID,
|
|
/* [out] */ BSTR *value);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *CreateMutableVideoEncodingMode )(
|
|
IBMDStreamingVideoEncodingMode * This,
|
|
/* [out] */ IBMDStreamingMutableVideoEncodingMode **newEncodingMode);
|
|
|
|
END_INTERFACE
|
|
} IBMDStreamingVideoEncodingModeVtbl;
|
|
|
|
interface IBMDStreamingVideoEncodingMode
|
|
{
|
|
CONST_VTBL struct IBMDStreamingVideoEncodingModeVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IBMDStreamingVideoEncodingMode_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IBMDStreamingVideoEncodingMode_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IBMDStreamingVideoEncodingMode_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IBMDStreamingVideoEncodingMode_GetName(This,name) \
|
|
( (This)->lpVtbl -> GetName(This,name) )
|
|
|
|
#define IBMDStreamingVideoEncodingMode_GetPresetID(This) \
|
|
( (This)->lpVtbl -> GetPresetID(This) )
|
|
|
|
#define IBMDStreamingVideoEncodingMode_GetSourcePositionX(This) \
|
|
( (This)->lpVtbl -> GetSourcePositionX(This) )
|
|
|
|
#define IBMDStreamingVideoEncodingMode_GetSourcePositionY(This) \
|
|
( (This)->lpVtbl -> GetSourcePositionY(This) )
|
|
|
|
#define IBMDStreamingVideoEncodingMode_GetSourceWidth(This) \
|
|
( (This)->lpVtbl -> GetSourceWidth(This) )
|
|
|
|
#define IBMDStreamingVideoEncodingMode_GetSourceHeight(This) \
|
|
( (This)->lpVtbl -> GetSourceHeight(This) )
|
|
|
|
#define IBMDStreamingVideoEncodingMode_GetDestWidth(This) \
|
|
( (This)->lpVtbl -> GetDestWidth(This) )
|
|
|
|
#define IBMDStreamingVideoEncodingMode_GetDestHeight(This) \
|
|
( (This)->lpVtbl -> GetDestHeight(This) )
|
|
|
|
#define IBMDStreamingVideoEncodingMode_GetFlag(This,cfgID,value) \
|
|
( (This)->lpVtbl -> GetFlag(This,cfgID,value) )
|
|
|
|
#define IBMDStreamingVideoEncodingMode_GetInt(This,cfgID,value) \
|
|
( (This)->lpVtbl -> GetInt(This,cfgID,value) )
|
|
|
|
#define IBMDStreamingVideoEncodingMode_GetFloat(This,cfgID,value) \
|
|
( (This)->lpVtbl -> GetFloat(This,cfgID,value) )
|
|
|
|
#define IBMDStreamingVideoEncodingMode_GetString(This,cfgID,value) \
|
|
( (This)->lpVtbl -> GetString(This,cfgID,value) )
|
|
|
|
#define IBMDStreamingVideoEncodingMode_CreateMutableVideoEncodingMode(This,newEncodingMode) \
|
|
( (This)->lpVtbl -> CreateMutableVideoEncodingMode(This,newEncodingMode) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IBMDStreamingVideoEncodingMode_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IBMDStreamingMutableVideoEncodingMode_INTERFACE_DEFINED__
|
|
#define __IBMDStreamingMutableVideoEncodingMode_INTERFACE_DEFINED__
|
|
|
|
/* interface IBMDStreamingMutableVideoEncodingMode */
|
|
/* [helpstring][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IBMDStreamingMutableVideoEncodingMode;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("19BF7D90-1E0A-400D-B2C6-FFC4E78AD49D")
|
|
IBMDStreamingMutableVideoEncodingMode : public IBMDStreamingVideoEncodingMode
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE SetSourceRect(
|
|
/* [in] */ unsigned int posX,
|
|
/* [in] */ unsigned int posY,
|
|
/* [in] */ unsigned int width,
|
|
/* [in] */ unsigned int height) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetDestSize(
|
|
/* [in] */ unsigned int width,
|
|
/* [in] */ unsigned int height) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetFlag(
|
|
/* [in] */ BMDStreamingEncodingModePropertyID cfgID,
|
|
/* [in] */ BOOL value) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetInt(
|
|
/* [in] */ BMDStreamingEncodingModePropertyID cfgID,
|
|
/* [in] */ LONGLONG value) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetFloat(
|
|
/* [in] */ BMDStreamingEncodingModePropertyID cfgID,
|
|
/* [in] */ double value) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetString(
|
|
/* [in] */ BMDStreamingEncodingModePropertyID cfgID,
|
|
/* [in] */ BSTR value) = 0;
|
|
|
|
};
|
|
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IBMDStreamingMutableVideoEncodingModeVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IBMDStreamingMutableVideoEncodingMode * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
_COM_Outptr_ void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IBMDStreamingMutableVideoEncodingMode * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IBMDStreamingMutableVideoEncodingMode * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetName )(
|
|
IBMDStreamingMutableVideoEncodingMode * This,
|
|
/* [out] */ BSTR *name);
|
|
|
|
unsigned int ( STDMETHODCALLTYPE *GetPresetID )(
|
|
IBMDStreamingMutableVideoEncodingMode * This);
|
|
|
|
unsigned int ( STDMETHODCALLTYPE *GetSourcePositionX )(
|
|
IBMDStreamingMutableVideoEncodingMode * This);
|
|
|
|
unsigned int ( STDMETHODCALLTYPE *GetSourcePositionY )(
|
|
IBMDStreamingMutableVideoEncodingMode * This);
|
|
|
|
unsigned int ( STDMETHODCALLTYPE *GetSourceWidth )(
|
|
IBMDStreamingMutableVideoEncodingMode * This);
|
|
|
|
unsigned int ( STDMETHODCALLTYPE *GetSourceHeight )(
|
|
IBMDStreamingMutableVideoEncodingMode * This);
|
|
|
|
unsigned int ( STDMETHODCALLTYPE *GetDestWidth )(
|
|
IBMDStreamingMutableVideoEncodingMode * This);
|
|
|
|
unsigned int ( STDMETHODCALLTYPE *GetDestHeight )(
|
|
IBMDStreamingMutableVideoEncodingMode * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetFlag )(
|
|
IBMDStreamingMutableVideoEncodingMode * This,
|
|
/* [in] */ BMDStreamingEncodingModePropertyID cfgID,
|
|
/* [out] */ BOOL *value);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetInt )(
|
|
IBMDStreamingMutableVideoEncodingMode * This,
|
|
/* [in] */ BMDStreamingEncodingModePropertyID cfgID,
|
|
/* [out] */ LONGLONG *value);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetFloat )(
|
|
IBMDStreamingMutableVideoEncodingMode * This,
|
|
/* [in] */ BMDStreamingEncodingModePropertyID cfgID,
|
|
/* [out] */ double *value);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetString )(
|
|
IBMDStreamingMutableVideoEncodingMode * This,
|
|
/* [in] */ BMDStreamingEncodingModePropertyID cfgID,
|
|
/* [out] */ BSTR *value);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *CreateMutableVideoEncodingMode )(
|
|
IBMDStreamingMutableVideoEncodingMode * This,
|
|
/* [out] */ IBMDStreamingMutableVideoEncodingMode **newEncodingMode);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetSourceRect )(
|
|
IBMDStreamingMutableVideoEncodingMode * This,
|
|
/* [in] */ unsigned int posX,
|
|
/* [in] */ unsigned int posY,
|
|
/* [in] */ unsigned int width,
|
|
/* [in] */ unsigned int height);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetDestSize )(
|
|
IBMDStreamingMutableVideoEncodingMode * This,
|
|
/* [in] */ unsigned int width,
|
|
/* [in] */ unsigned int height);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetFlag )(
|
|
IBMDStreamingMutableVideoEncodingMode * This,
|
|
/* [in] */ BMDStreamingEncodingModePropertyID cfgID,
|
|
/* [in] */ BOOL value);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetInt )(
|
|
IBMDStreamingMutableVideoEncodingMode * This,
|
|
/* [in] */ BMDStreamingEncodingModePropertyID cfgID,
|
|
/* [in] */ LONGLONG value);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetFloat )(
|
|
IBMDStreamingMutableVideoEncodingMode * This,
|
|
/* [in] */ BMDStreamingEncodingModePropertyID cfgID,
|
|
/* [in] */ double value);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetString )(
|
|
IBMDStreamingMutableVideoEncodingMode * This,
|
|
/* [in] */ BMDStreamingEncodingModePropertyID cfgID,
|
|
/* [in] */ BSTR value);
|
|
|
|
END_INTERFACE
|
|
} IBMDStreamingMutableVideoEncodingModeVtbl;
|
|
|
|
interface IBMDStreamingMutableVideoEncodingMode
|
|
{
|
|
CONST_VTBL struct IBMDStreamingMutableVideoEncodingModeVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IBMDStreamingMutableVideoEncodingMode_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IBMDStreamingMutableVideoEncodingMode_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IBMDStreamingMutableVideoEncodingMode_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IBMDStreamingMutableVideoEncodingMode_GetName(This,name) \
|
|
( (This)->lpVtbl -> GetName(This,name) )
|
|
|
|
#define IBMDStreamingMutableVideoEncodingMode_GetPresetID(This) \
|
|
( (This)->lpVtbl -> GetPresetID(This) )
|
|
|
|
#define IBMDStreamingMutableVideoEncodingMode_GetSourcePositionX(This) \
|
|
( (This)->lpVtbl -> GetSourcePositionX(This) )
|
|
|
|
#define IBMDStreamingMutableVideoEncodingMode_GetSourcePositionY(This) \
|
|
( (This)->lpVtbl -> GetSourcePositionY(This) )
|
|
|
|
#define IBMDStreamingMutableVideoEncodingMode_GetSourceWidth(This) \
|
|
( (This)->lpVtbl -> GetSourceWidth(This) )
|
|
|
|
#define IBMDStreamingMutableVideoEncodingMode_GetSourceHeight(This) \
|
|
( (This)->lpVtbl -> GetSourceHeight(This) )
|
|
|
|
#define IBMDStreamingMutableVideoEncodingMode_GetDestWidth(This) \
|
|
( (This)->lpVtbl -> GetDestWidth(This) )
|
|
|
|
#define IBMDStreamingMutableVideoEncodingMode_GetDestHeight(This) \
|
|
( (This)->lpVtbl -> GetDestHeight(This) )
|
|
|
|
#define IBMDStreamingMutableVideoEncodingMode_GetFlag(This,cfgID,value) \
|
|
( (This)->lpVtbl -> GetFlag(This,cfgID,value) )
|
|
|
|
#define IBMDStreamingMutableVideoEncodingMode_GetInt(This,cfgID,value) \
|
|
( (This)->lpVtbl -> GetInt(This,cfgID,value) )
|
|
|
|
#define IBMDStreamingMutableVideoEncodingMode_GetFloat(This,cfgID,value) \
|
|
( (This)->lpVtbl -> GetFloat(This,cfgID,value) )
|
|
|
|
#define IBMDStreamingMutableVideoEncodingMode_GetString(This,cfgID,value) \
|
|
( (This)->lpVtbl -> GetString(This,cfgID,value) )
|
|
|
|
#define IBMDStreamingMutableVideoEncodingMode_CreateMutableVideoEncodingMode(This,newEncodingMode) \
|
|
( (This)->lpVtbl -> CreateMutableVideoEncodingMode(This,newEncodingMode) )
|
|
|
|
|
|
#define IBMDStreamingMutableVideoEncodingMode_SetSourceRect(This,posX,posY,width,height) \
|
|
( (This)->lpVtbl -> SetSourceRect(This,posX,posY,width,height) )
|
|
|
|
#define IBMDStreamingMutableVideoEncodingMode_SetDestSize(This,width,height) \
|
|
( (This)->lpVtbl -> SetDestSize(This,width,height) )
|
|
|
|
#define IBMDStreamingMutableVideoEncodingMode_SetFlag(This,cfgID,value) \
|
|
( (This)->lpVtbl -> SetFlag(This,cfgID,value) )
|
|
|
|
#define IBMDStreamingMutableVideoEncodingMode_SetInt(This,cfgID,value) \
|
|
( (This)->lpVtbl -> SetInt(This,cfgID,value) )
|
|
|
|
#define IBMDStreamingMutableVideoEncodingMode_SetFloat(This,cfgID,value) \
|
|
( (This)->lpVtbl -> SetFloat(This,cfgID,value) )
|
|
|
|
#define IBMDStreamingMutableVideoEncodingMode_SetString(This,cfgID,value) \
|
|
( (This)->lpVtbl -> SetString(This,cfgID,value) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IBMDStreamingMutableVideoEncodingMode_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IBMDStreamingVideoEncodingModePresetIterator_INTERFACE_DEFINED__
|
|
#define __IBMDStreamingVideoEncodingModePresetIterator_INTERFACE_DEFINED__
|
|
|
|
/* interface IBMDStreamingVideoEncodingModePresetIterator */
|
|
/* [helpstring][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IBMDStreamingVideoEncodingModePresetIterator;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("7AC731A3-C950-4AD0-804A-8377AA51C6C4")
|
|
IBMDStreamingVideoEncodingModePresetIterator : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE Next(
|
|
/* [out] */ IBMDStreamingVideoEncodingMode **videoEncodingMode) = 0;
|
|
|
|
};
|
|
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IBMDStreamingVideoEncodingModePresetIteratorVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IBMDStreamingVideoEncodingModePresetIterator * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
_COM_Outptr_ void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IBMDStreamingVideoEncodingModePresetIterator * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IBMDStreamingVideoEncodingModePresetIterator * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *Next )(
|
|
IBMDStreamingVideoEncodingModePresetIterator * This,
|
|
/* [out] */ IBMDStreamingVideoEncodingMode **videoEncodingMode);
|
|
|
|
END_INTERFACE
|
|
} IBMDStreamingVideoEncodingModePresetIteratorVtbl;
|
|
|
|
interface IBMDStreamingVideoEncodingModePresetIterator
|
|
{
|
|
CONST_VTBL struct IBMDStreamingVideoEncodingModePresetIteratorVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IBMDStreamingVideoEncodingModePresetIterator_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IBMDStreamingVideoEncodingModePresetIterator_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IBMDStreamingVideoEncodingModePresetIterator_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IBMDStreamingVideoEncodingModePresetIterator_Next(This,videoEncodingMode) \
|
|
( (This)->lpVtbl -> Next(This,videoEncodingMode) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IBMDStreamingVideoEncodingModePresetIterator_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IBMDStreamingDeviceInput_INTERFACE_DEFINED__
|
|
#define __IBMDStreamingDeviceInput_INTERFACE_DEFINED__
|
|
|
|
/* interface IBMDStreamingDeviceInput */
|
|
/* [helpstring][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IBMDStreamingDeviceInput;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("24B6B6EC-1727-44BB-9818-34FF086ACF98")
|
|
IBMDStreamingDeviceInput : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE DoesSupportVideoInputMode(
|
|
/* [in] */ BMDDisplayMode inputMode,
|
|
/* [out] */ BOOL *result) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetVideoInputModeIterator(
|
|
/* [out] */ IDeckLinkDisplayModeIterator **iterator) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetVideoInputMode(
|
|
/* [in] */ BMDDisplayMode inputMode) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetCurrentDetectedVideoInputMode(
|
|
/* [out] */ BMDDisplayMode *detectedMode) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetVideoEncodingMode(
|
|
/* [out] */ IBMDStreamingVideoEncodingMode **encodingMode) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetVideoEncodingModePresetIterator(
|
|
/* [in] */ BMDDisplayMode inputMode,
|
|
/* [out] */ IBMDStreamingVideoEncodingModePresetIterator **iterator) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE DoesSupportVideoEncodingMode(
|
|
/* [in] */ BMDDisplayMode inputMode,
|
|
/* [in] */ IBMDStreamingVideoEncodingMode *encodingMode,
|
|
/* [out] */ BMDStreamingEncodingSupport *result,
|
|
/* [out] */ IBMDStreamingVideoEncodingMode **changedEncodingMode) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetVideoEncodingMode(
|
|
/* [in] */ IBMDStreamingVideoEncodingMode *encodingMode) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE StartCapture( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE StopCapture( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetCallback(
|
|
/* [in] */ IUnknown *theCallback) = 0;
|
|
|
|
};
|
|
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IBMDStreamingDeviceInputVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IBMDStreamingDeviceInput * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
_COM_Outptr_ void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IBMDStreamingDeviceInput * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IBMDStreamingDeviceInput * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *DoesSupportVideoInputMode )(
|
|
IBMDStreamingDeviceInput * This,
|
|
/* [in] */ BMDDisplayMode inputMode,
|
|
/* [out] */ BOOL *result);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetVideoInputModeIterator )(
|
|
IBMDStreamingDeviceInput * This,
|
|
/* [out] */ IDeckLinkDisplayModeIterator **iterator);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetVideoInputMode )(
|
|
IBMDStreamingDeviceInput * This,
|
|
/* [in] */ BMDDisplayMode inputMode);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetCurrentDetectedVideoInputMode )(
|
|
IBMDStreamingDeviceInput * This,
|
|
/* [out] */ BMDDisplayMode *detectedMode);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetVideoEncodingMode )(
|
|
IBMDStreamingDeviceInput * This,
|
|
/* [out] */ IBMDStreamingVideoEncodingMode **encodingMode);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetVideoEncodingModePresetIterator )(
|
|
IBMDStreamingDeviceInput * This,
|
|
/* [in] */ BMDDisplayMode inputMode,
|
|
/* [out] */ IBMDStreamingVideoEncodingModePresetIterator **iterator);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *DoesSupportVideoEncodingMode )(
|
|
IBMDStreamingDeviceInput * This,
|
|
/* [in] */ BMDDisplayMode inputMode,
|
|
/* [in] */ IBMDStreamingVideoEncodingMode *encodingMode,
|
|
/* [out] */ BMDStreamingEncodingSupport *result,
|
|
/* [out] */ IBMDStreamingVideoEncodingMode **changedEncodingMode);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetVideoEncodingMode )(
|
|
IBMDStreamingDeviceInput * This,
|
|
/* [in] */ IBMDStreamingVideoEncodingMode *encodingMode);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *StartCapture )(
|
|
IBMDStreamingDeviceInput * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *StopCapture )(
|
|
IBMDStreamingDeviceInput * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetCallback )(
|
|
IBMDStreamingDeviceInput * This,
|
|
/* [in] */ IUnknown *theCallback);
|
|
|
|
END_INTERFACE
|
|
} IBMDStreamingDeviceInputVtbl;
|
|
|
|
interface IBMDStreamingDeviceInput
|
|
{
|
|
CONST_VTBL struct IBMDStreamingDeviceInputVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IBMDStreamingDeviceInput_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IBMDStreamingDeviceInput_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IBMDStreamingDeviceInput_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IBMDStreamingDeviceInput_DoesSupportVideoInputMode(This,inputMode,result) \
|
|
( (This)->lpVtbl -> DoesSupportVideoInputMode(This,inputMode,result) )
|
|
|
|
#define IBMDStreamingDeviceInput_GetVideoInputModeIterator(This,iterator) \
|
|
( (This)->lpVtbl -> GetVideoInputModeIterator(This,iterator) )
|
|
|
|
#define IBMDStreamingDeviceInput_SetVideoInputMode(This,inputMode) \
|
|
( (This)->lpVtbl -> SetVideoInputMode(This,inputMode) )
|
|
|
|
#define IBMDStreamingDeviceInput_GetCurrentDetectedVideoInputMode(This,detectedMode) \
|
|
( (This)->lpVtbl -> GetCurrentDetectedVideoInputMode(This,detectedMode) )
|
|
|
|
#define IBMDStreamingDeviceInput_GetVideoEncodingMode(This,encodingMode) \
|
|
( (This)->lpVtbl -> GetVideoEncodingMode(This,encodingMode) )
|
|
|
|
#define IBMDStreamingDeviceInput_GetVideoEncodingModePresetIterator(This,inputMode,iterator) \
|
|
( (This)->lpVtbl -> GetVideoEncodingModePresetIterator(This,inputMode,iterator) )
|
|
|
|
#define IBMDStreamingDeviceInput_DoesSupportVideoEncodingMode(This,inputMode,encodingMode,result,changedEncodingMode) \
|
|
( (This)->lpVtbl -> DoesSupportVideoEncodingMode(This,inputMode,encodingMode,result,changedEncodingMode) )
|
|
|
|
#define IBMDStreamingDeviceInput_SetVideoEncodingMode(This,encodingMode) \
|
|
( (This)->lpVtbl -> SetVideoEncodingMode(This,encodingMode) )
|
|
|
|
#define IBMDStreamingDeviceInput_StartCapture(This) \
|
|
( (This)->lpVtbl -> StartCapture(This) )
|
|
|
|
#define IBMDStreamingDeviceInput_StopCapture(This) \
|
|
( (This)->lpVtbl -> StopCapture(This) )
|
|
|
|
#define IBMDStreamingDeviceInput_SetCallback(This,theCallback) \
|
|
( (This)->lpVtbl -> SetCallback(This,theCallback) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IBMDStreamingDeviceInput_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IBMDStreamingH264NALPacket_INTERFACE_DEFINED__
|
|
#define __IBMDStreamingH264NALPacket_INTERFACE_DEFINED__
|
|
|
|
/* interface IBMDStreamingH264NALPacket */
|
|
/* [helpstring][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IBMDStreamingH264NALPacket;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("E260E955-14BE-4395-9775-9F02CC0A9D89")
|
|
IBMDStreamingH264NALPacket : public IUnknown
|
|
{
|
|
public:
|
|
virtual long STDMETHODCALLTYPE GetPayloadSize( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetBytes(
|
|
/* [out] */ void **buffer) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetBytesWithSizePrefix(
|
|
/* [out] */ void **buffer) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetDisplayTime(
|
|
/* [in] */ ULONGLONG requestedTimeScale,
|
|
/* [out] */ ULONGLONG *displayTime) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetPacketIndex(
|
|
/* [out] */ unsigned int *packetIndex) = 0;
|
|
|
|
};
|
|
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IBMDStreamingH264NALPacketVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IBMDStreamingH264NALPacket * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
_COM_Outptr_ void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IBMDStreamingH264NALPacket * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IBMDStreamingH264NALPacket * This);
|
|
|
|
long ( STDMETHODCALLTYPE *GetPayloadSize )(
|
|
IBMDStreamingH264NALPacket * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetBytes )(
|
|
IBMDStreamingH264NALPacket * This,
|
|
/* [out] */ void **buffer);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetBytesWithSizePrefix )(
|
|
IBMDStreamingH264NALPacket * This,
|
|
/* [out] */ void **buffer);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetDisplayTime )(
|
|
IBMDStreamingH264NALPacket * This,
|
|
/* [in] */ ULONGLONG requestedTimeScale,
|
|
/* [out] */ ULONGLONG *displayTime);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetPacketIndex )(
|
|
IBMDStreamingH264NALPacket * This,
|
|
/* [out] */ unsigned int *packetIndex);
|
|
|
|
END_INTERFACE
|
|
} IBMDStreamingH264NALPacketVtbl;
|
|
|
|
interface IBMDStreamingH264NALPacket
|
|
{
|
|
CONST_VTBL struct IBMDStreamingH264NALPacketVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IBMDStreamingH264NALPacket_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IBMDStreamingH264NALPacket_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IBMDStreamingH264NALPacket_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IBMDStreamingH264NALPacket_GetPayloadSize(This) \
|
|
( (This)->lpVtbl -> GetPayloadSize(This) )
|
|
|
|
#define IBMDStreamingH264NALPacket_GetBytes(This,buffer) \
|
|
( (This)->lpVtbl -> GetBytes(This,buffer) )
|
|
|
|
#define IBMDStreamingH264NALPacket_GetBytesWithSizePrefix(This,buffer) \
|
|
( (This)->lpVtbl -> GetBytesWithSizePrefix(This,buffer) )
|
|
|
|
#define IBMDStreamingH264NALPacket_GetDisplayTime(This,requestedTimeScale,displayTime) \
|
|
( (This)->lpVtbl -> GetDisplayTime(This,requestedTimeScale,displayTime) )
|
|
|
|
#define IBMDStreamingH264NALPacket_GetPacketIndex(This,packetIndex) \
|
|
( (This)->lpVtbl -> GetPacketIndex(This,packetIndex) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IBMDStreamingH264NALPacket_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IBMDStreamingAudioPacket_INTERFACE_DEFINED__
|
|
#define __IBMDStreamingAudioPacket_INTERFACE_DEFINED__
|
|
|
|
/* interface IBMDStreamingAudioPacket */
|
|
/* [helpstring][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IBMDStreamingAudioPacket;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("D9EB5902-1AD2-43F4-9E2C-3CFA50B5EE19")
|
|
IBMDStreamingAudioPacket : public IUnknown
|
|
{
|
|
public:
|
|
virtual BMDStreamingAudioCodec STDMETHODCALLTYPE GetCodec( void) = 0;
|
|
|
|
virtual long STDMETHODCALLTYPE GetPayloadSize( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetBytes(
|
|
/* [out] */ void **buffer) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetPlayTime(
|
|
/* [in] */ ULONGLONG requestedTimeScale,
|
|
/* [out] */ ULONGLONG *playTime) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetPacketIndex(
|
|
/* [out] */ unsigned int *packetIndex) = 0;
|
|
|
|
};
|
|
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IBMDStreamingAudioPacketVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IBMDStreamingAudioPacket * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
_COM_Outptr_ void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IBMDStreamingAudioPacket * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IBMDStreamingAudioPacket * This);
|
|
|
|
BMDStreamingAudioCodec ( STDMETHODCALLTYPE *GetCodec )(
|
|
IBMDStreamingAudioPacket * This);
|
|
|
|
long ( STDMETHODCALLTYPE *GetPayloadSize )(
|
|
IBMDStreamingAudioPacket * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetBytes )(
|
|
IBMDStreamingAudioPacket * This,
|
|
/* [out] */ void **buffer);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetPlayTime )(
|
|
IBMDStreamingAudioPacket * This,
|
|
/* [in] */ ULONGLONG requestedTimeScale,
|
|
/* [out] */ ULONGLONG *playTime);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetPacketIndex )(
|
|
IBMDStreamingAudioPacket * This,
|
|
/* [out] */ unsigned int *packetIndex);
|
|
|
|
END_INTERFACE
|
|
} IBMDStreamingAudioPacketVtbl;
|
|
|
|
interface IBMDStreamingAudioPacket
|
|
{
|
|
CONST_VTBL struct IBMDStreamingAudioPacketVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IBMDStreamingAudioPacket_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IBMDStreamingAudioPacket_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IBMDStreamingAudioPacket_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IBMDStreamingAudioPacket_GetCodec(This) \
|
|
( (This)->lpVtbl -> GetCodec(This) )
|
|
|
|
#define IBMDStreamingAudioPacket_GetPayloadSize(This) \
|
|
( (This)->lpVtbl -> GetPayloadSize(This) )
|
|
|
|
#define IBMDStreamingAudioPacket_GetBytes(This,buffer) \
|
|
( (This)->lpVtbl -> GetBytes(This,buffer) )
|
|
|
|
#define IBMDStreamingAudioPacket_GetPlayTime(This,requestedTimeScale,playTime) \
|
|
( (This)->lpVtbl -> GetPlayTime(This,requestedTimeScale,playTime) )
|
|
|
|
#define IBMDStreamingAudioPacket_GetPacketIndex(This,packetIndex) \
|
|
( (This)->lpVtbl -> GetPacketIndex(This,packetIndex) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IBMDStreamingAudioPacket_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IBMDStreamingMPEG2TSPacket_INTERFACE_DEFINED__
|
|
#define __IBMDStreamingMPEG2TSPacket_INTERFACE_DEFINED__
|
|
|
|
/* interface IBMDStreamingMPEG2TSPacket */
|
|
/* [helpstring][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IBMDStreamingMPEG2TSPacket;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("91810D1C-4FB3-4AAA-AE56-FA301D3DFA4C")
|
|
IBMDStreamingMPEG2TSPacket : public IUnknown
|
|
{
|
|
public:
|
|
virtual long STDMETHODCALLTYPE GetPayloadSize( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetBytes(
|
|
/* [out] */ void **buffer) = 0;
|
|
|
|
};
|
|
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IBMDStreamingMPEG2TSPacketVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IBMDStreamingMPEG2TSPacket * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
_COM_Outptr_ void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IBMDStreamingMPEG2TSPacket * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IBMDStreamingMPEG2TSPacket * This);
|
|
|
|
long ( STDMETHODCALLTYPE *GetPayloadSize )(
|
|
IBMDStreamingMPEG2TSPacket * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetBytes )(
|
|
IBMDStreamingMPEG2TSPacket * This,
|
|
/* [out] */ void **buffer);
|
|
|
|
END_INTERFACE
|
|
} IBMDStreamingMPEG2TSPacketVtbl;
|
|
|
|
interface IBMDStreamingMPEG2TSPacket
|
|
{
|
|
CONST_VTBL struct IBMDStreamingMPEG2TSPacketVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IBMDStreamingMPEG2TSPacket_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IBMDStreamingMPEG2TSPacket_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IBMDStreamingMPEG2TSPacket_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IBMDStreamingMPEG2TSPacket_GetPayloadSize(This) \
|
|
( (This)->lpVtbl -> GetPayloadSize(This) )
|
|
|
|
#define IBMDStreamingMPEG2TSPacket_GetBytes(This,buffer) \
|
|
( (This)->lpVtbl -> GetBytes(This,buffer) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IBMDStreamingMPEG2TSPacket_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IBMDStreamingH264NALParser_INTERFACE_DEFINED__
|
|
#define __IBMDStreamingH264NALParser_INTERFACE_DEFINED__
|
|
|
|
/* interface IBMDStreamingH264NALParser */
|
|
/* [helpstring][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IBMDStreamingH264NALParser;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("5867F18C-5BFA-4CCC-B2A7-9DFD140417D2")
|
|
IBMDStreamingH264NALParser : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE IsNALSequenceParameterSet(
|
|
/* [in] */ IBMDStreamingH264NALPacket *nal) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE IsNALPictureParameterSet(
|
|
/* [in] */ IBMDStreamingH264NALPacket *nal) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetProfileAndLevelFromSPS(
|
|
/* [in] */ IBMDStreamingH264NALPacket *nal,
|
|
/* [out] */ unsigned int *profileIdc,
|
|
/* [out] */ unsigned int *profileCompatability,
|
|
/* [out] */ unsigned int *levelIdc) = 0;
|
|
|
|
};
|
|
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IBMDStreamingH264NALParserVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IBMDStreamingH264NALParser * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
_COM_Outptr_ void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IBMDStreamingH264NALParser * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IBMDStreamingH264NALParser * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *IsNALSequenceParameterSet )(
|
|
IBMDStreamingH264NALParser * This,
|
|
/* [in] */ IBMDStreamingH264NALPacket *nal);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *IsNALPictureParameterSet )(
|
|
IBMDStreamingH264NALParser * This,
|
|
/* [in] */ IBMDStreamingH264NALPacket *nal);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetProfileAndLevelFromSPS )(
|
|
IBMDStreamingH264NALParser * This,
|
|
/* [in] */ IBMDStreamingH264NALPacket *nal,
|
|
/* [out] */ unsigned int *profileIdc,
|
|
/* [out] */ unsigned int *profileCompatability,
|
|
/* [out] */ unsigned int *levelIdc);
|
|
|
|
END_INTERFACE
|
|
} IBMDStreamingH264NALParserVtbl;
|
|
|
|
interface IBMDStreamingH264NALParser
|
|
{
|
|
CONST_VTBL struct IBMDStreamingH264NALParserVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IBMDStreamingH264NALParser_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IBMDStreamingH264NALParser_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IBMDStreamingH264NALParser_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IBMDStreamingH264NALParser_IsNALSequenceParameterSet(This,nal) \
|
|
( (This)->lpVtbl -> IsNALSequenceParameterSet(This,nal) )
|
|
|
|
#define IBMDStreamingH264NALParser_IsNALPictureParameterSet(This,nal) \
|
|
( (This)->lpVtbl -> IsNALPictureParameterSet(This,nal) )
|
|
|
|
#define IBMDStreamingH264NALParser_GetProfileAndLevelFromSPS(This,nal,profileIdc,profileCompatability,levelIdc) \
|
|
( (This)->lpVtbl -> GetProfileAndLevelFromSPS(This,nal,profileIdc,profileCompatability,levelIdc) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IBMDStreamingH264NALParser_INTERFACE_DEFINED__ */
|
|
|
|
|
|
EXTERN_C const CLSID CLSID_CBMDStreamingDiscovery;
|
|
|
|
#ifdef __cplusplus
|
|
|
|
class DECLSPEC_UUID("0CAA31F6-8A26-40B0-86A4-BF58DCCA710C")
|
|
CBMDStreamingDiscovery;
|
|
#endif
|
|
|
|
EXTERN_C const CLSID CLSID_CBMDStreamingH264NALParser;
|
|
|
|
#ifdef __cplusplus
|
|
|
|
class DECLSPEC_UUID("7753EFBD-951C-407C-97A5-23C737B73B52")
|
|
CBMDStreamingH264NALParser;
|
|
#endif
|
|
|
|
#ifndef __IDeckLinkVideoOutputCallback_INTERFACE_DEFINED__
|
|
#define __IDeckLinkVideoOutputCallback_INTERFACE_DEFINED__
|
|
|
|
/* interface IDeckLinkVideoOutputCallback */
|
|
/* [helpstring][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IDeckLinkVideoOutputCallback;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("20AA5225-1958-47CB-820B-80A8D521A6EE")
|
|
IDeckLinkVideoOutputCallback : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE ScheduledFrameCompleted(
|
|
/* [in] */ IDeckLinkVideoFrame *completedFrame,
|
|
/* [in] */ BMDOutputFrameCompletionResult result) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE ScheduledPlaybackHasStopped( void) = 0;
|
|
|
|
};
|
|
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IDeckLinkVideoOutputCallbackVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IDeckLinkVideoOutputCallback * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
_COM_Outptr_ void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IDeckLinkVideoOutputCallback * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IDeckLinkVideoOutputCallback * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *ScheduledFrameCompleted )(
|
|
IDeckLinkVideoOutputCallback * This,
|
|
/* [in] */ IDeckLinkVideoFrame *completedFrame,
|
|
/* [in] */ BMDOutputFrameCompletionResult result);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *ScheduledPlaybackHasStopped )(
|
|
IDeckLinkVideoOutputCallback * This);
|
|
|
|
END_INTERFACE
|
|
} IDeckLinkVideoOutputCallbackVtbl;
|
|
|
|
interface IDeckLinkVideoOutputCallback
|
|
{
|
|
CONST_VTBL struct IDeckLinkVideoOutputCallbackVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IDeckLinkVideoOutputCallback_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IDeckLinkVideoOutputCallback_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IDeckLinkVideoOutputCallback_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IDeckLinkVideoOutputCallback_ScheduledFrameCompleted(This,completedFrame,result) \
|
|
( (This)->lpVtbl -> ScheduledFrameCompleted(This,completedFrame,result) )
|
|
|
|
#define IDeckLinkVideoOutputCallback_ScheduledPlaybackHasStopped(This) \
|
|
( (This)->lpVtbl -> ScheduledPlaybackHasStopped(This) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IDeckLinkVideoOutputCallback_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IDeckLinkInputCallback_INTERFACE_DEFINED__
|
|
#define __IDeckLinkInputCallback_INTERFACE_DEFINED__
|
|
|
|
/* interface IDeckLinkInputCallback */
|
|
/* [helpstring][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IDeckLinkInputCallback;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("DD04E5EC-7415-42AB-AE4A-E80C4DFC044A")
|
|
IDeckLinkInputCallback : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE VideoInputFormatChanged(
|
|
/* [in] */ BMDVideoInputFormatChangedEvents notificationEvents,
|
|
/* [in] */ IDeckLinkDisplayMode *newDisplayMode,
|
|
/* [in] */ BMDDetectedVideoInputFormatFlags detectedSignalFlags) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE VideoInputFrameArrived(
|
|
/* [in] */ IDeckLinkVideoInputFrame *videoFrame,
|
|
/* [in] */ IDeckLinkAudioInputPacket *audioPacket) = 0;
|
|
|
|
};
|
|
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IDeckLinkInputCallbackVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IDeckLinkInputCallback * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
_COM_Outptr_ void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IDeckLinkInputCallback * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IDeckLinkInputCallback * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *VideoInputFormatChanged )(
|
|
IDeckLinkInputCallback * This,
|
|
/* [in] */ BMDVideoInputFormatChangedEvents notificationEvents,
|
|
/* [in] */ IDeckLinkDisplayMode *newDisplayMode,
|
|
/* [in] */ BMDDetectedVideoInputFormatFlags detectedSignalFlags);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *VideoInputFrameArrived )(
|
|
IDeckLinkInputCallback * This,
|
|
/* [in] */ IDeckLinkVideoInputFrame *videoFrame,
|
|
/* [in] */ IDeckLinkAudioInputPacket *audioPacket);
|
|
|
|
END_INTERFACE
|
|
} IDeckLinkInputCallbackVtbl;
|
|
|
|
interface IDeckLinkInputCallback
|
|
{
|
|
CONST_VTBL struct IDeckLinkInputCallbackVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IDeckLinkInputCallback_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IDeckLinkInputCallback_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IDeckLinkInputCallback_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IDeckLinkInputCallback_VideoInputFormatChanged(This,notificationEvents,newDisplayMode,detectedSignalFlags) \
|
|
( (This)->lpVtbl -> VideoInputFormatChanged(This,notificationEvents,newDisplayMode,detectedSignalFlags) )
|
|
|
|
#define IDeckLinkInputCallback_VideoInputFrameArrived(This,videoFrame,audioPacket) \
|
|
( (This)->lpVtbl -> VideoInputFrameArrived(This,videoFrame,audioPacket) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IDeckLinkInputCallback_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IDeckLinkEncoderInputCallback_INTERFACE_DEFINED__
|
|
#define __IDeckLinkEncoderInputCallback_INTERFACE_DEFINED__
|
|
|
|
/* interface IDeckLinkEncoderInputCallback */
|
|
/* [helpstring][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IDeckLinkEncoderInputCallback;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("ACF13E61-F4A0-4974-A6A7-59AFF6268B31")
|
|
IDeckLinkEncoderInputCallback : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE VideoInputSignalChanged(
|
|
/* [in] */ BMDVideoInputFormatChangedEvents notificationEvents,
|
|
/* [in] */ IDeckLinkDisplayMode *newDisplayMode,
|
|
/* [in] */ BMDDetectedVideoInputFormatFlags detectedSignalFlags) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE VideoPacketArrived(
|
|
/* [in] */ IDeckLinkEncoderVideoPacket *videoPacket) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE AudioPacketArrived(
|
|
/* [in] */ IDeckLinkEncoderAudioPacket *audioPacket) = 0;
|
|
|
|
};
|
|
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IDeckLinkEncoderInputCallbackVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IDeckLinkEncoderInputCallback * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
_COM_Outptr_ void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IDeckLinkEncoderInputCallback * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IDeckLinkEncoderInputCallback * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *VideoInputSignalChanged )(
|
|
IDeckLinkEncoderInputCallback * This,
|
|
/* [in] */ BMDVideoInputFormatChangedEvents notificationEvents,
|
|
/* [in] */ IDeckLinkDisplayMode *newDisplayMode,
|
|
/* [in] */ BMDDetectedVideoInputFormatFlags detectedSignalFlags);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *VideoPacketArrived )(
|
|
IDeckLinkEncoderInputCallback * This,
|
|
/* [in] */ IDeckLinkEncoderVideoPacket *videoPacket);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *AudioPacketArrived )(
|
|
IDeckLinkEncoderInputCallback * This,
|
|
/* [in] */ IDeckLinkEncoderAudioPacket *audioPacket);
|
|
|
|
END_INTERFACE
|
|
} IDeckLinkEncoderInputCallbackVtbl;
|
|
|
|
interface IDeckLinkEncoderInputCallback
|
|
{
|
|
CONST_VTBL struct IDeckLinkEncoderInputCallbackVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IDeckLinkEncoderInputCallback_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IDeckLinkEncoderInputCallback_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IDeckLinkEncoderInputCallback_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IDeckLinkEncoderInputCallback_VideoInputSignalChanged(This,notificationEvents,newDisplayMode,detectedSignalFlags) \
|
|
( (This)->lpVtbl -> VideoInputSignalChanged(This,notificationEvents,newDisplayMode,detectedSignalFlags) )
|
|
|
|
#define IDeckLinkEncoderInputCallback_VideoPacketArrived(This,videoPacket) \
|
|
( (This)->lpVtbl -> VideoPacketArrived(This,videoPacket) )
|
|
|
|
#define IDeckLinkEncoderInputCallback_AudioPacketArrived(This,audioPacket) \
|
|
( (This)->lpVtbl -> AudioPacketArrived(This,audioPacket) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IDeckLinkEncoderInputCallback_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IDeckLinkMemoryAllocator_INTERFACE_DEFINED__
|
|
#define __IDeckLinkMemoryAllocator_INTERFACE_DEFINED__
|
|
|
|
/* interface IDeckLinkMemoryAllocator */
|
|
/* [helpstring][local][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IDeckLinkMemoryAllocator;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("B36EB6E7-9D29-4AA8-92EF-843B87A289E8")
|
|
IDeckLinkMemoryAllocator : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE AllocateBuffer(
|
|
/* [in] */ unsigned int bufferSize,
|
|
/* [out] */ void **allocatedBuffer) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE ReleaseBuffer(
|
|
/* [in] */ void *buffer) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE Commit( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE Decommit( void) = 0;
|
|
|
|
};
|
|
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IDeckLinkMemoryAllocatorVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IDeckLinkMemoryAllocator * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
_COM_Outptr_ void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IDeckLinkMemoryAllocator * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IDeckLinkMemoryAllocator * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *AllocateBuffer )(
|
|
IDeckLinkMemoryAllocator * This,
|
|
/* [in] */ unsigned int bufferSize,
|
|
/* [out] */ void **allocatedBuffer);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *ReleaseBuffer )(
|
|
IDeckLinkMemoryAllocator * This,
|
|
/* [in] */ void *buffer);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *Commit )(
|
|
IDeckLinkMemoryAllocator * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *Decommit )(
|
|
IDeckLinkMemoryAllocator * This);
|
|
|
|
END_INTERFACE
|
|
} IDeckLinkMemoryAllocatorVtbl;
|
|
|
|
interface IDeckLinkMemoryAllocator
|
|
{
|
|
CONST_VTBL struct IDeckLinkMemoryAllocatorVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IDeckLinkMemoryAllocator_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IDeckLinkMemoryAllocator_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IDeckLinkMemoryAllocator_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IDeckLinkMemoryAllocator_AllocateBuffer(This,bufferSize,allocatedBuffer) \
|
|
( (This)->lpVtbl -> AllocateBuffer(This,bufferSize,allocatedBuffer) )
|
|
|
|
#define IDeckLinkMemoryAllocator_ReleaseBuffer(This,buffer) \
|
|
( (This)->lpVtbl -> ReleaseBuffer(This,buffer) )
|
|
|
|
#define IDeckLinkMemoryAllocator_Commit(This) \
|
|
( (This)->lpVtbl -> Commit(This) )
|
|
|
|
#define IDeckLinkMemoryAllocator_Decommit(This) \
|
|
( (This)->lpVtbl -> Decommit(This) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IDeckLinkMemoryAllocator_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IDeckLinkAudioOutputCallback_INTERFACE_DEFINED__
|
|
#define __IDeckLinkAudioOutputCallback_INTERFACE_DEFINED__
|
|
|
|
/* interface IDeckLinkAudioOutputCallback */
|
|
/* [helpstring][local][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IDeckLinkAudioOutputCallback;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("403C681B-7F46-4A12-B993-2BB127084EE6")
|
|
IDeckLinkAudioOutputCallback : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE RenderAudioSamples(
|
|
/* [in] */ BOOL preroll) = 0;
|
|
|
|
};
|
|
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IDeckLinkAudioOutputCallbackVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IDeckLinkAudioOutputCallback * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
_COM_Outptr_ void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IDeckLinkAudioOutputCallback * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IDeckLinkAudioOutputCallback * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *RenderAudioSamples )(
|
|
IDeckLinkAudioOutputCallback * This,
|
|
/* [in] */ BOOL preroll);
|
|
|
|
END_INTERFACE
|
|
} IDeckLinkAudioOutputCallbackVtbl;
|
|
|
|
interface IDeckLinkAudioOutputCallback
|
|
{
|
|
CONST_VTBL struct IDeckLinkAudioOutputCallbackVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IDeckLinkAudioOutputCallback_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IDeckLinkAudioOutputCallback_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IDeckLinkAudioOutputCallback_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IDeckLinkAudioOutputCallback_RenderAudioSamples(This,preroll) \
|
|
( (This)->lpVtbl -> RenderAudioSamples(This,preroll) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IDeckLinkAudioOutputCallback_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IDeckLinkIterator_INTERFACE_DEFINED__
|
|
#define __IDeckLinkIterator_INTERFACE_DEFINED__
|
|
|
|
/* interface IDeckLinkIterator */
|
|
/* [helpstring][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IDeckLinkIterator;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("50FB36CD-3063-4B73-BDBB-958087F2D8BA")
|
|
IDeckLinkIterator : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE Next(
|
|
/* [out] */ IDeckLink **deckLinkInstance) = 0;
|
|
|
|
};
|
|
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IDeckLinkIteratorVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IDeckLinkIterator * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
_COM_Outptr_ void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IDeckLinkIterator * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IDeckLinkIterator * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *Next )(
|
|
IDeckLinkIterator * This,
|
|
/* [out] */ IDeckLink **deckLinkInstance);
|
|
|
|
END_INTERFACE
|
|
} IDeckLinkIteratorVtbl;
|
|
|
|
interface IDeckLinkIterator
|
|
{
|
|
CONST_VTBL struct IDeckLinkIteratorVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IDeckLinkIterator_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IDeckLinkIterator_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IDeckLinkIterator_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IDeckLinkIterator_Next(This,deckLinkInstance) \
|
|
( (This)->lpVtbl -> Next(This,deckLinkInstance) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IDeckLinkIterator_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IDeckLinkAPIInformation_INTERFACE_DEFINED__
|
|
#define __IDeckLinkAPIInformation_INTERFACE_DEFINED__
|
|
|
|
/* interface IDeckLinkAPIInformation */
|
|
/* [helpstring][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IDeckLinkAPIInformation;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("7BEA3C68-730D-4322-AF34-8A7152B532A4")
|
|
IDeckLinkAPIInformation : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE GetFlag(
|
|
/* [in] */ BMDDeckLinkAPIInformationID cfgID,
|
|
/* [out] */ BOOL *value) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetInt(
|
|
/* [in] */ BMDDeckLinkAPIInformationID cfgID,
|
|
/* [out] */ LONGLONG *value) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetFloat(
|
|
/* [in] */ BMDDeckLinkAPIInformationID cfgID,
|
|
/* [out] */ double *value) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetString(
|
|
/* [in] */ BMDDeckLinkAPIInformationID cfgID,
|
|
/* [out] */ BSTR *value) = 0;
|
|
|
|
};
|
|
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IDeckLinkAPIInformationVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IDeckLinkAPIInformation * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
_COM_Outptr_ void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IDeckLinkAPIInformation * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IDeckLinkAPIInformation * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetFlag )(
|
|
IDeckLinkAPIInformation * This,
|
|
/* [in] */ BMDDeckLinkAPIInformationID cfgID,
|
|
/* [out] */ BOOL *value);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetInt )(
|
|
IDeckLinkAPIInformation * This,
|
|
/* [in] */ BMDDeckLinkAPIInformationID cfgID,
|
|
/* [out] */ LONGLONG *value);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetFloat )(
|
|
IDeckLinkAPIInformation * This,
|
|
/* [in] */ BMDDeckLinkAPIInformationID cfgID,
|
|
/* [out] */ double *value);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetString )(
|
|
IDeckLinkAPIInformation * This,
|
|
/* [in] */ BMDDeckLinkAPIInformationID cfgID,
|
|
/* [out] */ BSTR *value);
|
|
|
|
END_INTERFACE
|
|
} IDeckLinkAPIInformationVtbl;
|
|
|
|
interface IDeckLinkAPIInformation
|
|
{
|
|
CONST_VTBL struct IDeckLinkAPIInformationVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IDeckLinkAPIInformation_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IDeckLinkAPIInformation_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IDeckLinkAPIInformation_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IDeckLinkAPIInformation_GetFlag(This,cfgID,value) \
|
|
( (This)->lpVtbl -> GetFlag(This,cfgID,value) )
|
|
|
|
#define IDeckLinkAPIInformation_GetInt(This,cfgID,value) \
|
|
( (This)->lpVtbl -> GetInt(This,cfgID,value) )
|
|
|
|
#define IDeckLinkAPIInformation_GetFloat(This,cfgID,value) \
|
|
( (This)->lpVtbl -> GetFloat(This,cfgID,value) )
|
|
|
|
#define IDeckLinkAPIInformation_GetString(This,cfgID,value) \
|
|
( (This)->lpVtbl -> GetString(This,cfgID,value) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IDeckLinkAPIInformation_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IDeckLinkOutput_INTERFACE_DEFINED__
|
|
#define __IDeckLinkOutput_INTERFACE_DEFINED__
|
|
|
|
/* interface IDeckLinkOutput */
|
|
/* [helpstring][local][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IDeckLinkOutput;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("CC5C8A6E-3F2F-4B3A-87EA-FD78AF300564")
|
|
IDeckLinkOutput : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE DoesSupportVideoMode(
|
|
/* [in] */ BMDDisplayMode displayMode,
|
|
/* [in] */ BMDPixelFormat pixelFormat,
|
|
/* [in] */ BMDVideoOutputFlags flags,
|
|
/* [out] */ BMDDisplayModeSupport *result,
|
|
/* [out] */ IDeckLinkDisplayMode **resultDisplayMode) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetDisplayModeIterator(
|
|
/* [out] */ IDeckLinkDisplayModeIterator **iterator) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetScreenPreviewCallback(
|
|
/* [in] */ IDeckLinkScreenPreviewCallback *previewCallback) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE EnableVideoOutput(
|
|
/* [in] */ BMDDisplayMode displayMode,
|
|
/* [in] */ BMDVideoOutputFlags flags) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE DisableVideoOutput( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetVideoOutputFrameMemoryAllocator(
|
|
/* [in] */ IDeckLinkMemoryAllocator *theAllocator) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE CreateVideoFrame(
|
|
/* [in] */ int width,
|
|
/* [in] */ int height,
|
|
/* [in] */ int rowBytes,
|
|
/* [in] */ BMDPixelFormat pixelFormat,
|
|
/* [in] */ BMDFrameFlags flags,
|
|
/* [out] */ IDeckLinkMutableVideoFrame **outFrame) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE CreateAncillaryData(
|
|
/* [in] */ BMDPixelFormat pixelFormat,
|
|
/* [out] */ IDeckLinkVideoFrameAncillary **outBuffer) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE DisplayVideoFrameSync(
|
|
/* [in] */ IDeckLinkVideoFrame *theFrame) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE ScheduleVideoFrame(
|
|
/* [in] */ IDeckLinkVideoFrame *theFrame,
|
|
/* [in] */ BMDTimeValue displayTime,
|
|
/* [in] */ BMDTimeValue displayDuration,
|
|
/* [in] */ BMDTimeScale timeScale) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetScheduledFrameCompletionCallback(
|
|
/* [in] */ IDeckLinkVideoOutputCallback *theCallback) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetBufferedVideoFrameCount(
|
|
/* [out] */ unsigned int *bufferedFrameCount) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE EnableAudioOutput(
|
|
/* [in] */ BMDAudioSampleRate sampleRate,
|
|
/* [in] */ BMDAudioSampleType sampleType,
|
|
/* [in] */ unsigned int channelCount,
|
|
/* [in] */ BMDAudioOutputStreamType streamType) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE DisableAudioOutput( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE WriteAudioSamplesSync(
|
|
/* [in] */ void *buffer,
|
|
/* [in] */ unsigned int sampleFrameCount,
|
|
/* [out] */ unsigned int *sampleFramesWritten) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE BeginAudioPreroll( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE EndAudioPreroll( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE ScheduleAudioSamples(
|
|
/* [in] */ void *buffer,
|
|
/* [in] */ unsigned int sampleFrameCount,
|
|
/* [in] */ BMDTimeValue streamTime,
|
|
/* [in] */ BMDTimeScale timeScale,
|
|
/* [out] */ unsigned int *sampleFramesWritten) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetBufferedAudioSampleFrameCount(
|
|
/* [out] */ unsigned int *bufferedSampleFrameCount) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE FlushBufferedAudioSamples( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetAudioCallback(
|
|
/* [in] */ IDeckLinkAudioOutputCallback *theCallback) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE StartScheduledPlayback(
|
|
/* [in] */ BMDTimeValue playbackStartTime,
|
|
/* [in] */ BMDTimeScale timeScale,
|
|
/* [in] */ double playbackSpeed) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE StopScheduledPlayback(
|
|
/* [in] */ BMDTimeValue stopPlaybackAtTime,
|
|
/* [out] */ BMDTimeValue *actualStopTime,
|
|
/* [in] */ BMDTimeScale timeScale) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE IsScheduledPlaybackRunning(
|
|
/* [out] */ BOOL *active) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetScheduledStreamTime(
|
|
/* [in] */ BMDTimeScale desiredTimeScale,
|
|
/* [out] */ BMDTimeValue *streamTime,
|
|
/* [out] */ double *playbackSpeed) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetReferenceStatus(
|
|
/* [out] */ BMDReferenceStatus *referenceStatus) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetHardwareReferenceClock(
|
|
/* [in] */ BMDTimeScale desiredTimeScale,
|
|
/* [out] */ BMDTimeValue *hardwareTime,
|
|
/* [out] */ BMDTimeValue *timeInFrame,
|
|
/* [out] */ BMDTimeValue *ticksPerFrame) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetFrameCompletionReferenceTimestamp(
|
|
/* [in] */ IDeckLinkVideoFrame *theFrame,
|
|
/* [in] */ BMDTimeScale desiredTimeScale,
|
|
/* [out] */ BMDTimeValue *frameCompletionTimestamp) = 0;
|
|
|
|
};
|
|
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IDeckLinkOutputVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IDeckLinkOutput * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
_COM_Outptr_ void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IDeckLinkOutput * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IDeckLinkOutput * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *DoesSupportVideoMode )(
|
|
IDeckLinkOutput * This,
|
|
/* [in] */ BMDDisplayMode displayMode,
|
|
/* [in] */ BMDPixelFormat pixelFormat,
|
|
/* [in] */ BMDVideoOutputFlags flags,
|
|
/* [out] */ BMDDisplayModeSupport *result,
|
|
/* [out] */ IDeckLinkDisplayMode **resultDisplayMode);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetDisplayModeIterator )(
|
|
IDeckLinkOutput * This,
|
|
/* [out] */ IDeckLinkDisplayModeIterator **iterator);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetScreenPreviewCallback )(
|
|
IDeckLinkOutput * This,
|
|
/* [in] */ IDeckLinkScreenPreviewCallback *previewCallback);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *EnableVideoOutput )(
|
|
IDeckLinkOutput * This,
|
|
/* [in] */ BMDDisplayMode displayMode,
|
|
/* [in] */ BMDVideoOutputFlags flags);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *DisableVideoOutput )(
|
|
IDeckLinkOutput * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetVideoOutputFrameMemoryAllocator )(
|
|
IDeckLinkOutput * This,
|
|
/* [in] */ IDeckLinkMemoryAllocator *theAllocator);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *CreateVideoFrame )(
|
|
IDeckLinkOutput * This,
|
|
/* [in] */ int width,
|
|
/* [in] */ int height,
|
|
/* [in] */ int rowBytes,
|
|
/* [in] */ BMDPixelFormat pixelFormat,
|
|
/* [in] */ BMDFrameFlags flags,
|
|
/* [out] */ IDeckLinkMutableVideoFrame **outFrame);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *CreateAncillaryData )(
|
|
IDeckLinkOutput * This,
|
|
/* [in] */ BMDPixelFormat pixelFormat,
|
|
/* [out] */ IDeckLinkVideoFrameAncillary **outBuffer);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *DisplayVideoFrameSync )(
|
|
IDeckLinkOutput * This,
|
|
/* [in] */ IDeckLinkVideoFrame *theFrame);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *ScheduleVideoFrame )(
|
|
IDeckLinkOutput * This,
|
|
/* [in] */ IDeckLinkVideoFrame *theFrame,
|
|
/* [in] */ BMDTimeValue displayTime,
|
|
/* [in] */ BMDTimeValue displayDuration,
|
|
/* [in] */ BMDTimeScale timeScale);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetScheduledFrameCompletionCallback )(
|
|
IDeckLinkOutput * This,
|
|
/* [in] */ IDeckLinkVideoOutputCallback *theCallback);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetBufferedVideoFrameCount )(
|
|
IDeckLinkOutput * This,
|
|
/* [out] */ unsigned int *bufferedFrameCount);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *EnableAudioOutput )(
|
|
IDeckLinkOutput * This,
|
|
/* [in] */ BMDAudioSampleRate sampleRate,
|
|
/* [in] */ BMDAudioSampleType sampleType,
|
|
/* [in] */ unsigned int channelCount,
|
|
/* [in] */ BMDAudioOutputStreamType streamType);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *DisableAudioOutput )(
|
|
IDeckLinkOutput * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *WriteAudioSamplesSync )(
|
|
IDeckLinkOutput * This,
|
|
/* [in] */ void *buffer,
|
|
/* [in] */ unsigned int sampleFrameCount,
|
|
/* [out] */ unsigned int *sampleFramesWritten);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *BeginAudioPreroll )(
|
|
IDeckLinkOutput * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *EndAudioPreroll )(
|
|
IDeckLinkOutput * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *ScheduleAudioSamples )(
|
|
IDeckLinkOutput * This,
|
|
/* [in] */ void *buffer,
|
|
/* [in] */ unsigned int sampleFrameCount,
|
|
/* [in] */ BMDTimeValue streamTime,
|
|
/* [in] */ BMDTimeScale timeScale,
|
|
/* [out] */ unsigned int *sampleFramesWritten);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetBufferedAudioSampleFrameCount )(
|
|
IDeckLinkOutput * This,
|
|
/* [out] */ unsigned int *bufferedSampleFrameCount);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *FlushBufferedAudioSamples )(
|
|
IDeckLinkOutput * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetAudioCallback )(
|
|
IDeckLinkOutput * This,
|
|
/* [in] */ IDeckLinkAudioOutputCallback *theCallback);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *StartScheduledPlayback )(
|
|
IDeckLinkOutput * This,
|
|
/* [in] */ BMDTimeValue playbackStartTime,
|
|
/* [in] */ BMDTimeScale timeScale,
|
|
/* [in] */ double playbackSpeed);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *StopScheduledPlayback )(
|
|
IDeckLinkOutput * This,
|
|
/* [in] */ BMDTimeValue stopPlaybackAtTime,
|
|
/* [out] */ BMDTimeValue *actualStopTime,
|
|
/* [in] */ BMDTimeScale timeScale);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *IsScheduledPlaybackRunning )(
|
|
IDeckLinkOutput * This,
|
|
/* [out] */ BOOL *active);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetScheduledStreamTime )(
|
|
IDeckLinkOutput * This,
|
|
/* [in] */ BMDTimeScale desiredTimeScale,
|
|
/* [out] */ BMDTimeValue *streamTime,
|
|
/* [out] */ double *playbackSpeed);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetReferenceStatus )(
|
|
IDeckLinkOutput * This,
|
|
/* [out] */ BMDReferenceStatus *referenceStatus);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetHardwareReferenceClock )(
|
|
IDeckLinkOutput * This,
|
|
/* [in] */ BMDTimeScale desiredTimeScale,
|
|
/* [out] */ BMDTimeValue *hardwareTime,
|
|
/* [out] */ BMDTimeValue *timeInFrame,
|
|
/* [out] */ BMDTimeValue *ticksPerFrame);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetFrameCompletionReferenceTimestamp )(
|
|
IDeckLinkOutput * This,
|
|
/* [in] */ IDeckLinkVideoFrame *theFrame,
|
|
/* [in] */ BMDTimeScale desiredTimeScale,
|
|
/* [out] */ BMDTimeValue *frameCompletionTimestamp);
|
|
|
|
END_INTERFACE
|
|
} IDeckLinkOutputVtbl;
|
|
|
|
interface IDeckLinkOutput
|
|
{
|
|
CONST_VTBL struct IDeckLinkOutputVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IDeckLinkOutput_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IDeckLinkOutput_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IDeckLinkOutput_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IDeckLinkOutput_DoesSupportVideoMode(This,displayMode,pixelFormat,flags,result,resultDisplayMode) \
|
|
( (This)->lpVtbl -> DoesSupportVideoMode(This,displayMode,pixelFormat,flags,result,resultDisplayMode) )
|
|
|
|
#define IDeckLinkOutput_GetDisplayModeIterator(This,iterator) \
|
|
( (This)->lpVtbl -> GetDisplayModeIterator(This,iterator) )
|
|
|
|
#define IDeckLinkOutput_SetScreenPreviewCallback(This,previewCallback) \
|
|
( (This)->lpVtbl -> SetScreenPreviewCallback(This,previewCallback) )
|
|
|
|
#define IDeckLinkOutput_EnableVideoOutput(This,displayMode,flags) \
|
|
( (This)->lpVtbl -> EnableVideoOutput(This,displayMode,flags) )
|
|
|
|
#define IDeckLinkOutput_DisableVideoOutput(This) \
|
|
( (This)->lpVtbl -> DisableVideoOutput(This) )
|
|
|
|
#define IDeckLinkOutput_SetVideoOutputFrameMemoryAllocator(This,theAllocator) \
|
|
( (This)->lpVtbl -> SetVideoOutputFrameMemoryAllocator(This,theAllocator) )
|
|
|
|
#define IDeckLinkOutput_CreateVideoFrame(This,width,height,rowBytes,pixelFormat,flags,outFrame) \
|
|
( (This)->lpVtbl -> CreateVideoFrame(This,width,height,rowBytes,pixelFormat,flags,outFrame) )
|
|
|
|
#define IDeckLinkOutput_CreateAncillaryData(This,pixelFormat,outBuffer) \
|
|
( (This)->lpVtbl -> CreateAncillaryData(This,pixelFormat,outBuffer) )
|
|
|
|
#define IDeckLinkOutput_DisplayVideoFrameSync(This,theFrame) \
|
|
( (This)->lpVtbl -> DisplayVideoFrameSync(This,theFrame) )
|
|
|
|
#define IDeckLinkOutput_ScheduleVideoFrame(This,theFrame,displayTime,displayDuration,timeScale) \
|
|
( (This)->lpVtbl -> ScheduleVideoFrame(This,theFrame,displayTime,displayDuration,timeScale) )
|
|
|
|
#define IDeckLinkOutput_SetScheduledFrameCompletionCallback(This,theCallback) \
|
|
( (This)->lpVtbl -> SetScheduledFrameCompletionCallback(This,theCallback) )
|
|
|
|
#define IDeckLinkOutput_GetBufferedVideoFrameCount(This,bufferedFrameCount) \
|
|
( (This)->lpVtbl -> GetBufferedVideoFrameCount(This,bufferedFrameCount) )
|
|
|
|
#define IDeckLinkOutput_EnableAudioOutput(This,sampleRate,sampleType,channelCount,streamType) \
|
|
( (This)->lpVtbl -> EnableAudioOutput(This,sampleRate,sampleType,channelCount,streamType) )
|
|
|
|
#define IDeckLinkOutput_DisableAudioOutput(This) \
|
|
( (This)->lpVtbl -> DisableAudioOutput(This) )
|
|
|
|
#define IDeckLinkOutput_WriteAudioSamplesSync(This,buffer,sampleFrameCount,sampleFramesWritten) \
|
|
( (This)->lpVtbl -> WriteAudioSamplesSync(This,buffer,sampleFrameCount,sampleFramesWritten) )
|
|
|
|
#define IDeckLinkOutput_BeginAudioPreroll(This) \
|
|
( (This)->lpVtbl -> BeginAudioPreroll(This) )
|
|
|
|
#define IDeckLinkOutput_EndAudioPreroll(This) \
|
|
( (This)->lpVtbl -> EndAudioPreroll(This) )
|
|
|
|
#define IDeckLinkOutput_ScheduleAudioSamples(This,buffer,sampleFrameCount,streamTime,timeScale,sampleFramesWritten) \
|
|
( (This)->lpVtbl -> ScheduleAudioSamples(This,buffer,sampleFrameCount,streamTime,timeScale,sampleFramesWritten) )
|
|
|
|
#define IDeckLinkOutput_GetBufferedAudioSampleFrameCount(This,bufferedSampleFrameCount) \
|
|
( (This)->lpVtbl -> GetBufferedAudioSampleFrameCount(This,bufferedSampleFrameCount) )
|
|
|
|
#define IDeckLinkOutput_FlushBufferedAudioSamples(This) \
|
|
( (This)->lpVtbl -> FlushBufferedAudioSamples(This) )
|
|
|
|
#define IDeckLinkOutput_SetAudioCallback(This,theCallback) \
|
|
( (This)->lpVtbl -> SetAudioCallback(This,theCallback) )
|
|
|
|
#define IDeckLinkOutput_StartScheduledPlayback(This,playbackStartTime,timeScale,playbackSpeed) \
|
|
( (This)->lpVtbl -> StartScheduledPlayback(This,playbackStartTime,timeScale,playbackSpeed) )
|
|
|
|
#define IDeckLinkOutput_StopScheduledPlayback(This,stopPlaybackAtTime,actualStopTime,timeScale) \
|
|
( (This)->lpVtbl -> StopScheduledPlayback(This,stopPlaybackAtTime,actualStopTime,timeScale) )
|
|
|
|
#define IDeckLinkOutput_IsScheduledPlaybackRunning(This,active) \
|
|
( (This)->lpVtbl -> IsScheduledPlaybackRunning(This,active) )
|
|
|
|
#define IDeckLinkOutput_GetScheduledStreamTime(This,desiredTimeScale,streamTime,playbackSpeed) \
|
|
( (This)->lpVtbl -> GetScheduledStreamTime(This,desiredTimeScale,streamTime,playbackSpeed) )
|
|
|
|
#define IDeckLinkOutput_GetReferenceStatus(This,referenceStatus) \
|
|
( (This)->lpVtbl -> GetReferenceStatus(This,referenceStatus) )
|
|
|
|
#define IDeckLinkOutput_GetHardwareReferenceClock(This,desiredTimeScale,hardwareTime,timeInFrame,ticksPerFrame) \
|
|
( (This)->lpVtbl -> GetHardwareReferenceClock(This,desiredTimeScale,hardwareTime,timeInFrame,ticksPerFrame) )
|
|
|
|
#define IDeckLinkOutput_GetFrameCompletionReferenceTimestamp(This,theFrame,desiredTimeScale,frameCompletionTimestamp) \
|
|
( (This)->lpVtbl -> GetFrameCompletionReferenceTimestamp(This,theFrame,desiredTimeScale,frameCompletionTimestamp) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IDeckLinkOutput_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IDeckLinkInput_INTERFACE_DEFINED__
|
|
#define __IDeckLinkInput_INTERFACE_DEFINED__
|
|
|
|
/* interface IDeckLinkInput */
|
|
/* [helpstring][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IDeckLinkInput;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("AF22762B-DFAC-4846-AA79-FA8883560995")
|
|
IDeckLinkInput : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE DoesSupportVideoMode(
|
|
/* [in] */ BMDDisplayMode displayMode,
|
|
/* [in] */ BMDPixelFormat pixelFormat,
|
|
/* [in] */ BMDVideoInputFlags flags,
|
|
/* [out] */ BMDDisplayModeSupport *result,
|
|
/* [out] */ IDeckLinkDisplayMode **resultDisplayMode) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetDisplayModeIterator(
|
|
/* [out] */ IDeckLinkDisplayModeIterator **iterator) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetScreenPreviewCallback(
|
|
/* [in] */ IDeckLinkScreenPreviewCallback *previewCallback) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE EnableVideoInput(
|
|
/* [in] */ BMDDisplayMode displayMode,
|
|
/* [in] */ BMDPixelFormat pixelFormat,
|
|
/* [in] */ BMDVideoInputFlags flags) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE DisableVideoInput( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetAvailableVideoFrameCount(
|
|
/* [out] */ unsigned int *availableFrameCount) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetVideoInputFrameMemoryAllocator(
|
|
/* [in] */ IDeckLinkMemoryAllocator *theAllocator) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE EnableAudioInput(
|
|
/* [in] */ BMDAudioSampleRate sampleRate,
|
|
/* [in] */ BMDAudioSampleType sampleType,
|
|
/* [in] */ unsigned int channelCount) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE DisableAudioInput( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetAvailableAudioSampleFrameCount(
|
|
/* [out] */ unsigned int *availableSampleFrameCount) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE StartStreams( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE StopStreams( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE PauseStreams( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE FlushStreams( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetCallback(
|
|
/* [in] */ IDeckLinkInputCallback *theCallback) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetHardwareReferenceClock(
|
|
/* [in] */ BMDTimeScale desiredTimeScale,
|
|
/* [out] */ BMDTimeValue *hardwareTime,
|
|
/* [out] */ BMDTimeValue *timeInFrame,
|
|
/* [out] */ BMDTimeValue *ticksPerFrame) = 0;
|
|
|
|
};
|
|
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IDeckLinkInputVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IDeckLinkInput * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
_COM_Outptr_ void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IDeckLinkInput * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IDeckLinkInput * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *DoesSupportVideoMode )(
|
|
IDeckLinkInput * This,
|
|
/* [in] */ BMDDisplayMode displayMode,
|
|
/* [in] */ BMDPixelFormat pixelFormat,
|
|
/* [in] */ BMDVideoInputFlags flags,
|
|
/* [out] */ BMDDisplayModeSupport *result,
|
|
/* [out] */ IDeckLinkDisplayMode **resultDisplayMode);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetDisplayModeIterator )(
|
|
IDeckLinkInput * This,
|
|
/* [out] */ IDeckLinkDisplayModeIterator **iterator);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetScreenPreviewCallback )(
|
|
IDeckLinkInput * This,
|
|
/* [in] */ IDeckLinkScreenPreviewCallback *previewCallback);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *EnableVideoInput )(
|
|
IDeckLinkInput * This,
|
|
/* [in] */ BMDDisplayMode displayMode,
|
|
/* [in] */ BMDPixelFormat pixelFormat,
|
|
/* [in] */ BMDVideoInputFlags flags);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *DisableVideoInput )(
|
|
IDeckLinkInput * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetAvailableVideoFrameCount )(
|
|
IDeckLinkInput * This,
|
|
/* [out] */ unsigned int *availableFrameCount);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetVideoInputFrameMemoryAllocator )(
|
|
IDeckLinkInput * This,
|
|
/* [in] */ IDeckLinkMemoryAllocator *theAllocator);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *EnableAudioInput )(
|
|
IDeckLinkInput * This,
|
|
/* [in] */ BMDAudioSampleRate sampleRate,
|
|
/* [in] */ BMDAudioSampleType sampleType,
|
|
/* [in] */ unsigned int channelCount);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *DisableAudioInput )(
|
|
IDeckLinkInput * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetAvailableAudioSampleFrameCount )(
|
|
IDeckLinkInput * This,
|
|
/* [out] */ unsigned int *availableSampleFrameCount);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *StartStreams )(
|
|
IDeckLinkInput * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *StopStreams )(
|
|
IDeckLinkInput * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *PauseStreams )(
|
|
IDeckLinkInput * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *FlushStreams )(
|
|
IDeckLinkInput * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetCallback )(
|
|
IDeckLinkInput * This,
|
|
/* [in] */ IDeckLinkInputCallback *theCallback);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetHardwareReferenceClock )(
|
|
IDeckLinkInput * This,
|
|
/* [in] */ BMDTimeScale desiredTimeScale,
|
|
/* [out] */ BMDTimeValue *hardwareTime,
|
|
/* [out] */ BMDTimeValue *timeInFrame,
|
|
/* [out] */ BMDTimeValue *ticksPerFrame);
|
|
|
|
END_INTERFACE
|
|
} IDeckLinkInputVtbl;
|
|
|
|
interface IDeckLinkInput
|
|
{
|
|
CONST_VTBL struct IDeckLinkInputVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IDeckLinkInput_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IDeckLinkInput_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IDeckLinkInput_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IDeckLinkInput_DoesSupportVideoMode(This,displayMode,pixelFormat,flags,result,resultDisplayMode) \
|
|
( (This)->lpVtbl -> DoesSupportVideoMode(This,displayMode,pixelFormat,flags,result,resultDisplayMode) )
|
|
|
|
#define IDeckLinkInput_GetDisplayModeIterator(This,iterator) \
|
|
( (This)->lpVtbl -> GetDisplayModeIterator(This,iterator) )
|
|
|
|
#define IDeckLinkInput_SetScreenPreviewCallback(This,previewCallback) \
|
|
( (This)->lpVtbl -> SetScreenPreviewCallback(This,previewCallback) )
|
|
|
|
#define IDeckLinkInput_EnableVideoInput(This,displayMode,pixelFormat,flags) \
|
|
( (This)->lpVtbl -> EnableVideoInput(This,displayMode,pixelFormat,flags) )
|
|
|
|
#define IDeckLinkInput_DisableVideoInput(This) \
|
|
( (This)->lpVtbl -> DisableVideoInput(This) )
|
|
|
|
#define IDeckLinkInput_GetAvailableVideoFrameCount(This,availableFrameCount) \
|
|
( (This)->lpVtbl -> GetAvailableVideoFrameCount(This,availableFrameCount) )
|
|
|
|
#define IDeckLinkInput_SetVideoInputFrameMemoryAllocator(This,theAllocator) \
|
|
( (This)->lpVtbl -> SetVideoInputFrameMemoryAllocator(This,theAllocator) )
|
|
|
|
#define IDeckLinkInput_EnableAudioInput(This,sampleRate,sampleType,channelCount) \
|
|
( (This)->lpVtbl -> EnableAudioInput(This,sampleRate,sampleType,channelCount) )
|
|
|
|
#define IDeckLinkInput_DisableAudioInput(This) \
|
|
( (This)->lpVtbl -> DisableAudioInput(This) )
|
|
|
|
#define IDeckLinkInput_GetAvailableAudioSampleFrameCount(This,availableSampleFrameCount) \
|
|
( (This)->lpVtbl -> GetAvailableAudioSampleFrameCount(This,availableSampleFrameCount) )
|
|
|
|
#define IDeckLinkInput_StartStreams(This) \
|
|
( (This)->lpVtbl -> StartStreams(This) )
|
|
|
|
#define IDeckLinkInput_StopStreams(This) \
|
|
( (This)->lpVtbl -> StopStreams(This) )
|
|
|
|
#define IDeckLinkInput_PauseStreams(This) \
|
|
( (This)->lpVtbl -> PauseStreams(This) )
|
|
|
|
#define IDeckLinkInput_FlushStreams(This) \
|
|
( (This)->lpVtbl -> FlushStreams(This) )
|
|
|
|
#define IDeckLinkInput_SetCallback(This,theCallback) \
|
|
( (This)->lpVtbl -> SetCallback(This,theCallback) )
|
|
|
|
#define IDeckLinkInput_GetHardwareReferenceClock(This,desiredTimeScale,hardwareTime,timeInFrame,ticksPerFrame) \
|
|
( (This)->lpVtbl -> GetHardwareReferenceClock(This,desiredTimeScale,hardwareTime,timeInFrame,ticksPerFrame) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IDeckLinkInput_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IDeckLinkEncoderInput_INTERFACE_DEFINED__
|
|
#define __IDeckLinkEncoderInput_INTERFACE_DEFINED__
|
|
|
|
/* interface IDeckLinkEncoderInput */
|
|
/* [helpstring][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IDeckLinkEncoderInput;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("270587DA-6B7D-42E7-A1F0-6D853F581185")
|
|
IDeckLinkEncoderInput : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE DoesSupportVideoMode(
|
|
/* [in] */ BMDDisplayMode displayMode,
|
|
/* [in] */ BMDPixelFormat pixelFormat,
|
|
/* [in] */ BMDVideoInputFlags flags,
|
|
/* [out] */ BMDDisplayModeSupport *result,
|
|
/* [out] */ IDeckLinkDisplayMode **resultDisplayMode) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetDisplayModeIterator(
|
|
/* [out] */ IDeckLinkDisplayModeIterator **iterator) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE EnableVideoInput(
|
|
/* [in] */ BMDDisplayMode displayMode,
|
|
/* [in] */ BMDPixelFormat pixelFormat,
|
|
/* [in] */ BMDVideoInputFlags flags) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE DisableVideoInput( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetAvailablePacketsCount(
|
|
/* [out] */ unsigned int *availablePacketsCount) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetMemoryAllocator(
|
|
/* [in] */ IDeckLinkMemoryAllocator *theAllocator) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE EnableAudioInput(
|
|
/* [in] */ BMDAudioFormat audioFormat,
|
|
/* [in] */ BMDAudioSampleRate sampleRate,
|
|
/* [in] */ BMDAudioSampleType sampleType,
|
|
/* [in] */ unsigned int channelCount) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE DisableAudioInput( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetAvailableAudioSampleFrameCount(
|
|
/* [out] */ unsigned int *availableSampleFrameCount) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE StartStreams( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE StopStreams( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE PauseStreams( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE FlushStreams( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetCallback(
|
|
/* [in] */ IDeckLinkEncoderInputCallback *theCallback) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetHardwareReferenceClock(
|
|
/* [in] */ BMDTimeScale desiredTimeScale,
|
|
/* [out] */ BMDTimeValue *hardwareTime,
|
|
/* [out] */ BMDTimeValue *timeInFrame,
|
|
/* [out] */ BMDTimeValue *ticksPerFrame) = 0;
|
|
|
|
};
|
|
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IDeckLinkEncoderInputVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IDeckLinkEncoderInput * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
_COM_Outptr_ void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IDeckLinkEncoderInput * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IDeckLinkEncoderInput * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *DoesSupportVideoMode )(
|
|
IDeckLinkEncoderInput * This,
|
|
/* [in] */ BMDDisplayMode displayMode,
|
|
/* [in] */ BMDPixelFormat pixelFormat,
|
|
/* [in] */ BMDVideoInputFlags flags,
|
|
/* [out] */ BMDDisplayModeSupport *result,
|
|
/* [out] */ IDeckLinkDisplayMode **resultDisplayMode);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetDisplayModeIterator )(
|
|
IDeckLinkEncoderInput * This,
|
|
/* [out] */ IDeckLinkDisplayModeIterator **iterator);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *EnableVideoInput )(
|
|
IDeckLinkEncoderInput * This,
|
|
/* [in] */ BMDDisplayMode displayMode,
|
|
/* [in] */ BMDPixelFormat pixelFormat,
|
|
/* [in] */ BMDVideoInputFlags flags);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *DisableVideoInput )(
|
|
IDeckLinkEncoderInput * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetAvailablePacketsCount )(
|
|
IDeckLinkEncoderInput * This,
|
|
/* [out] */ unsigned int *availablePacketsCount);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetMemoryAllocator )(
|
|
IDeckLinkEncoderInput * This,
|
|
/* [in] */ IDeckLinkMemoryAllocator *theAllocator);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *EnableAudioInput )(
|
|
IDeckLinkEncoderInput * This,
|
|
/* [in] */ BMDAudioFormat audioFormat,
|
|
/* [in] */ BMDAudioSampleRate sampleRate,
|
|
/* [in] */ BMDAudioSampleType sampleType,
|
|
/* [in] */ unsigned int channelCount);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *DisableAudioInput )(
|
|
IDeckLinkEncoderInput * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetAvailableAudioSampleFrameCount )(
|
|
IDeckLinkEncoderInput * This,
|
|
/* [out] */ unsigned int *availableSampleFrameCount);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *StartStreams )(
|
|
IDeckLinkEncoderInput * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *StopStreams )(
|
|
IDeckLinkEncoderInput * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *PauseStreams )(
|
|
IDeckLinkEncoderInput * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *FlushStreams )(
|
|
IDeckLinkEncoderInput * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetCallback )(
|
|
IDeckLinkEncoderInput * This,
|
|
/* [in] */ IDeckLinkEncoderInputCallback *theCallback);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetHardwareReferenceClock )(
|
|
IDeckLinkEncoderInput * This,
|
|
/* [in] */ BMDTimeScale desiredTimeScale,
|
|
/* [out] */ BMDTimeValue *hardwareTime,
|
|
/* [out] */ BMDTimeValue *timeInFrame,
|
|
/* [out] */ BMDTimeValue *ticksPerFrame);
|
|
|
|
END_INTERFACE
|
|
} IDeckLinkEncoderInputVtbl;
|
|
|
|
interface IDeckLinkEncoderInput
|
|
{
|
|
CONST_VTBL struct IDeckLinkEncoderInputVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IDeckLinkEncoderInput_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IDeckLinkEncoderInput_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IDeckLinkEncoderInput_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IDeckLinkEncoderInput_DoesSupportVideoMode(This,displayMode,pixelFormat,flags,result,resultDisplayMode) \
|
|
( (This)->lpVtbl -> DoesSupportVideoMode(This,displayMode,pixelFormat,flags,result,resultDisplayMode) )
|
|
|
|
#define IDeckLinkEncoderInput_GetDisplayModeIterator(This,iterator) \
|
|
( (This)->lpVtbl -> GetDisplayModeIterator(This,iterator) )
|
|
|
|
#define IDeckLinkEncoderInput_EnableVideoInput(This,displayMode,pixelFormat,flags) \
|
|
( (This)->lpVtbl -> EnableVideoInput(This,displayMode,pixelFormat,flags) )
|
|
|
|
#define IDeckLinkEncoderInput_DisableVideoInput(This) \
|
|
( (This)->lpVtbl -> DisableVideoInput(This) )
|
|
|
|
#define IDeckLinkEncoderInput_GetAvailablePacketsCount(This,availablePacketsCount) \
|
|
( (This)->lpVtbl -> GetAvailablePacketsCount(This,availablePacketsCount) )
|
|
|
|
#define IDeckLinkEncoderInput_SetMemoryAllocator(This,theAllocator) \
|
|
( (This)->lpVtbl -> SetMemoryAllocator(This,theAllocator) )
|
|
|
|
#define IDeckLinkEncoderInput_EnableAudioInput(This,audioFormat,sampleRate,sampleType,channelCount) \
|
|
( (This)->lpVtbl -> EnableAudioInput(This,audioFormat,sampleRate,sampleType,channelCount) )
|
|
|
|
#define IDeckLinkEncoderInput_DisableAudioInput(This) \
|
|
( (This)->lpVtbl -> DisableAudioInput(This) )
|
|
|
|
#define IDeckLinkEncoderInput_GetAvailableAudioSampleFrameCount(This,availableSampleFrameCount) \
|
|
( (This)->lpVtbl -> GetAvailableAudioSampleFrameCount(This,availableSampleFrameCount) )
|
|
|
|
#define IDeckLinkEncoderInput_StartStreams(This) \
|
|
( (This)->lpVtbl -> StartStreams(This) )
|
|
|
|
#define IDeckLinkEncoderInput_StopStreams(This) \
|
|
( (This)->lpVtbl -> StopStreams(This) )
|
|
|
|
#define IDeckLinkEncoderInput_PauseStreams(This) \
|
|
( (This)->lpVtbl -> PauseStreams(This) )
|
|
|
|
#define IDeckLinkEncoderInput_FlushStreams(This) \
|
|
( (This)->lpVtbl -> FlushStreams(This) )
|
|
|
|
#define IDeckLinkEncoderInput_SetCallback(This,theCallback) \
|
|
( (This)->lpVtbl -> SetCallback(This,theCallback) )
|
|
|
|
#define IDeckLinkEncoderInput_GetHardwareReferenceClock(This,desiredTimeScale,hardwareTime,timeInFrame,ticksPerFrame) \
|
|
( (This)->lpVtbl -> GetHardwareReferenceClock(This,desiredTimeScale,hardwareTime,timeInFrame,ticksPerFrame) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IDeckLinkEncoderInput_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IDeckLinkVideoFrame_INTERFACE_DEFINED__
|
|
#define __IDeckLinkVideoFrame_INTERFACE_DEFINED__
|
|
|
|
/* interface IDeckLinkVideoFrame */
|
|
/* [helpstring][local][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IDeckLinkVideoFrame;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("3F716FE0-F023-4111-BE5D-EF4414C05B17")
|
|
IDeckLinkVideoFrame : public IUnknown
|
|
{
|
|
public:
|
|
virtual long STDMETHODCALLTYPE GetWidth( void) = 0;
|
|
|
|
virtual long STDMETHODCALLTYPE GetHeight( void) = 0;
|
|
|
|
virtual long STDMETHODCALLTYPE GetRowBytes( void) = 0;
|
|
|
|
virtual BMDPixelFormat STDMETHODCALLTYPE GetPixelFormat( void) = 0;
|
|
|
|
virtual BMDFrameFlags STDMETHODCALLTYPE GetFlags( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetBytes(
|
|
/* [out] */ void **buffer) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetTimecode(
|
|
/* [in] */ BMDTimecodeFormat format,
|
|
/* [out] */ IDeckLinkTimecode **timecode) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetAncillaryData(
|
|
/* [out] */ IDeckLinkVideoFrameAncillary **ancillary) = 0;
|
|
|
|
};
|
|
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IDeckLinkVideoFrameVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IDeckLinkVideoFrame * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
_COM_Outptr_ void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IDeckLinkVideoFrame * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IDeckLinkVideoFrame * This);
|
|
|
|
long ( STDMETHODCALLTYPE *GetWidth )(
|
|
IDeckLinkVideoFrame * This);
|
|
|
|
long ( STDMETHODCALLTYPE *GetHeight )(
|
|
IDeckLinkVideoFrame * This);
|
|
|
|
long ( STDMETHODCALLTYPE *GetRowBytes )(
|
|
IDeckLinkVideoFrame * This);
|
|
|
|
BMDPixelFormat ( STDMETHODCALLTYPE *GetPixelFormat )(
|
|
IDeckLinkVideoFrame * This);
|
|
|
|
BMDFrameFlags ( STDMETHODCALLTYPE *GetFlags )(
|
|
IDeckLinkVideoFrame * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetBytes )(
|
|
IDeckLinkVideoFrame * This,
|
|
/* [out] */ void **buffer);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetTimecode )(
|
|
IDeckLinkVideoFrame * This,
|
|
/* [in] */ BMDTimecodeFormat format,
|
|
/* [out] */ IDeckLinkTimecode **timecode);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetAncillaryData )(
|
|
IDeckLinkVideoFrame * This,
|
|
/* [out] */ IDeckLinkVideoFrameAncillary **ancillary);
|
|
|
|
END_INTERFACE
|
|
} IDeckLinkVideoFrameVtbl;
|
|
|
|
interface IDeckLinkVideoFrame
|
|
{
|
|
CONST_VTBL struct IDeckLinkVideoFrameVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IDeckLinkVideoFrame_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IDeckLinkVideoFrame_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IDeckLinkVideoFrame_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IDeckLinkVideoFrame_GetWidth(This) \
|
|
( (This)->lpVtbl -> GetWidth(This) )
|
|
|
|
#define IDeckLinkVideoFrame_GetHeight(This) \
|
|
( (This)->lpVtbl -> GetHeight(This) )
|
|
|
|
#define IDeckLinkVideoFrame_GetRowBytes(This) \
|
|
( (This)->lpVtbl -> GetRowBytes(This) )
|
|
|
|
#define IDeckLinkVideoFrame_GetPixelFormat(This) \
|
|
( (This)->lpVtbl -> GetPixelFormat(This) )
|
|
|
|
#define IDeckLinkVideoFrame_GetFlags(This) \
|
|
( (This)->lpVtbl -> GetFlags(This) )
|
|
|
|
#define IDeckLinkVideoFrame_GetBytes(This,buffer) \
|
|
( (This)->lpVtbl -> GetBytes(This,buffer) )
|
|
|
|
#define IDeckLinkVideoFrame_GetTimecode(This,format,timecode) \
|
|
( (This)->lpVtbl -> GetTimecode(This,format,timecode) )
|
|
|
|
#define IDeckLinkVideoFrame_GetAncillaryData(This,ancillary) \
|
|
( (This)->lpVtbl -> GetAncillaryData(This,ancillary) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IDeckLinkVideoFrame_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IDeckLinkMutableVideoFrame_INTERFACE_DEFINED__
|
|
#define __IDeckLinkMutableVideoFrame_INTERFACE_DEFINED__
|
|
|
|
/* interface IDeckLinkMutableVideoFrame */
|
|
/* [helpstring][local][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IDeckLinkMutableVideoFrame;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("69E2639F-40DA-4E19-B6F2-20ACE815C390")
|
|
IDeckLinkMutableVideoFrame : public IDeckLinkVideoFrame
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE SetFlags(
|
|
/* [in] */ BMDFrameFlags newFlags) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetTimecode(
|
|
/* [in] */ BMDTimecodeFormat format,
|
|
/* [in] */ IDeckLinkTimecode *timecode) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetTimecodeFromComponents(
|
|
/* [in] */ BMDTimecodeFormat format,
|
|
/* [in] */ unsigned char hours,
|
|
/* [in] */ unsigned char minutes,
|
|
/* [in] */ unsigned char seconds,
|
|
/* [in] */ unsigned char frames,
|
|
/* [in] */ BMDTimecodeFlags flags) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetAncillaryData(
|
|
/* [in] */ IDeckLinkVideoFrameAncillary *ancillary) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetTimecodeUserBits(
|
|
/* [in] */ BMDTimecodeFormat format,
|
|
/* [in] */ BMDTimecodeUserBits userBits) = 0;
|
|
|
|
};
|
|
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IDeckLinkMutableVideoFrameVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IDeckLinkMutableVideoFrame * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
_COM_Outptr_ void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IDeckLinkMutableVideoFrame * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IDeckLinkMutableVideoFrame * This);
|
|
|
|
long ( STDMETHODCALLTYPE *GetWidth )(
|
|
IDeckLinkMutableVideoFrame * This);
|
|
|
|
long ( STDMETHODCALLTYPE *GetHeight )(
|
|
IDeckLinkMutableVideoFrame * This);
|
|
|
|
long ( STDMETHODCALLTYPE *GetRowBytes )(
|
|
IDeckLinkMutableVideoFrame * This);
|
|
|
|
BMDPixelFormat ( STDMETHODCALLTYPE *GetPixelFormat )(
|
|
IDeckLinkMutableVideoFrame * This);
|
|
|
|
BMDFrameFlags ( STDMETHODCALLTYPE *GetFlags )(
|
|
IDeckLinkMutableVideoFrame * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetBytes )(
|
|
IDeckLinkMutableVideoFrame * This,
|
|
/* [out] */ void **buffer);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetTimecode )(
|
|
IDeckLinkMutableVideoFrame * This,
|
|
/* [in] */ BMDTimecodeFormat format,
|
|
/* [out] */ IDeckLinkTimecode **timecode);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetAncillaryData )(
|
|
IDeckLinkMutableVideoFrame * This,
|
|
/* [out] */ IDeckLinkVideoFrameAncillary **ancillary);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetFlags )(
|
|
IDeckLinkMutableVideoFrame * This,
|
|
/* [in] */ BMDFrameFlags newFlags);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetTimecode )(
|
|
IDeckLinkMutableVideoFrame * This,
|
|
/* [in] */ BMDTimecodeFormat format,
|
|
/* [in] */ IDeckLinkTimecode *timecode);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetTimecodeFromComponents )(
|
|
IDeckLinkMutableVideoFrame * This,
|
|
/* [in] */ BMDTimecodeFormat format,
|
|
/* [in] */ unsigned char hours,
|
|
/* [in] */ unsigned char minutes,
|
|
/* [in] */ unsigned char seconds,
|
|
/* [in] */ unsigned char frames,
|
|
/* [in] */ BMDTimecodeFlags flags);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetAncillaryData )(
|
|
IDeckLinkMutableVideoFrame * This,
|
|
/* [in] */ IDeckLinkVideoFrameAncillary *ancillary);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetTimecodeUserBits )(
|
|
IDeckLinkMutableVideoFrame * This,
|
|
/* [in] */ BMDTimecodeFormat format,
|
|
/* [in] */ BMDTimecodeUserBits userBits);
|
|
|
|
END_INTERFACE
|
|
} IDeckLinkMutableVideoFrameVtbl;
|
|
|
|
interface IDeckLinkMutableVideoFrame
|
|
{
|
|
CONST_VTBL struct IDeckLinkMutableVideoFrameVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IDeckLinkMutableVideoFrame_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IDeckLinkMutableVideoFrame_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IDeckLinkMutableVideoFrame_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IDeckLinkMutableVideoFrame_GetWidth(This) \
|
|
( (This)->lpVtbl -> GetWidth(This) )
|
|
|
|
#define IDeckLinkMutableVideoFrame_GetHeight(This) \
|
|
( (This)->lpVtbl -> GetHeight(This) )
|
|
|
|
#define IDeckLinkMutableVideoFrame_GetRowBytes(This) \
|
|
( (This)->lpVtbl -> GetRowBytes(This) )
|
|
|
|
#define IDeckLinkMutableVideoFrame_GetPixelFormat(This) \
|
|
( (This)->lpVtbl -> GetPixelFormat(This) )
|
|
|
|
#define IDeckLinkMutableVideoFrame_GetFlags(This) \
|
|
( (This)->lpVtbl -> GetFlags(This) )
|
|
|
|
#define IDeckLinkMutableVideoFrame_GetBytes(This,buffer) \
|
|
( (This)->lpVtbl -> GetBytes(This,buffer) )
|
|
|
|
#define IDeckLinkMutableVideoFrame_GetTimecode(This,format,timecode) \
|
|
( (This)->lpVtbl -> GetTimecode(This,format,timecode) )
|
|
|
|
#define IDeckLinkMutableVideoFrame_GetAncillaryData(This,ancillary) \
|
|
( (This)->lpVtbl -> GetAncillaryData(This,ancillary) )
|
|
|
|
|
|
#define IDeckLinkMutableVideoFrame_SetFlags(This,newFlags) \
|
|
( (This)->lpVtbl -> SetFlags(This,newFlags) )
|
|
|
|
#define IDeckLinkMutableVideoFrame_SetTimecode(This,format,timecode) \
|
|
( (This)->lpVtbl -> SetTimecode(This,format,timecode) )
|
|
|
|
#define IDeckLinkMutableVideoFrame_SetTimecodeFromComponents(This,format,hours,minutes,seconds,frames,flags) \
|
|
( (This)->lpVtbl -> SetTimecodeFromComponents(This,format,hours,minutes,seconds,frames,flags) )
|
|
|
|
#define IDeckLinkMutableVideoFrame_SetAncillaryData(This,ancillary) \
|
|
( (This)->lpVtbl -> SetAncillaryData(This,ancillary) )
|
|
|
|
#define IDeckLinkMutableVideoFrame_SetTimecodeUserBits(This,format,userBits) \
|
|
( (This)->lpVtbl -> SetTimecodeUserBits(This,format,userBits) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IDeckLinkMutableVideoFrame_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IDeckLinkVideoFrame3DExtensions_INTERFACE_DEFINED__
|
|
#define __IDeckLinkVideoFrame3DExtensions_INTERFACE_DEFINED__
|
|
|
|
/* interface IDeckLinkVideoFrame3DExtensions */
|
|
/* [helpstring][local][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IDeckLinkVideoFrame3DExtensions;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("DA0F7E4A-EDC7-48A8-9CDD-2DB51C729CD7")
|
|
IDeckLinkVideoFrame3DExtensions : public IUnknown
|
|
{
|
|
public:
|
|
virtual BMDVideo3DPackingFormat STDMETHODCALLTYPE Get3DPackingFormat( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetFrameForRightEye(
|
|
/* [out] */ IDeckLinkVideoFrame **rightEyeFrame) = 0;
|
|
|
|
};
|
|
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IDeckLinkVideoFrame3DExtensionsVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IDeckLinkVideoFrame3DExtensions * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
_COM_Outptr_ void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IDeckLinkVideoFrame3DExtensions * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IDeckLinkVideoFrame3DExtensions * This);
|
|
|
|
BMDVideo3DPackingFormat ( STDMETHODCALLTYPE *Get3DPackingFormat )(
|
|
IDeckLinkVideoFrame3DExtensions * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetFrameForRightEye )(
|
|
IDeckLinkVideoFrame3DExtensions * This,
|
|
/* [out] */ IDeckLinkVideoFrame **rightEyeFrame);
|
|
|
|
END_INTERFACE
|
|
} IDeckLinkVideoFrame3DExtensionsVtbl;
|
|
|
|
interface IDeckLinkVideoFrame3DExtensions
|
|
{
|
|
CONST_VTBL struct IDeckLinkVideoFrame3DExtensionsVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IDeckLinkVideoFrame3DExtensions_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IDeckLinkVideoFrame3DExtensions_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IDeckLinkVideoFrame3DExtensions_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IDeckLinkVideoFrame3DExtensions_Get3DPackingFormat(This) \
|
|
( (This)->lpVtbl -> Get3DPackingFormat(This) )
|
|
|
|
#define IDeckLinkVideoFrame3DExtensions_GetFrameForRightEye(This,rightEyeFrame) \
|
|
( (This)->lpVtbl -> GetFrameForRightEye(This,rightEyeFrame) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IDeckLinkVideoFrame3DExtensions_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IDeckLinkVideoFrameMetadataExtensions_INTERFACE_DEFINED__
|
|
#define __IDeckLinkVideoFrameMetadataExtensions_INTERFACE_DEFINED__
|
|
|
|
/* interface IDeckLinkVideoFrameMetadataExtensions */
|
|
/* [helpstring][local][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IDeckLinkVideoFrameMetadataExtensions;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("D5973DC9-6432-46D0-8F0B-2496F8A1238F")
|
|
IDeckLinkVideoFrameMetadataExtensions : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE GetInt(
|
|
/* [in] */ BMDDeckLinkFrameMetadataID metadataID,
|
|
/* [out] */ LONGLONG *value) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetFloat(
|
|
/* [in] */ BMDDeckLinkFrameMetadataID metadataID,
|
|
/* [out] */ double *value) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetFlag(
|
|
/* [in] */ BMDDeckLinkFrameMetadataID metadataID,
|
|
/* [out] */ BOOL *value) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetString(
|
|
/* [in] */ BMDDeckLinkFrameMetadataID metadataID,
|
|
/* [out] */ BSTR *value) = 0;
|
|
|
|
};
|
|
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IDeckLinkVideoFrameMetadataExtensionsVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IDeckLinkVideoFrameMetadataExtensions * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
_COM_Outptr_ void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IDeckLinkVideoFrameMetadataExtensions * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IDeckLinkVideoFrameMetadataExtensions * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetInt )(
|
|
IDeckLinkVideoFrameMetadataExtensions * This,
|
|
/* [in] */ BMDDeckLinkFrameMetadataID metadataID,
|
|
/* [out] */ LONGLONG *value);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetFloat )(
|
|
IDeckLinkVideoFrameMetadataExtensions * This,
|
|
/* [in] */ BMDDeckLinkFrameMetadataID metadataID,
|
|
/* [out] */ double *value);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetFlag )(
|
|
IDeckLinkVideoFrameMetadataExtensions * This,
|
|
/* [in] */ BMDDeckLinkFrameMetadataID metadataID,
|
|
/* [out] */ BOOL *value);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetString )(
|
|
IDeckLinkVideoFrameMetadataExtensions * This,
|
|
/* [in] */ BMDDeckLinkFrameMetadataID metadataID,
|
|
/* [out] */ BSTR *value);
|
|
|
|
END_INTERFACE
|
|
} IDeckLinkVideoFrameMetadataExtensionsVtbl;
|
|
|
|
interface IDeckLinkVideoFrameMetadataExtensions
|
|
{
|
|
CONST_VTBL struct IDeckLinkVideoFrameMetadataExtensionsVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IDeckLinkVideoFrameMetadataExtensions_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IDeckLinkVideoFrameMetadataExtensions_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IDeckLinkVideoFrameMetadataExtensions_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IDeckLinkVideoFrameMetadataExtensions_GetInt(This,metadataID,value) \
|
|
( (This)->lpVtbl -> GetInt(This,metadataID,value) )
|
|
|
|
#define IDeckLinkVideoFrameMetadataExtensions_GetFloat(This,metadataID,value) \
|
|
( (This)->lpVtbl -> GetFloat(This,metadataID,value) )
|
|
|
|
#define IDeckLinkVideoFrameMetadataExtensions_GetFlag(This,metadataID,value) \
|
|
( (This)->lpVtbl -> GetFlag(This,metadataID,value) )
|
|
|
|
#define IDeckLinkVideoFrameMetadataExtensions_GetString(This,metadataID,value) \
|
|
( (This)->lpVtbl -> GetString(This,metadataID,value) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IDeckLinkVideoFrameMetadataExtensions_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IDeckLinkVideoInputFrame_INTERFACE_DEFINED__
|
|
#define __IDeckLinkVideoInputFrame_INTERFACE_DEFINED__
|
|
|
|
/* interface IDeckLinkVideoInputFrame */
|
|
/* [helpstring][local][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IDeckLinkVideoInputFrame;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("05CFE374-537C-4094-9A57-680525118F44")
|
|
IDeckLinkVideoInputFrame : public IDeckLinkVideoFrame
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE GetStreamTime(
|
|
/* [out] */ BMDTimeValue *frameTime,
|
|
/* [out] */ BMDTimeValue *frameDuration,
|
|
/* [in] */ BMDTimeScale timeScale) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetHardwareReferenceTimestamp(
|
|
/* [in] */ BMDTimeScale timeScale,
|
|
/* [out] */ BMDTimeValue *frameTime,
|
|
/* [out] */ BMDTimeValue *frameDuration) = 0;
|
|
|
|
};
|
|
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IDeckLinkVideoInputFrameVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IDeckLinkVideoInputFrame * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
_COM_Outptr_ void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IDeckLinkVideoInputFrame * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IDeckLinkVideoInputFrame * This);
|
|
|
|
long ( STDMETHODCALLTYPE *GetWidth )(
|
|
IDeckLinkVideoInputFrame * This);
|
|
|
|
long ( STDMETHODCALLTYPE *GetHeight )(
|
|
IDeckLinkVideoInputFrame * This);
|
|
|
|
long ( STDMETHODCALLTYPE *GetRowBytes )(
|
|
IDeckLinkVideoInputFrame * This);
|
|
|
|
BMDPixelFormat ( STDMETHODCALLTYPE *GetPixelFormat )(
|
|
IDeckLinkVideoInputFrame * This);
|
|
|
|
BMDFrameFlags ( STDMETHODCALLTYPE *GetFlags )(
|
|
IDeckLinkVideoInputFrame * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetBytes )(
|
|
IDeckLinkVideoInputFrame * This,
|
|
/* [out] */ void **buffer);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetTimecode )(
|
|
IDeckLinkVideoInputFrame * This,
|
|
/* [in] */ BMDTimecodeFormat format,
|
|
/* [out] */ IDeckLinkTimecode **timecode);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetAncillaryData )(
|
|
IDeckLinkVideoInputFrame * This,
|
|
/* [out] */ IDeckLinkVideoFrameAncillary **ancillary);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetStreamTime )(
|
|
IDeckLinkVideoInputFrame * This,
|
|
/* [out] */ BMDTimeValue *frameTime,
|
|
/* [out] */ BMDTimeValue *frameDuration,
|
|
/* [in] */ BMDTimeScale timeScale);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetHardwareReferenceTimestamp )(
|
|
IDeckLinkVideoInputFrame * This,
|
|
/* [in] */ BMDTimeScale timeScale,
|
|
/* [out] */ BMDTimeValue *frameTime,
|
|
/* [out] */ BMDTimeValue *frameDuration);
|
|
|
|
END_INTERFACE
|
|
} IDeckLinkVideoInputFrameVtbl;
|
|
|
|
interface IDeckLinkVideoInputFrame
|
|
{
|
|
CONST_VTBL struct IDeckLinkVideoInputFrameVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IDeckLinkVideoInputFrame_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IDeckLinkVideoInputFrame_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IDeckLinkVideoInputFrame_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IDeckLinkVideoInputFrame_GetWidth(This) \
|
|
( (This)->lpVtbl -> GetWidth(This) )
|
|
|
|
#define IDeckLinkVideoInputFrame_GetHeight(This) \
|
|
( (This)->lpVtbl -> GetHeight(This) )
|
|
|
|
#define IDeckLinkVideoInputFrame_GetRowBytes(This) \
|
|
( (This)->lpVtbl -> GetRowBytes(This) )
|
|
|
|
#define IDeckLinkVideoInputFrame_GetPixelFormat(This) \
|
|
( (This)->lpVtbl -> GetPixelFormat(This) )
|
|
|
|
#define IDeckLinkVideoInputFrame_GetFlags(This) \
|
|
( (This)->lpVtbl -> GetFlags(This) )
|
|
|
|
#define IDeckLinkVideoInputFrame_GetBytes(This,buffer) \
|
|
( (This)->lpVtbl -> GetBytes(This,buffer) )
|
|
|
|
#define IDeckLinkVideoInputFrame_GetTimecode(This,format,timecode) \
|
|
( (This)->lpVtbl -> GetTimecode(This,format,timecode) )
|
|
|
|
#define IDeckLinkVideoInputFrame_GetAncillaryData(This,ancillary) \
|
|
( (This)->lpVtbl -> GetAncillaryData(This,ancillary) )
|
|
|
|
|
|
#define IDeckLinkVideoInputFrame_GetStreamTime(This,frameTime,frameDuration,timeScale) \
|
|
( (This)->lpVtbl -> GetStreamTime(This,frameTime,frameDuration,timeScale) )
|
|
|
|
#define IDeckLinkVideoInputFrame_GetHardwareReferenceTimestamp(This,timeScale,frameTime,frameDuration) \
|
|
( (This)->lpVtbl -> GetHardwareReferenceTimestamp(This,timeScale,frameTime,frameDuration) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IDeckLinkVideoInputFrame_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IDeckLinkVideoFrameAncillary_INTERFACE_DEFINED__
|
|
#define __IDeckLinkVideoFrameAncillary_INTERFACE_DEFINED__
|
|
|
|
/* interface IDeckLinkVideoFrameAncillary */
|
|
/* [helpstring][local][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IDeckLinkVideoFrameAncillary;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("732E723C-D1A4-4E29-9E8E-4A88797A0004")
|
|
IDeckLinkVideoFrameAncillary : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE GetBufferForVerticalBlankingLine(
|
|
/* [in] */ unsigned int lineNumber,
|
|
/* [out] */ void **buffer) = 0;
|
|
|
|
virtual BMDPixelFormat STDMETHODCALLTYPE GetPixelFormat( void) = 0;
|
|
|
|
virtual BMDDisplayMode STDMETHODCALLTYPE GetDisplayMode( void) = 0;
|
|
|
|
};
|
|
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IDeckLinkVideoFrameAncillaryVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IDeckLinkVideoFrameAncillary * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
_COM_Outptr_ void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IDeckLinkVideoFrameAncillary * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IDeckLinkVideoFrameAncillary * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetBufferForVerticalBlankingLine )(
|
|
IDeckLinkVideoFrameAncillary * This,
|
|
/* [in] */ unsigned int lineNumber,
|
|
/* [out] */ void **buffer);
|
|
|
|
BMDPixelFormat ( STDMETHODCALLTYPE *GetPixelFormat )(
|
|
IDeckLinkVideoFrameAncillary * This);
|
|
|
|
BMDDisplayMode ( STDMETHODCALLTYPE *GetDisplayMode )(
|
|
IDeckLinkVideoFrameAncillary * This);
|
|
|
|
END_INTERFACE
|
|
} IDeckLinkVideoFrameAncillaryVtbl;
|
|
|
|
interface IDeckLinkVideoFrameAncillary
|
|
{
|
|
CONST_VTBL struct IDeckLinkVideoFrameAncillaryVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IDeckLinkVideoFrameAncillary_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IDeckLinkVideoFrameAncillary_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IDeckLinkVideoFrameAncillary_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IDeckLinkVideoFrameAncillary_GetBufferForVerticalBlankingLine(This,lineNumber,buffer) \
|
|
( (This)->lpVtbl -> GetBufferForVerticalBlankingLine(This,lineNumber,buffer) )
|
|
|
|
#define IDeckLinkVideoFrameAncillary_GetPixelFormat(This) \
|
|
( (This)->lpVtbl -> GetPixelFormat(This) )
|
|
|
|
#define IDeckLinkVideoFrameAncillary_GetDisplayMode(This) \
|
|
( (This)->lpVtbl -> GetDisplayMode(This) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IDeckLinkVideoFrameAncillary_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IDeckLinkEncoderPacket_INTERFACE_DEFINED__
|
|
#define __IDeckLinkEncoderPacket_INTERFACE_DEFINED__
|
|
|
|
/* interface IDeckLinkEncoderPacket */
|
|
/* [helpstring][local][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IDeckLinkEncoderPacket;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("B693F36C-316E-4AF1-B6C2-F389A4BCA620")
|
|
IDeckLinkEncoderPacket : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE GetBytes(
|
|
/* [out] */ void **buffer) = 0;
|
|
|
|
virtual long STDMETHODCALLTYPE GetSize( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetStreamTime(
|
|
/* [out] */ BMDTimeValue *frameTime,
|
|
/* [in] */ BMDTimeScale timeScale) = 0;
|
|
|
|
virtual BMDPacketType STDMETHODCALLTYPE GetPacketType( void) = 0;
|
|
|
|
};
|
|
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IDeckLinkEncoderPacketVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IDeckLinkEncoderPacket * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
_COM_Outptr_ void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IDeckLinkEncoderPacket * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IDeckLinkEncoderPacket * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetBytes )(
|
|
IDeckLinkEncoderPacket * This,
|
|
/* [out] */ void **buffer);
|
|
|
|
long ( STDMETHODCALLTYPE *GetSize )(
|
|
IDeckLinkEncoderPacket * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetStreamTime )(
|
|
IDeckLinkEncoderPacket * This,
|
|
/* [out] */ BMDTimeValue *frameTime,
|
|
/* [in] */ BMDTimeScale timeScale);
|
|
|
|
BMDPacketType ( STDMETHODCALLTYPE *GetPacketType )(
|
|
IDeckLinkEncoderPacket * This);
|
|
|
|
END_INTERFACE
|
|
} IDeckLinkEncoderPacketVtbl;
|
|
|
|
interface IDeckLinkEncoderPacket
|
|
{
|
|
CONST_VTBL struct IDeckLinkEncoderPacketVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IDeckLinkEncoderPacket_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IDeckLinkEncoderPacket_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IDeckLinkEncoderPacket_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IDeckLinkEncoderPacket_GetBytes(This,buffer) \
|
|
( (This)->lpVtbl -> GetBytes(This,buffer) )
|
|
|
|
#define IDeckLinkEncoderPacket_GetSize(This) \
|
|
( (This)->lpVtbl -> GetSize(This) )
|
|
|
|
#define IDeckLinkEncoderPacket_GetStreamTime(This,frameTime,timeScale) \
|
|
( (This)->lpVtbl -> GetStreamTime(This,frameTime,timeScale) )
|
|
|
|
#define IDeckLinkEncoderPacket_GetPacketType(This) \
|
|
( (This)->lpVtbl -> GetPacketType(This) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IDeckLinkEncoderPacket_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IDeckLinkEncoderVideoPacket_INTERFACE_DEFINED__
|
|
#define __IDeckLinkEncoderVideoPacket_INTERFACE_DEFINED__
|
|
|
|
/* interface IDeckLinkEncoderVideoPacket */
|
|
/* [helpstring][local][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IDeckLinkEncoderVideoPacket;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("4E7FD944-E8C7-4EAC-B8C0-7B77F80F5AE0")
|
|
IDeckLinkEncoderVideoPacket : public IDeckLinkEncoderPacket
|
|
{
|
|
public:
|
|
virtual BMDPixelFormat STDMETHODCALLTYPE GetPixelFormat( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetHardwareReferenceTimestamp(
|
|
/* [in] */ BMDTimeScale timeScale,
|
|
/* [out] */ BMDTimeValue *frameTime,
|
|
/* [out] */ BMDTimeValue *frameDuration) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetTimecode(
|
|
/* [in] */ BMDTimecodeFormat format,
|
|
/* [out] */ IDeckLinkTimecode **timecode) = 0;
|
|
|
|
};
|
|
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IDeckLinkEncoderVideoPacketVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IDeckLinkEncoderVideoPacket * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
_COM_Outptr_ void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IDeckLinkEncoderVideoPacket * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IDeckLinkEncoderVideoPacket * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetBytes )(
|
|
IDeckLinkEncoderVideoPacket * This,
|
|
/* [out] */ void **buffer);
|
|
|
|
long ( STDMETHODCALLTYPE *GetSize )(
|
|
IDeckLinkEncoderVideoPacket * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetStreamTime )(
|
|
IDeckLinkEncoderVideoPacket * This,
|
|
/* [out] */ BMDTimeValue *frameTime,
|
|
/* [in] */ BMDTimeScale timeScale);
|
|
|
|
BMDPacketType ( STDMETHODCALLTYPE *GetPacketType )(
|
|
IDeckLinkEncoderVideoPacket * This);
|
|
|
|
BMDPixelFormat ( STDMETHODCALLTYPE *GetPixelFormat )(
|
|
IDeckLinkEncoderVideoPacket * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetHardwareReferenceTimestamp )(
|
|
IDeckLinkEncoderVideoPacket * This,
|
|
/* [in] */ BMDTimeScale timeScale,
|
|
/* [out] */ BMDTimeValue *frameTime,
|
|
/* [out] */ BMDTimeValue *frameDuration);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetTimecode )(
|
|
IDeckLinkEncoderVideoPacket * This,
|
|
/* [in] */ BMDTimecodeFormat format,
|
|
/* [out] */ IDeckLinkTimecode **timecode);
|
|
|
|
END_INTERFACE
|
|
} IDeckLinkEncoderVideoPacketVtbl;
|
|
|
|
interface IDeckLinkEncoderVideoPacket
|
|
{
|
|
CONST_VTBL struct IDeckLinkEncoderVideoPacketVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IDeckLinkEncoderVideoPacket_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IDeckLinkEncoderVideoPacket_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IDeckLinkEncoderVideoPacket_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IDeckLinkEncoderVideoPacket_GetBytes(This,buffer) \
|
|
( (This)->lpVtbl -> GetBytes(This,buffer) )
|
|
|
|
#define IDeckLinkEncoderVideoPacket_GetSize(This) \
|
|
( (This)->lpVtbl -> GetSize(This) )
|
|
|
|
#define IDeckLinkEncoderVideoPacket_GetStreamTime(This,frameTime,timeScale) \
|
|
( (This)->lpVtbl -> GetStreamTime(This,frameTime,timeScale) )
|
|
|
|
#define IDeckLinkEncoderVideoPacket_GetPacketType(This) \
|
|
( (This)->lpVtbl -> GetPacketType(This) )
|
|
|
|
|
|
#define IDeckLinkEncoderVideoPacket_GetPixelFormat(This) \
|
|
( (This)->lpVtbl -> GetPixelFormat(This) )
|
|
|
|
#define IDeckLinkEncoderVideoPacket_GetHardwareReferenceTimestamp(This,timeScale,frameTime,frameDuration) \
|
|
( (This)->lpVtbl -> GetHardwareReferenceTimestamp(This,timeScale,frameTime,frameDuration) )
|
|
|
|
#define IDeckLinkEncoderVideoPacket_GetTimecode(This,format,timecode) \
|
|
( (This)->lpVtbl -> GetTimecode(This,format,timecode) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IDeckLinkEncoderVideoPacket_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IDeckLinkEncoderAudioPacket_INTERFACE_DEFINED__
|
|
#define __IDeckLinkEncoderAudioPacket_INTERFACE_DEFINED__
|
|
|
|
/* interface IDeckLinkEncoderAudioPacket */
|
|
/* [helpstring][local][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IDeckLinkEncoderAudioPacket;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("49E8EDC8-693B-4E14-8EF6-12C658F5A07A")
|
|
IDeckLinkEncoderAudioPacket : public IDeckLinkEncoderPacket
|
|
{
|
|
public:
|
|
virtual BMDAudioFormat STDMETHODCALLTYPE GetAudioFormat( void) = 0;
|
|
|
|
};
|
|
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IDeckLinkEncoderAudioPacketVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IDeckLinkEncoderAudioPacket * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
_COM_Outptr_ void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IDeckLinkEncoderAudioPacket * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IDeckLinkEncoderAudioPacket * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetBytes )(
|
|
IDeckLinkEncoderAudioPacket * This,
|
|
/* [out] */ void **buffer);
|
|
|
|
long ( STDMETHODCALLTYPE *GetSize )(
|
|
IDeckLinkEncoderAudioPacket * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetStreamTime )(
|
|
IDeckLinkEncoderAudioPacket * This,
|
|
/* [out] */ BMDTimeValue *frameTime,
|
|
/* [in] */ BMDTimeScale timeScale);
|
|
|
|
BMDPacketType ( STDMETHODCALLTYPE *GetPacketType )(
|
|
IDeckLinkEncoderAudioPacket * This);
|
|
|
|
BMDAudioFormat ( STDMETHODCALLTYPE *GetAudioFormat )(
|
|
IDeckLinkEncoderAudioPacket * This);
|
|
|
|
END_INTERFACE
|
|
} IDeckLinkEncoderAudioPacketVtbl;
|
|
|
|
interface IDeckLinkEncoderAudioPacket
|
|
{
|
|
CONST_VTBL struct IDeckLinkEncoderAudioPacketVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IDeckLinkEncoderAudioPacket_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IDeckLinkEncoderAudioPacket_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IDeckLinkEncoderAudioPacket_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IDeckLinkEncoderAudioPacket_GetBytes(This,buffer) \
|
|
( (This)->lpVtbl -> GetBytes(This,buffer) )
|
|
|
|
#define IDeckLinkEncoderAudioPacket_GetSize(This) \
|
|
( (This)->lpVtbl -> GetSize(This) )
|
|
|
|
#define IDeckLinkEncoderAudioPacket_GetStreamTime(This,frameTime,timeScale) \
|
|
( (This)->lpVtbl -> GetStreamTime(This,frameTime,timeScale) )
|
|
|
|
#define IDeckLinkEncoderAudioPacket_GetPacketType(This) \
|
|
( (This)->lpVtbl -> GetPacketType(This) )
|
|
|
|
|
|
#define IDeckLinkEncoderAudioPacket_GetAudioFormat(This) \
|
|
( (This)->lpVtbl -> GetAudioFormat(This) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IDeckLinkEncoderAudioPacket_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IDeckLinkH265NALPacket_INTERFACE_DEFINED__
|
|
#define __IDeckLinkH265NALPacket_INTERFACE_DEFINED__
|
|
|
|
/* interface IDeckLinkH265NALPacket */
|
|
/* [helpstring][local][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IDeckLinkH265NALPacket;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("639C8E0B-68D5-4BDE-A6D4-95F3AEAFF2E7")
|
|
IDeckLinkH265NALPacket : public IDeckLinkEncoderVideoPacket
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE GetUnitType(
|
|
/* [out] */ unsigned char *unitType) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetBytesNoPrefix(
|
|
/* [out] */ void **buffer) = 0;
|
|
|
|
virtual long STDMETHODCALLTYPE GetSizeNoPrefix( void) = 0;
|
|
|
|
};
|
|
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IDeckLinkH265NALPacketVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IDeckLinkH265NALPacket * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
_COM_Outptr_ void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IDeckLinkH265NALPacket * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IDeckLinkH265NALPacket * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetBytes )(
|
|
IDeckLinkH265NALPacket * This,
|
|
/* [out] */ void **buffer);
|
|
|
|
long ( STDMETHODCALLTYPE *GetSize )(
|
|
IDeckLinkH265NALPacket * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetStreamTime )(
|
|
IDeckLinkH265NALPacket * This,
|
|
/* [out] */ BMDTimeValue *frameTime,
|
|
/* [in] */ BMDTimeScale timeScale);
|
|
|
|
BMDPacketType ( STDMETHODCALLTYPE *GetPacketType )(
|
|
IDeckLinkH265NALPacket * This);
|
|
|
|
BMDPixelFormat ( STDMETHODCALLTYPE *GetPixelFormat )(
|
|
IDeckLinkH265NALPacket * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetHardwareReferenceTimestamp )(
|
|
IDeckLinkH265NALPacket * This,
|
|
/* [in] */ BMDTimeScale timeScale,
|
|
/* [out] */ BMDTimeValue *frameTime,
|
|
/* [out] */ BMDTimeValue *frameDuration);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetTimecode )(
|
|
IDeckLinkH265NALPacket * This,
|
|
/* [in] */ BMDTimecodeFormat format,
|
|
/* [out] */ IDeckLinkTimecode **timecode);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetUnitType )(
|
|
IDeckLinkH265NALPacket * This,
|
|
/* [out] */ unsigned char *unitType);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetBytesNoPrefix )(
|
|
IDeckLinkH265NALPacket * This,
|
|
/* [out] */ void **buffer);
|
|
|
|
long ( STDMETHODCALLTYPE *GetSizeNoPrefix )(
|
|
IDeckLinkH265NALPacket * This);
|
|
|
|
END_INTERFACE
|
|
} IDeckLinkH265NALPacketVtbl;
|
|
|
|
interface IDeckLinkH265NALPacket
|
|
{
|
|
CONST_VTBL struct IDeckLinkH265NALPacketVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IDeckLinkH265NALPacket_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IDeckLinkH265NALPacket_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IDeckLinkH265NALPacket_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IDeckLinkH265NALPacket_GetBytes(This,buffer) \
|
|
( (This)->lpVtbl -> GetBytes(This,buffer) )
|
|
|
|
#define IDeckLinkH265NALPacket_GetSize(This) \
|
|
( (This)->lpVtbl -> GetSize(This) )
|
|
|
|
#define IDeckLinkH265NALPacket_GetStreamTime(This,frameTime,timeScale) \
|
|
( (This)->lpVtbl -> GetStreamTime(This,frameTime,timeScale) )
|
|
|
|
#define IDeckLinkH265NALPacket_GetPacketType(This) \
|
|
( (This)->lpVtbl -> GetPacketType(This) )
|
|
|
|
|
|
#define IDeckLinkH265NALPacket_GetPixelFormat(This) \
|
|
( (This)->lpVtbl -> GetPixelFormat(This) )
|
|
|
|
#define IDeckLinkH265NALPacket_GetHardwareReferenceTimestamp(This,timeScale,frameTime,frameDuration) \
|
|
( (This)->lpVtbl -> GetHardwareReferenceTimestamp(This,timeScale,frameTime,frameDuration) )
|
|
|
|
#define IDeckLinkH265NALPacket_GetTimecode(This,format,timecode) \
|
|
( (This)->lpVtbl -> GetTimecode(This,format,timecode) )
|
|
|
|
|
|
#define IDeckLinkH265NALPacket_GetUnitType(This,unitType) \
|
|
( (This)->lpVtbl -> GetUnitType(This,unitType) )
|
|
|
|
#define IDeckLinkH265NALPacket_GetBytesNoPrefix(This,buffer) \
|
|
( (This)->lpVtbl -> GetBytesNoPrefix(This,buffer) )
|
|
|
|
#define IDeckLinkH265NALPacket_GetSizeNoPrefix(This) \
|
|
( (This)->lpVtbl -> GetSizeNoPrefix(This) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IDeckLinkH265NALPacket_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IDeckLinkAudioInputPacket_INTERFACE_DEFINED__
|
|
#define __IDeckLinkAudioInputPacket_INTERFACE_DEFINED__
|
|
|
|
/* interface IDeckLinkAudioInputPacket */
|
|
/* [helpstring][local][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IDeckLinkAudioInputPacket;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("E43D5870-2894-11DE-8C30-0800200C9A66")
|
|
IDeckLinkAudioInputPacket : public IUnknown
|
|
{
|
|
public:
|
|
virtual long STDMETHODCALLTYPE GetSampleFrameCount( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetBytes(
|
|
/* [out] */ void **buffer) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetPacketTime(
|
|
/* [out] */ BMDTimeValue *packetTime,
|
|
/* [in] */ BMDTimeScale timeScale) = 0;
|
|
|
|
};
|
|
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IDeckLinkAudioInputPacketVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IDeckLinkAudioInputPacket * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
_COM_Outptr_ void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IDeckLinkAudioInputPacket * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IDeckLinkAudioInputPacket * This);
|
|
|
|
long ( STDMETHODCALLTYPE *GetSampleFrameCount )(
|
|
IDeckLinkAudioInputPacket * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetBytes )(
|
|
IDeckLinkAudioInputPacket * This,
|
|
/* [out] */ void **buffer);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetPacketTime )(
|
|
IDeckLinkAudioInputPacket * This,
|
|
/* [out] */ BMDTimeValue *packetTime,
|
|
/* [in] */ BMDTimeScale timeScale);
|
|
|
|
END_INTERFACE
|
|
} IDeckLinkAudioInputPacketVtbl;
|
|
|
|
interface IDeckLinkAudioInputPacket
|
|
{
|
|
CONST_VTBL struct IDeckLinkAudioInputPacketVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IDeckLinkAudioInputPacket_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IDeckLinkAudioInputPacket_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IDeckLinkAudioInputPacket_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IDeckLinkAudioInputPacket_GetSampleFrameCount(This) \
|
|
( (This)->lpVtbl -> GetSampleFrameCount(This) )
|
|
|
|
#define IDeckLinkAudioInputPacket_GetBytes(This,buffer) \
|
|
( (This)->lpVtbl -> GetBytes(This,buffer) )
|
|
|
|
#define IDeckLinkAudioInputPacket_GetPacketTime(This,packetTime,timeScale) \
|
|
( (This)->lpVtbl -> GetPacketTime(This,packetTime,timeScale) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IDeckLinkAudioInputPacket_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IDeckLinkScreenPreviewCallback_INTERFACE_DEFINED__
|
|
#define __IDeckLinkScreenPreviewCallback_INTERFACE_DEFINED__
|
|
|
|
/* interface IDeckLinkScreenPreviewCallback */
|
|
/* [helpstring][local][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IDeckLinkScreenPreviewCallback;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("B1D3F49A-85FE-4C5D-95C8-0B5D5DCCD438")
|
|
IDeckLinkScreenPreviewCallback : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE DrawFrame(
|
|
/* [in] */ IDeckLinkVideoFrame *theFrame) = 0;
|
|
|
|
};
|
|
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IDeckLinkScreenPreviewCallbackVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IDeckLinkScreenPreviewCallback * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
_COM_Outptr_ void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IDeckLinkScreenPreviewCallback * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IDeckLinkScreenPreviewCallback * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *DrawFrame )(
|
|
IDeckLinkScreenPreviewCallback * This,
|
|
/* [in] */ IDeckLinkVideoFrame *theFrame);
|
|
|
|
END_INTERFACE
|
|
} IDeckLinkScreenPreviewCallbackVtbl;
|
|
|
|
interface IDeckLinkScreenPreviewCallback
|
|
{
|
|
CONST_VTBL struct IDeckLinkScreenPreviewCallbackVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IDeckLinkScreenPreviewCallback_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IDeckLinkScreenPreviewCallback_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IDeckLinkScreenPreviewCallback_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IDeckLinkScreenPreviewCallback_DrawFrame(This,theFrame) \
|
|
( (This)->lpVtbl -> DrawFrame(This,theFrame) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IDeckLinkScreenPreviewCallback_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IDeckLinkGLScreenPreviewHelper_INTERFACE_DEFINED__
|
|
#define __IDeckLinkGLScreenPreviewHelper_INTERFACE_DEFINED__
|
|
|
|
/* interface IDeckLinkGLScreenPreviewHelper */
|
|
/* [helpstring][local][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IDeckLinkGLScreenPreviewHelper;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("504E2209-CAC7-4C1A-9FB4-C5BB6274D22F")
|
|
IDeckLinkGLScreenPreviewHelper : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE InitializeGL( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE PaintGL( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetFrame(
|
|
/* [in] */ IDeckLinkVideoFrame *theFrame) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE Set3DPreviewFormat(
|
|
/* [in] */ BMD3DPreviewFormat previewFormat) = 0;
|
|
|
|
};
|
|
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IDeckLinkGLScreenPreviewHelperVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IDeckLinkGLScreenPreviewHelper * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
_COM_Outptr_ void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IDeckLinkGLScreenPreviewHelper * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IDeckLinkGLScreenPreviewHelper * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *InitializeGL )(
|
|
IDeckLinkGLScreenPreviewHelper * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *PaintGL )(
|
|
IDeckLinkGLScreenPreviewHelper * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetFrame )(
|
|
IDeckLinkGLScreenPreviewHelper * This,
|
|
/* [in] */ IDeckLinkVideoFrame *theFrame);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *Set3DPreviewFormat )(
|
|
IDeckLinkGLScreenPreviewHelper * This,
|
|
/* [in] */ BMD3DPreviewFormat previewFormat);
|
|
|
|
END_INTERFACE
|
|
} IDeckLinkGLScreenPreviewHelperVtbl;
|
|
|
|
interface IDeckLinkGLScreenPreviewHelper
|
|
{
|
|
CONST_VTBL struct IDeckLinkGLScreenPreviewHelperVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IDeckLinkGLScreenPreviewHelper_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IDeckLinkGLScreenPreviewHelper_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IDeckLinkGLScreenPreviewHelper_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IDeckLinkGLScreenPreviewHelper_InitializeGL(This) \
|
|
( (This)->lpVtbl -> InitializeGL(This) )
|
|
|
|
#define IDeckLinkGLScreenPreviewHelper_PaintGL(This) \
|
|
( (This)->lpVtbl -> PaintGL(This) )
|
|
|
|
#define IDeckLinkGLScreenPreviewHelper_SetFrame(This,theFrame) \
|
|
( (This)->lpVtbl -> SetFrame(This,theFrame) )
|
|
|
|
#define IDeckLinkGLScreenPreviewHelper_Set3DPreviewFormat(This,previewFormat) \
|
|
( (This)->lpVtbl -> Set3DPreviewFormat(This,previewFormat) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IDeckLinkGLScreenPreviewHelper_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IDeckLinkDX9ScreenPreviewHelper_INTERFACE_DEFINED__
|
|
#define __IDeckLinkDX9ScreenPreviewHelper_INTERFACE_DEFINED__
|
|
|
|
/* interface IDeckLinkDX9ScreenPreviewHelper */
|
|
/* [helpstring][local][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IDeckLinkDX9ScreenPreviewHelper;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("2094B522-D1A1-40C0-9AC7-1C012218EF02")
|
|
IDeckLinkDX9ScreenPreviewHelper : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE Initialize(
|
|
/* [in] */ void *device) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE Render(
|
|
/* [in] */ RECT *rc) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetFrame(
|
|
/* [in] */ IDeckLinkVideoFrame *theFrame) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE Set3DPreviewFormat(
|
|
/* [in] */ BMD3DPreviewFormat previewFormat) = 0;
|
|
|
|
};
|
|
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IDeckLinkDX9ScreenPreviewHelperVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IDeckLinkDX9ScreenPreviewHelper * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
_COM_Outptr_ void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IDeckLinkDX9ScreenPreviewHelper * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IDeckLinkDX9ScreenPreviewHelper * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *Initialize )(
|
|
IDeckLinkDX9ScreenPreviewHelper * This,
|
|
/* [in] */ void *device);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *Render )(
|
|
IDeckLinkDX9ScreenPreviewHelper * This,
|
|
/* [in] */ RECT *rc);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetFrame )(
|
|
IDeckLinkDX9ScreenPreviewHelper * This,
|
|
/* [in] */ IDeckLinkVideoFrame *theFrame);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *Set3DPreviewFormat )(
|
|
IDeckLinkDX9ScreenPreviewHelper * This,
|
|
/* [in] */ BMD3DPreviewFormat previewFormat);
|
|
|
|
END_INTERFACE
|
|
} IDeckLinkDX9ScreenPreviewHelperVtbl;
|
|
|
|
interface IDeckLinkDX9ScreenPreviewHelper
|
|
{
|
|
CONST_VTBL struct IDeckLinkDX9ScreenPreviewHelperVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IDeckLinkDX9ScreenPreviewHelper_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IDeckLinkDX9ScreenPreviewHelper_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IDeckLinkDX9ScreenPreviewHelper_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IDeckLinkDX9ScreenPreviewHelper_Initialize(This,device) \
|
|
( (This)->lpVtbl -> Initialize(This,device) )
|
|
|
|
#define IDeckLinkDX9ScreenPreviewHelper_Render(This,rc) \
|
|
( (This)->lpVtbl -> Render(This,rc) )
|
|
|
|
#define IDeckLinkDX9ScreenPreviewHelper_SetFrame(This,theFrame) \
|
|
( (This)->lpVtbl -> SetFrame(This,theFrame) )
|
|
|
|
#define IDeckLinkDX9ScreenPreviewHelper_Set3DPreviewFormat(This,previewFormat) \
|
|
( (This)->lpVtbl -> Set3DPreviewFormat(This,previewFormat) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IDeckLinkDX9ScreenPreviewHelper_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IDeckLinkNotificationCallback_INTERFACE_DEFINED__
|
|
#define __IDeckLinkNotificationCallback_INTERFACE_DEFINED__
|
|
|
|
/* interface IDeckLinkNotificationCallback */
|
|
/* [helpstring][local][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IDeckLinkNotificationCallback;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("b002a1ec-070d-4288-8289-bd5d36e5ff0d")
|
|
IDeckLinkNotificationCallback : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE Notify(
|
|
/* [in] */ BMDNotifications topic,
|
|
/* [in] */ ULONGLONG param1,
|
|
/* [in] */ ULONGLONG param2) = 0;
|
|
|
|
};
|
|
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IDeckLinkNotificationCallbackVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IDeckLinkNotificationCallback * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
_COM_Outptr_ void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IDeckLinkNotificationCallback * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IDeckLinkNotificationCallback * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *Notify )(
|
|
IDeckLinkNotificationCallback * This,
|
|
/* [in] */ BMDNotifications topic,
|
|
/* [in] */ ULONGLONG param1,
|
|
/* [in] */ ULONGLONG param2);
|
|
|
|
END_INTERFACE
|
|
} IDeckLinkNotificationCallbackVtbl;
|
|
|
|
interface IDeckLinkNotificationCallback
|
|
{
|
|
CONST_VTBL struct IDeckLinkNotificationCallbackVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IDeckLinkNotificationCallback_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IDeckLinkNotificationCallback_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IDeckLinkNotificationCallback_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IDeckLinkNotificationCallback_Notify(This,topic,param1,param2) \
|
|
( (This)->lpVtbl -> Notify(This,topic,param1,param2) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IDeckLinkNotificationCallback_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IDeckLinkNotification_INTERFACE_DEFINED__
|
|
#define __IDeckLinkNotification_INTERFACE_DEFINED__
|
|
|
|
/* interface IDeckLinkNotification */
|
|
/* [helpstring][local][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IDeckLinkNotification;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("0a1fb207-e215-441b-9b19-6fa1575946c5")
|
|
IDeckLinkNotification : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE Subscribe(
|
|
/* [in] */ BMDNotifications topic,
|
|
/* [in] */ IDeckLinkNotificationCallback *theCallback) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE Unsubscribe(
|
|
/* [in] */ BMDNotifications topic,
|
|
/* [in] */ IDeckLinkNotificationCallback *theCallback) = 0;
|
|
|
|
};
|
|
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IDeckLinkNotificationVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IDeckLinkNotification * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
_COM_Outptr_ void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IDeckLinkNotification * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IDeckLinkNotification * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *Subscribe )(
|
|
IDeckLinkNotification * This,
|
|
/* [in] */ BMDNotifications topic,
|
|
/* [in] */ IDeckLinkNotificationCallback *theCallback);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *Unsubscribe )(
|
|
IDeckLinkNotification * This,
|
|
/* [in] */ BMDNotifications topic,
|
|
/* [in] */ IDeckLinkNotificationCallback *theCallback);
|
|
|
|
END_INTERFACE
|
|
} IDeckLinkNotificationVtbl;
|
|
|
|
interface IDeckLinkNotification
|
|
{
|
|
CONST_VTBL struct IDeckLinkNotificationVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IDeckLinkNotification_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IDeckLinkNotification_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IDeckLinkNotification_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IDeckLinkNotification_Subscribe(This,topic,theCallback) \
|
|
( (This)->lpVtbl -> Subscribe(This,topic,theCallback) )
|
|
|
|
#define IDeckLinkNotification_Unsubscribe(This,topic,theCallback) \
|
|
( (This)->lpVtbl -> Unsubscribe(This,topic,theCallback) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IDeckLinkNotification_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IDeckLinkAttributes_INTERFACE_DEFINED__
|
|
#define __IDeckLinkAttributes_INTERFACE_DEFINED__
|
|
|
|
/* interface IDeckLinkAttributes */
|
|
/* [helpstring][local][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IDeckLinkAttributes;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("ABC11843-D966-44CB-96E2-A1CB5D3135C4")
|
|
IDeckLinkAttributes : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE GetFlag(
|
|
/* [in] */ BMDDeckLinkAttributeID cfgID,
|
|
/* [out] */ BOOL *value) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetInt(
|
|
/* [in] */ BMDDeckLinkAttributeID cfgID,
|
|
/* [out] */ LONGLONG *value) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetFloat(
|
|
/* [in] */ BMDDeckLinkAttributeID cfgID,
|
|
/* [out] */ double *value) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetString(
|
|
/* [in] */ BMDDeckLinkAttributeID cfgID,
|
|
/* [out] */ BSTR *value) = 0;
|
|
|
|
};
|
|
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IDeckLinkAttributesVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IDeckLinkAttributes * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
_COM_Outptr_ void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IDeckLinkAttributes * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IDeckLinkAttributes * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetFlag )(
|
|
IDeckLinkAttributes * This,
|
|
/* [in] */ BMDDeckLinkAttributeID cfgID,
|
|
/* [out] */ BOOL *value);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetInt )(
|
|
IDeckLinkAttributes * This,
|
|
/* [in] */ BMDDeckLinkAttributeID cfgID,
|
|
/* [out] */ LONGLONG *value);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetFloat )(
|
|
IDeckLinkAttributes * This,
|
|
/* [in] */ BMDDeckLinkAttributeID cfgID,
|
|
/* [out] */ double *value);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetString )(
|
|
IDeckLinkAttributes * This,
|
|
/* [in] */ BMDDeckLinkAttributeID cfgID,
|
|
/* [out] */ BSTR *value);
|
|
|
|
END_INTERFACE
|
|
} IDeckLinkAttributesVtbl;
|
|
|
|
interface IDeckLinkAttributes
|
|
{
|
|
CONST_VTBL struct IDeckLinkAttributesVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IDeckLinkAttributes_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IDeckLinkAttributes_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IDeckLinkAttributes_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IDeckLinkAttributes_GetFlag(This,cfgID,value) \
|
|
( (This)->lpVtbl -> GetFlag(This,cfgID,value) )
|
|
|
|
#define IDeckLinkAttributes_GetInt(This,cfgID,value) \
|
|
( (This)->lpVtbl -> GetInt(This,cfgID,value) )
|
|
|
|
#define IDeckLinkAttributes_GetFloat(This,cfgID,value) \
|
|
( (This)->lpVtbl -> GetFloat(This,cfgID,value) )
|
|
|
|
#define IDeckLinkAttributes_GetString(This,cfgID,value) \
|
|
( (This)->lpVtbl -> GetString(This,cfgID,value) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IDeckLinkAttributes_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IDeckLinkStatus_INTERFACE_DEFINED__
|
|
#define __IDeckLinkStatus_INTERFACE_DEFINED__
|
|
|
|
/* interface IDeckLinkStatus */
|
|
/* [helpstring][local][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IDeckLinkStatus;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("5F558200-4028-49BC-BEAC-DB3FA4A96E46")
|
|
IDeckLinkStatus : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE GetFlag(
|
|
/* [in] */ BMDDeckLinkStatusID statusID,
|
|
/* [out] */ BOOL *value) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetInt(
|
|
/* [in] */ BMDDeckLinkStatusID statusID,
|
|
/* [out] */ LONGLONG *value) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetFloat(
|
|
/* [in] */ BMDDeckLinkStatusID statusID,
|
|
/* [out] */ double *value) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetString(
|
|
/* [in] */ BMDDeckLinkStatusID statusID,
|
|
/* [out] */ BSTR *value) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetBytes(
|
|
/* [in] */ BMDDeckLinkStatusID statusID,
|
|
/* [out] */ void *buffer,
|
|
/* [out][in] */ unsigned int *bufferSize) = 0;
|
|
|
|
};
|
|
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IDeckLinkStatusVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IDeckLinkStatus * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
_COM_Outptr_ void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IDeckLinkStatus * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IDeckLinkStatus * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetFlag )(
|
|
IDeckLinkStatus * This,
|
|
/* [in] */ BMDDeckLinkStatusID statusID,
|
|
/* [out] */ BOOL *value);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetInt )(
|
|
IDeckLinkStatus * This,
|
|
/* [in] */ BMDDeckLinkStatusID statusID,
|
|
/* [out] */ LONGLONG *value);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetFloat )(
|
|
IDeckLinkStatus * This,
|
|
/* [in] */ BMDDeckLinkStatusID statusID,
|
|
/* [out] */ double *value);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetString )(
|
|
IDeckLinkStatus * This,
|
|
/* [in] */ BMDDeckLinkStatusID statusID,
|
|
/* [out] */ BSTR *value);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetBytes )(
|
|
IDeckLinkStatus * This,
|
|
/* [in] */ BMDDeckLinkStatusID statusID,
|
|
/* [out] */ void *buffer,
|
|
/* [out][in] */ unsigned int *bufferSize);
|
|
|
|
END_INTERFACE
|
|
} IDeckLinkStatusVtbl;
|
|
|
|
interface IDeckLinkStatus
|
|
{
|
|
CONST_VTBL struct IDeckLinkStatusVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IDeckLinkStatus_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IDeckLinkStatus_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IDeckLinkStatus_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IDeckLinkStatus_GetFlag(This,statusID,value) \
|
|
( (This)->lpVtbl -> GetFlag(This,statusID,value) )
|
|
|
|
#define IDeckLinkStatus_GetInt(This,statusID,value) \
|
|
( (This)->lpVtbl -> GetInt(This,statusID,value) )
|
|
|
|
#define IDeckLinkStatus_GetFloat(This,statusID,value) \
|
|
( (This)->lpVtbl -> GetFloat(This,statusID,value) )
|
|
|
|
#define IDeckLinkStatus_GetString(This,statusID,value) \
|
|
( (This)->lpVtbl -> GetString(This,statusID,value) )
|
|
|
|
#define IDeckLinkStatus_GetBytes(This,statusID,buffer,bufferSize) \
|
|
( (This)->lpVtbl -> GetBytes(This,statusID,buffer,bufferSize) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IDeckLinkStatus_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IDeckLinkKeyer_INTERFACE_DEFINED__
|
|
#define __IDeckLinkKeyer_INTERFACE_DEFINED__
|
|
|
|
/* interface IDeckLinkKeyer */
|
|
/* [helpstring][local][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IDeckLinkKeyer;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("89AFCAF5-65F8-421E-98F7-96FE5F5BFBA3")
|
|
IDeckLinkKeyer : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE Enable(
|
|
/* [in] */ BOOL isExternal) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetLevel(
|
|
/* [in] */ unsigned char level) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE RampUp(
|
|
/* [in] */ unsigned int numberOfFrames) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE RampDown(
|
|
/* [in] */ unsigned int numberOfFrames) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE Disable( void) = 0;
|
|
|
|
};
|
|
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IDeckLinkKeyerVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IDeckLinkKeyer * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
_COM_Outptr_ void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IDeckLinkKeyer * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IDeckLinkKeyer * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *Enable )(
|
|
IDeckLinkKeyer * This,
|
|
/* [in] */ BOOL isExternal);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetLevel )(
|
|
IDeckLinkKeyer * This,
|
|
/* [in] */ unsigned char level);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *RampUp )(
|
|
IDeckLinkKeyer * This,
|
|
/* [in] */ unsigned int numberOfFrames);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *RampDown )(
|
|
IDeckLinkKeyer * This,
|
|
/* [in] */ unsigned int numberOfFrames);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *Disable )(
|
|
IDeckLinkKeyer * This);
|
|
|
|
END_INTERFACE
|
|
} IDeckLinkKeyerVtbl;
|
|
|
|
interface IDeckLinkKeyer
|
|
{
|
|
CONST_VTBL struct IDeckLinkKeyerVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IDeckLinkKeyer_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IDeckLinkKeyer_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IDeckLinkKeyer_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IDeckLinkKeyer_Enable(This,isExternal) \
|
|
( (This)->lpVtbl -> Enable(This,isExternal) )
|
|
|
|
#define IDeckLinkKeyer_SetLevel(This,level) \
|
|
( (This)->lpVtbl -> SetLevel(This,level) )
|
|
|
|
#define IDeckLinkKeyer_RampUp(This,numberOfFrames) \
|
|
( (This)->lpVtbl -> RampUp(This,numberOfFrames) )
|
|
|
|
#define IDeckLinkKeyer_RampDown(This,numberOfFrames) \
|
|
( (This)->lpVtbl -> RampDown(This,numberOfFrames) )
|
|
|
|
#define IDeckLinkKeyer_Disable(This) \
|
|
( (This)->lpVtbl -> Disable(This) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IDeckLinkKeyer_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IDeckLinkVideoConversion_INTERFACE_DEFINED__
|
|
#define __IDeckLinkVideoConversion_INTERFACE_DEFINED__
|
|
|
|
/* interface IDeckLinkVideoConversion */
|
|
/* [helpstring][local][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IDeckLinkVideoConversion;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("3BBCB8A2-DA2C-42D9-B5D8-88083644E99A")
|
|
IDeckLinkVideoConversion : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE ConvertFrame(
|
|
/* [in] */ IDeckLinkVideoFrame *srcFrame,
|
|
/* [in] */ IDeckLinkVideoFrame *dstFrame) = 0;
|
|
|
|
};
|
|
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IDeckLinkVideoConversionVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IDeckLinkVideoConversion * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
_COM_Outptr_ void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IDeckLinkVideoConversion * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IDeckLinkVideoConversion * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *ConvertFrame )(
|
|
IDeckLinkVideoConversion * This,
|
|
/* [in] */ IDeckLinkVideoFrame *srcFrame,
|
|
/* [in] */ IDeckLinkVideoFrame *dstFrame);
|
|
|
|
END_INTERFACE
|
|
} IDeckLinkVideoConversionVtbl;
|
|
|
|
interface IDeckLinkVideoConversion
|
|
{
|
|
CONST_VTBL struct IDeckLinkVideoConversionVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IDeckLinkVideoConversion_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IDeckLinkVideoConversion_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IDeckLinkVideoConversion_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IDeckLinkVideoConversion_ConvertFrame(This,srcFrame,dstFrame) \
|
|
( (This)->lpVtbl -> ConvertFrame(This,srcFrame,dstFrame) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IDeckLinkVideoConversion_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IDeckLinkDeviceNotificationCallback_INTERFACE_DEFINED__
|
|
#define __IDeckLinkDeviceNotificationCallback_INTERFACE_DEFINED__
|
|
|
|
/* interface IDeckLinkDeviceNotificationCallback */
|
|
/* [helpstring][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IDeckLinkDeviceNotificationCallback;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("4997053B-0ADF-4CC8-AC70-7A50C4BE728F")
|
|
IDeckLinkDeviceNotificationCallback : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE DeckLinkDeviceArrived(
|
|
/* [in] */ IDeckLink *deckLinkDevice) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE DeckLinkDeviceRemoved(
|
|
/* [in] */ IDeckLink *deckLinkDevice) = 0;
|
|
|
|
};
|
|
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IDeckLinkDeviceNotificationCallbackVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IDeckLinkDeviceNotificationCallback * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
_COM_Outptr_ void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IDeckLinkDeviceNotificationCallback * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IDeckLinkDeviceNotificationCallback * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *DeckLinkDeviceArrived )(
|
|
IDeckLinkDeviceNotificationCallback * This,
|
|
/* [in] */ IDeckLink *deckLinkDevice);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *DeckLinkDeviceRemoved )(
|
|
IDeckLinkDeviceNotificationCallback * This,
|
|
/* [in] */ IDeckLink *deckLinkDevice);
|
|
|
|
END_INTERFACE
|
|
} IDeckLinkDeviceNotificationCallbackVtbl;
|
|
|
|
interface IDeckLinkDeviceNotificationCallback
|
|
{
|
|
CONST_VTBL struct IDeckLinkDeviceNotificationCallbackVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IDeckLinkDeviceNotificationCallback_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IDeckLinkDeviceNotificationCallback_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IDeckLinkDeviceNotificationCallback_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IDeckLinkDeviceNotificationCallback_DeckLinkDeviceArrived(This,deckLinkDevice) \
|
|
( (This)->lpVtbl -> DeckLinkDeviceArrived(This,deckLinkDevice) )
|
|
|
|
#define IDeckLinkDeviceNotificationCallback_DeckLinkDeviceRemoved(This,deckLinkDevice) \
|
|
( (This)->lpVtbl -> DeckLinkDeviceRemoved(This,deckLinkDevice) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IDeckLinkDeviceNotificationCallback_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IDeckLinkDiscovery_INTERFACE_DEFINED__
|
|
#define __IDeckLinkDiscovery_INTERFACE_DEFINED__
|
|
|
|
/* interface IDeckLinkDiscovery */
|
|
/* [helpstring][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IDeckLinkDiscovery;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("CDBF631C-BC76-45FA-B44D-C55059BC6101")
|
|
IDeckLinkDiscovery : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE InstallDeviceNotifications(
|
|
/* [in] */ IDeckLinkDeviceNotificationCallback *deviceNotificationCallback) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE UninstallDeviceNotifications( void) = 0;
|
|
|
|
};
|
|
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IDeckLinkDiscoveryVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IDeckLinkDiscovery * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
_COM_Outptr_ void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IDeckLinkDiscovery * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IDeckLinkDiscovery * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *InstallDeviceNotifications )(
|
|
IDeckLinkDiscovery * This,
|
|
/* [in] */ IDeckLinkDeviceNotificationCallback *deviceNotificationCallback);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *UninstallDeviceNotifications )(
|
|
IDeckLinkDiscovery * This);
|
|
|
|
END_INTERFACE
|
|
} IDeckLinkDiscoveryVtbl;
|
|
|
|
interface IDeckLinkDiscovery
|
|
{
|
|
CONST_VTBL struct IDeckLinkDiscoveryVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IDeckLinkDiscovery_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IDeckLinkDiscovery_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IDeckLinkDiscovery_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IDeckLinkDiscovery_InstallDeviceNotifications(This,deviceNotificationCallback) \
|
|
( (This)->lpVtbl -> InstallDeviceNotifications(This,deviceNotificationCallback) )
|
|
|
|
#define IDeckLinkDiscovery_UninstallDeviceNotifications(This) \
|
|
( (This)->lpVtbl -> UninstallDeviceNotifications(This) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IDeckLinkDiscovery_INTERFACE_DEFINED__ */
|
|
|
|
|
|
EXTERN_C const CLSID CLSID_CDeckLinkIterator;
|
|
|
|
#ifdef __cplusplus
|
|
|
|
class DECLSPEC_UUID("1F2E109A-8F4F-49E4-9203-135595CB6FA5")
|
|
CDeckLinkIterator;
|
|
#endif
|
|
|
|
EXTERN_C const CLSID CLSID_CDeckLinkAPIInformation;
|
|
|
|
#ifdef __cplusplus
|
|
|
|
class DECLSPEC_UUID("263CA19F-ED09-482E-9F9D-84005783A237")
|
|
CDeckLinkAPIInformation;
|
|
#endif
|
|
|
|
EXTERN_C const CLSID CLSID_CDeckLinkGLScreenPreviewHelper;
|
|
|
|
#ifdef __cplusplus
|
|
|
|
class DECLSPEC_UUID("F63E77C7-B655-4A4A-9AD0-3CA85D394343")
|
|
CDeckLinkGLScreenPreviewHelper;
|
|
#endif
|
|
|
|
EXTERN_C const CLSID CLSID_CDeckLinkDX9ScreenPreviewHelper;
|
|
|
|
#ifdef __cplusplus
|
|
|
|
class DECLSPEC_UUID("CC010023-E01D-4525-9D59-80C8AB3DC7A0")
|
|
CDeckLinkDX9ScreenPreviewHelper;
|
|
#endif
|
|
|
|
EXTERN_C const CLSID CLSID_CDeckLinkVideoConversion;
|
|
|
|
#ifdef __cplusplus
|
|
|
|
class DECLSPEC_UUID("7DBBBB11-5B7B-467D-AEA4-CEA468FD368C")
|
|
CDeckLinkVideoConversion;
|
|
#endif
|
|
|
|
EXTERN_C const CLSID CLSID_CDeckLinkDiscovery;
|
|
|
|
#ifdef __cplusplus
|
|
|
|
class DECLSPEC_UUID("1073A05C-D885-47E9-B3C6-129B3F9F648B")
|
|
CDeckLinkDiscovery;
|
|
#endif
|
|
|
|
#ifndef __IDeckLinkEncoderConfiguration_v10_5_INTERFACE_DEFINED__
|
|
#define __IDeckLinkEncoderConfiguration_v10_5_INTERFACE_DEFINED__
|
|
|
|
/* interface IDeckLinkEncoderConfiguration_v10_5 */
|
|
/* [helpstring][local][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IDeckLinkEncoderConfiguration_v10_5;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("67455668-0848-45DF-8D8E-350A77C9A028")
|
|
IDeckLinkEncoderConfiguration_v10_5 : 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 GetDecoderConfigurationInfo(
|
|
/* [out] */ void *buffer,
|
|
/* [in] */ long bufferSize,
|
|
/* [out] */ long *returnedSize) = 0;
|
|
|
|
};
|
|
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IDeckLinkEncoderConfiguration_v10_5Vtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IDeckLinkEncoderConfiguration_v10_5 * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
_COM_Outptr_ void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IDeckLinkEncoderConfiguration_v10_5 * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IDeckLinkEncoderConfiguration_v10_5 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetFlag )(
|
|
IDeckLinkEncoderConfiguration_v10_5 * This,
|
|
/* [in] */ BMDDeckLinkEncoderConfigurationID cfgID,
|
|
/* [in] */ BOOL value);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetFlag )(
|
|
IDeckLinkEncoderConfiguration_v10_5 * This,
|
|
/* [in] */ BMDDeckLinkEncoderConfigurationID cfgID,
|
|
/* [out] */ BOOL *value);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetInt )(
|
|
IDeckLinkEncoderConfiguration_v10_5 * This,
|
|
/* [in] */ BMDDeckLinkEncoderConfigurationID cfgID,
|
|
/* [in] */ LONGLONG value);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetInt )(
|
|
IDeckLinkEncoderConfiguration_v10_5 * This,
|
|
/* [in] */ BMDDeckLinkEncoderConfigurationID cfgID,
|
|
/* [out] */ LONGLONG *value);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetFloat )(
|
|
IDeckLinkEncoderConfiguration_v10_5 * This,
|
|
/* [in] */ BMDDeckLinkEncoderConfigurationID cfgID,
|
|
/* [in] */ double value);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetFloat )(
|
|
IDeckLinkEncoderConfiguration_v10_5 * This,
|
|
/* [in] */ BMDDeckLinkEncoderConfigurationID cfgID,
|
|
/* [out] */ double *value);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetString )(
|
|
IDeckLinkEncoderConfiguration_v10_5 * This,
|
|
/* [in] */ BMDDeckLinkEncoderConfigurationID cfgID,
|
|
/* [in] */ BSTR value);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetString )(
|
|
IDeckLinkEncoderConfiguration_v10_5 * This,
|
|
/* [in] */ BMDDeckLinkEncoderConfigurationID cfgID,
|
|
/* [out] */ BSTR *value);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetDecoderConfigurationInfo )(
|
|
IDeckLinkEncoderConfiguration_v10_5 * This,
|
|
/* [out] */ void *buffer,
|
|
/* [in] */ long bufferSize,
|
|
/* [out] */ long *returnedSize);
|
|
|
|
END_INTERFACE
|
|
} IDeckLinkEncoderConfiguration_v10_5Vtbl;
|
|
|
|
interface IDeckLinkEncoderConfiguration_v10_5
|
|
{
|
|
CONST_VTBL struct IDeckLinkEncoderConfiguration_v10_5Vtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IDeckLinkEncoderConfiguration_v10_5_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IDeckLinkEncoderConfiguration_v10_5_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IDeckLinkEncoderConfiguration_v10_5_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IDeckLinkEncoderConfiguration_v10_5_SetFlag(This,cfgID,value) \
|
|
( (This)->lpVtbl -> SetFlag(This,cfgID,value) )
|
|
|
|
#define IDeckLinkEncoderConfiguration_v10_5_GetFlag(This,cfgID,value) \
|
|
( (This)->lpVtbl -> GetFlag(This,cfgID,value) )
|
|
|
|
#define IDeckLinkEncoderConfiguration_v10_5_SetInt(This,cfgID,value) \
|
|
( (This)->lpVtbl -> SetInt(This,cfgID,value) )
|
|
|
|
#define IDeckLinkEncoderConfiguration_v10_5_GetInt(This,cfgID,value) \
|
|
( (This)->lpVtbl -> GetInt(This,cfgID,value) )
|
|
|
|
#define IDeckLinkEncoderConfiguration_v10_5_SetFloat(This,cfgID,value) \
|
|
( (This)->lpVtbl -> SetFloat(This,cfgID,value) )
|
|
|
|
#define IDeckLinkEncoderConfiguration_v10_5_GetFloat(This,cfgID,value) \
|
|
( (This)->lpVtbl -> GetFloat(This,cfgID,value) )
|
|
|
|
#define IDeckLinkEncoderConfiguration_v10_5_SetString(This,cfgID,value) \
|
|
( (This)->lpVtbl -> SetString(This,cfgID,value) )
|
|
|
|
#define IDeckLinkEncoderConfiguration_v10_5_GetString(This,cfgID,value) \
|
|
( (This)->lpVtbl -> GetString(This,cfgID,value) )
|
|
|
|
#define IDeckLinkEncoderConfiguration_v10_5_GetDecoderConfigurationInfo(This,buffer,bufferSize,returnedSize) \
|
|
( (This)->lpVtbl -> GetDecoderConfigurationInfo(This,buffer,bufferSize,returnedSize) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IDeckLinkEncoderConfiguration_v10_5_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IDeckLinkConfiguration_v10_4_INTERFACE_DEFINED__
|
|
#define __IDeckLinkConfiguration_v10_4_INTERFACE_DEFINED__
|
|
|
|
/* interface IDeckLinkConfiguration_v10_4 */
|
|
/* [helpstring][local][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IDeckLinkConfiguration_v10_4;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("1E69FCF6-4203-4936-8076-2A9F4CFD50CB")
|
|
IDeckLinkConfiguration_v10_4 : 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 IDeckLinkConfiguration_v10_4Vtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IDeckLinkConfiguration_v10_4 * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
_COM_Outptr_ void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IDeckLinkConfiguration_v10_4 * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IDeckLinkConfiguration_v10_4 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetFlag )(
|
|
IDeckLinkConfiguration_v10_4 * This,
|
|
/* [in] */ BMDDeckLinkConfigurationID cfgID,
|
|
/* [in] */ BOOL value);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetFlag )(
|
|
IDeckLinkConfiguration_v10_4 * This,
|
|
/* [in] */ BMDDeckLinkConfigurationID cfgID,
|
|
/* [out] */ BOOL *value);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetInt )(
|
|
IDeckLinkConfiguration_v10_4 * This,
|
|
/* [in] */ BMDDeckLinkConfigurationID cfgID,
|
|
/* [in] */ LONGLONG value);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetInt )(
|
|
IDeckLinkConfiguration_v10_4 * This,
|
|
/* [in] */ BMDDeckLinkConfigurationID cfgID,
|
|
/* [out] */ LONGLONG *value);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetFloat )(
|
|
IDeckLinkConfiguration_v10_4 * This,
|
|
/* [in] */ BMDDeckLinkConfigurationID cfgID,
|
|
/* [in] */ double value);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetFloat )(
|
|
IDeckLinkConfiguration_v10_4 * This,
|
|
/* [in] */ BMDDeckLinkConfigurationID cfgID,
|
|
/* [out] */ double *value);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetString )(
|
|
IDeckLinkConfiguration_v10_4 * This,
|
|
/* [in] */ BMDDeckLinkConfigurationID cfgID,
|
|
/* [in] */ BSTR value);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetString )(
|
|
IDeckLinkConfiguration_v10_4 * This,
|
|
/* [in] */ BMDDeckLinkConfigurationID cfgID,
|
|
/* [out] */ BSTR *value);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *WriteConfigurationToPreferences )(
|
|
IDeckLinkConfiguration_v10_4 * This);
|
|
|
|
END_INTERFACE
|
|
} IDeckLinkConfiguration_v10_4Vtbl;
|
|
|
|
interface IDeckLinkConfiguration_v10_4
|
|
{
|
|
CONST_VTBL struct IDeckLinkConfiguration_v10_4Vtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IDeckLinkConfiguration_v10_4_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IDeckLinkConfiguration_v10_4_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IDeckLinkConfiguration_v10_4_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IDeckLinkConfiguration_v10_4_SetFlag(This,cfgID,value) \
|
|
( (This)->lpVtbl -> SetFlag(This,cfgID,value) )
|
|
|
|
#define IDeckLinkConfiguration_v10_4_GetFlag(This,cfgID,value) \
|
|
( (This)->lpVtbl -> GetFlag(This,cfgID,value) )
|
|
|
|
#define IDeckLinkConfiguration_v10_4_SetInt(This,cfgID,value) \
|
|
( (This)->lpVtbl -> SetInt(This,cfgID,value) )
|
|
|
|
#define IDeckLinkConfiguration_v10_4_GetInt(This,cfgID,value) \
|
|
( (This)->lpVtbl -> GetInt(This,cfgID,value) )
|
|
|
|
#define IDeckLinkConfiguration_v10_4_SetFloat(This,cfgID,value) \
|
|
( (This)->lpVtbl -> SetFloat(This,cfgID,value) )
|
|
|
|
#define IDeckLinkConfiguration_v10_4_GetFloat(This,cfgID,value) \
|
|
( (This)->lpVtbl -> GetFloat(This,cfgID,value) )
|
|
|
|
#define IDeckLinkConfiguration_v10_4_SetString(This,cfgID,value) \
|
|
( (This)->lpVtbl -> SetString(This,cfgID,value) )
|
|
|
|
#define IDeckLinkConfiguration_v10_4_GetString(This,cfgID,value) \
|
|
( (This)->lpVtbl -> GetString(This,cfgID,value) )
|
|
|
|
#define IDeckLinkConfiguration_v10_4_WriteConfigurationToPreferences(This) \
|
|
( (This)->lpVtbl -> WriteConfigurationToPreferences(This) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IDeckLinkConfiguration_v10_4_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IDeckLinkConfiguration_v10_2_INTERFACE_DEFINED__
|
|
#define __IDeckLinkConfiguration_v10_2_INTERFACE_DEFINED__
|
|
|
|
/* interface IDeckLinkConfiguration_v10_2 */
|
|
/* [helpstring][local][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IDeckLinkConfiguration_v10_2;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("C679A35B-610C-4D09-B748-1D0478100FC0")
|
|
IDeckLinkConfiguration_v10_2 : 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 IDeckLinkConfiguration_v10_2Vtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IDeckLinkConfiguration_v10_2 * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
_COM_Outptr_ void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IDeckLinkConfiguration_v10_2 * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IDeckLinkConfiguration_v10_2 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetFlag )(
|
|
IDeckLinkConfiguration_v10_2 * This,
|
|
/* [in] */ BMDDeckLinkConfigurationID cfgID,
|
|
/* [in] */ BOOL value);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetFlag )(
|
|
IDeckLinkConfiguration_v10_2 * This,
|
|
/* [in] */ BMDDeckLinkConfigurationID cfgID,
|
|
/* [out] */ BOOL *value);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetInt )(
|
|
IDeckLinkConfiguration_v10_2 * This,
|
|
/* [in] */ BMDDeckLinkConfigurationID cfgID,
|
|
/* [in] */ LONGLONG value);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetInt )(
|
|
IDeckLinkConfiguration_v10_2 * This,
|
|
/* [in] */ BMDDeckLinkConfigurationID cfgID,
|
|
/* [out] */ LONGLONG *value);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetFloat )(
|
|
IDeckLinkConfiguration_v10_2 * This,
|
|
/* [in] */ BMDDeckLinkConfigurationID cfgID,
|
|
/* [in] */ double value);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetFloat )(
|
|
IDeckLinkConfiguration_v10_2 * This,
|
|
/* [in] */ BMDDeckLinkConfigurationID cfgID,
|
|
/* [out] */ double *value);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetString )(
|
|
IDeckLinkConfiguration_v10_2 * This,
|
|
/* [in] */ BMDDeckLinkConfigurationID cfgID,
|
|
/* [in] */ BSTR value);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetString )(
|
|
IDeckLinkConfiguration_v10_2 * This,
|
|
/* [in] */ BMDDeckLinkConfigurationID cfgID,
|
|
/* [out] */ BSTR *value);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *WriteConfigurationToPreferences )(
|
|
IDeckLinkConfiguration_v10_2 * This);
|
|
|
|
END_INTERFACE
|
|
} IDeckLinkConfiguration_v10_2Vtbl;
|
|
|
|
interface IDeckLinkConfiguration_v10_2
|
|
{
|
|
CONST_VTBL struct IDeckLinkConfiguration_v10_2Vtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IDeckLinkConfiguration_v10_2_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IDeckLinkConfiguration_v10_2_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IDeckLinkConfiguration_v10_2_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IDeckLinkConfiguration_v10_2_SetFlag(This,cfgID,value) \
|
|
( (This)->lpVtbl -> SetFlag(This,cfgID,value) )
|
|
|
|
#define IDeckLinkConfiguration_v10_2_GetFlag(This,cfgID,value) \
|
|
( (This)->lpVtbl -> GetFlag(This,cfgID,value) )
|
|
|
|
#define IDeckLinkConfiguration_v10_2_SetInt(This,cfgID,value) \
|
|
( (This)->lpVtbl -> SetInt(This,cfgID,value) )
|
|
|
|
#define IDeckLinkConfiguration_v10_2_GetInt(This,cfgID,value) \
|
|
( (This)->lpVtbl -> GetInt(This,cfgID,value) )
|
|
|
|
#define IDeckLinkConfiguration_v10_2_SetFloat(This,cfgID,value) \
|
|
( (This)->lpVtbl -> SetFloat(This,cfgID,value) )
|
|
|
|
#define IDeckLinkConfiguration_v10_2_GetFloat(This,cfgID,value) \
|
|
( (This)->lpVtbl -> GetFloat(This,cfgID,value) )
|
|
|
|
#define IDeckLinkConfiguration_v10_2_SetString(This,cfgID,value) \
|
|
( (This)->lpVtbl -> SetString(This,cfgID,value) )
|
|
|
|
#define IDeckLinkConfiguration_v10_2_GetString(This,cfgID,value) \
|
|
( (This)->lpVtbl -> GetString(This,cfgID,value) )
|
|
|
|
#define IDeckLinkConfiguration_v10_2_WriteConfigurationToPreferences(This) \
|
|
( (This)->lpVtbl -> WriteConfigurationToPreferences(This) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IDeckLinkConfiguration_v10_2_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IDeckLinkOutput_v9_9_INTERFACE_DEFINED__
|
|
#define __IDeckLinkOutput_v9_9_INTERFACE_DEFINED__
|
|
|
|
/* interface IDeckLinkOutput_v9_9 */
|
|
/* [helpstring][local][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IDeckLinkOutput_v9_9;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("A3EF0963-0862-44ED-92A9-EE89ABF431C7")
|
|
IDeckLinkOutput_v9_9 : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE DoesSupportVideoMode(
|
|
/* [in] */ BMDDisplayMode displayMode,
|
|
/* [in] */ BMDPixelFormat pixelFormat,
|
|
/* [in] */ BMDVideoOutputFlags flags,
|
|
/* [out] */ BMDDisplayModeSupport *result,
|
|
/* [out] */ IDeckLinkDisplayMode **resultDisplayMode) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetDisplayModeIterator(
|
|
/* [out] */ IDeckLinkDisplayModeIterator **iterator) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetScreenPreviewCallback(
|
|
/* [in] */ IDeckLinkScreenPreviewCallback *previewCallback) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE EnableVideoOutput(
|
|
/* [in] */ BMDDisplayMode displayMode,
|
|
/* [in] */ BMDVideoOutputFlags flags) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE DisableVideoOutput( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetVideoOutputFrameMemoryAllocator(
|
|
/* [in] */ IDeckLinkMemoryAllocator *theAllocator) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE CreateVideoFrame(
|
|
/* [in] */ int width,
|
|
/* [in] */ int height,
|
|
/* [in] */ int rowBytes,
|
|
/* [in] */ BMDPixelFormat pixelFormat,
|
|
/* [in] */ BMDFrameFlags flags,
|
|
/* [out] */ IDeckLinkMutableVideoFrame **outFrame) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE CreateAncillaryData(
|
|
/* [in] */ BMDPixelFormat pixelFormat,
|
|
/* [out] */ IDeckLinkVideoFrameAncillary **outBuffer) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE DisplayVideoFrameSync(
|
|
/* [in] */ IDeckLinkVideoFrame *theFrame) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE ScheduleVideoFrame(
|
|
/* [in] */ IDeckLinkVideoFrame *theFrame,
|
|
/* [in] */ BMDTimeValue displayTime,
|
|
/* [in] */ BMDTimeValue displayDuration,
|
|
/* [in] */ BMDTimeScale timeScale) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetScheduledFrameCompletionCallback(
|
|
/* [in] */ IDeckLinkVideoOutputCallback *theCallback) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetBufferedVideoFrameCount(
|
|
/* [out] */ unsigned int *bufferedFrameCount) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE EnableAudioOutput(
|
|
/* [in] */ BMDAudioSampleRate sampleRate,
|
|
/* [in] */ BMDAudioSampleType sampleType,
|
|
/* [in] */ unsigned int channelCount,
|
|
/* [in] */ BMDAudioOutputStreamType streamType) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE DisableAudioOutput( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE WriteAudioSamplesSync(
|
|
/* [in] */ void *buffer,
|
|
/* [in] */ unsigned int sampleFrameCount,
|
|
/* [out] */ unsigned int *sampleFramesWritten) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE BeginAudioPreroll( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE EndAudioPreroll( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE ScheduleAudioSamples(
|
|
/* [in] */ void *buffer,
|
|
/* [in] */ unsigned int sampleFrameCount,
|
|
/* [in] */ BMDTimeValue streamTime,
|
|
/* [in] */ BMDTimeScale timeScale,
|
|
/* [out] */ unsigned int *sampleFramesWritten) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetBufferedAudioSampleFrameCount(
|
|
/* [out] */ unsigned int *bufferedSampleFrameCount) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE FlushBufferedAudioSamples( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetAudioCallback(
|
|
/* [in] */ IDeckLinkAudioOutputCallback *theCallback) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE StartScheduledPlayback(
|
|
/* [in] */ BMDTimeValue playbackStartTime,
|
|
/* [in] */ BMDTimeScale timeScale,
|
|
/* [in] */ double playbackSpeed) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE StopScheduledPlayback(
|
|
/* [in] */ BMDTimeValue stopPlaybackAtTime,
|
|
/* [out] */ BMDTimeValue *actualStopTime,
|
|
/* [in] */ BMDTimeScale timeScale) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE IsScheduledPlaybackRunning(
|
|
/* [out] */ BOOL *active) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetScheduledStreamTime(
|
|
/* [in] */ BMDTimeScale desiredTimeScale,
|
|
/* [out] */ BMDTimeValue *streamTime,
|
|
/* [out] */ double *playbackSpeed) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetReferenceStatus(
|
|
/* [out] */ BMDReferenceStatus *referenceStatus) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetHardwareReferenceClock(
|
|
/* [in] */ BMDTimeScale desiredTimeScale,
|
|
/* [out] */ BMDTimeValue *hardwareTime,
|
|
/* [out] */ BMDTimeValue *timeInFrame,
|
|
/* [out] */ BMDTimeValue *ticksPerFrame) = 0;
|
|
|
|
};
|
|
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IDeckLinkOutput_v9_9Vtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IDeckLinkOutput_v9_9 * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
_COM_Outptr_ void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IDeckLinkOutput_v9_9 * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IDeckLinkOutput_v9_9 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *DoesSupportVideoMode )(
|
|
IDeckLinkOutput_v9_9 * This,
|
|
/* [in] */ BMDDisplayMode displayMode,
|
|
/* [in] */ BMDPixelFormat pixelFormat,
|
|
/* [in] */ BMDVideoOutputFlags flags,
|
|
/* [out] */ BMDDisplayModeSupport *result,
|
|
/* [out] */ IDeckLinkDisplayMode **resultDisplayMode);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetDisplayModeIterator )(
|
|
IDeckLinkOutput_v9_9 * This,
|
|
/* [out] */ IDeckLinkDisplayModeIterator **iterator);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetScreenPreviewCallback )(
|
|
IDeckLinkOutput_v9_9 * This,
|
|
/* [in] */ IDeckLinkScreenPreviewCallback *previewCallback);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *EnableVideoOutput )(
|
|
IDeckLinkOutput_v9_9 * This,
|
|
/* [in] */ BMDDisplayMode displayMode,
|
|
/* [in] */ BMDVideoOutputFlags flags);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *DisableVideoOutput )(
|
|
IDeckLinkOutput_v9_9 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetVideoOutputFrameMemoryAllocator )(
|
|
IDeckLinkOutput_v9_9 * This,
|
|
/* [in] */ IDeckLinkMemoryAllocator *theAllocator);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *CreateVideoFrame )(
|
|
IDeckLinkOutput_v9_9 * This,
|
|
/* [in] */ int width,
|
|
/* [in] */ int height,
|
|
/* [in] */ int rowBytes,
|
|
/* [in] */ BMDPixelFormat pixelFormat,
|
|
/* [in] */ BMDFrameFlags flags,
|
|
/* [out] */ IDeckLinkMutableVideoFrame **outFrame);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *CreateAncillaryData )(
|
|
IDeckLinkOutput_v9_9 * This,
|
|
/* [in] */ BMDPixelFormat pixelFormat,
|
|
/* [out] */ IDeckLinkVideoFrameAncillary **outBuffer);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *DisplayVideoFrameSync )(
|
|
IDeckLinkOutput_v9_9 * This,
|
|
/* [in] */ IDeckLinkVideoFrame *theFrame);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *ScheduleVideoFrame )(
|
|
IDeckLinkOutput_v9_9 * This,
|
|
/* [in] */ IDeckLinkVideoFrame *theFrame,
|
|
/* [in] */ BMDTimeValue displayTime,
|
|
/* [in] */ BMDTimeValue displayDuration,
|
|
/* [in] */ BMDTimeScale timeScale);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetScheduledFrameCompletionCallback )(
|
|
IDeckLinkOutput_v9_9 * This,
|
|
/* [in] */ IDeckLinkVideoOutputCallback *theCallback);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetBufferedVideoFrameCount )(
|
|
IDeckLinkOutput_v9_9 * This,
|
|
/* [out] */ unsigned int *bufferedFrameCount);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *EnableAudioOutput )(
|
|
IDeckLinkOutput_v9_9 * This,
|
|
/* [in] */ BMDAudioSampleRate sampleRate,
|
|
/* [in] */ BMDAudioSampleType sampleType,
|
|
/* [in] */ unsigned int channelCount,
|
|
/* [in] */ BMDAudioOutputStreamType streamType);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *DisableAudioOutput )(
|
|
IDeckLinkOutput_v9_9 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *WriteAudioSamplesSync )(
|
|
IDeckLinkOutput_v9_9 * This,
|
|
/* [in] */ void *buffer,
|
|
/* [in] */ unsigned int sampleFrameCount,
|
|
/* [out] */ unsigned int *sampleFramesWritten);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *BeginAudioPreroll )(
|
|
IDeckLinkOutput_v9_9 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *EndAudioPreroll )(
|
|
IDeckLinkOutput_v9_9 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *ScheduleAudioSamples )(
|
|
IDeckLinkOutput_v9_9 * This,
|
|
/* [in] */ void *buffer,
|
|
/* [in] */ unsigned int sampleFrameCount,
|
|
/* [in] */ BMDTimeValue streamTime,
|
|
/* [in] */ BMDTimeScale timeScale,
|
|
/* [out] */ unsigned int *sampleFramesWritten);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetBufferedAudioSampleFrameCount )(
|
|
IDeckLinkOutput_v9_9 * This,
|
|
/* [out] */ unsigned int *bufferedSampleFrameCount);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *FlushBufferedAudioSamples )(
|
|
IDeckLinkOutput_v9_9 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetAudioCallback )(
|
|
IDeckLinkOutput_v9_9 * This,
|
|
/* [in] */ IDeckLinkAudioOutputCallback *theCallback);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *StartScheduledPlayback )(
|
|
IDeckLinkOutput_v9_9 * This,
|
|
/* [in] */ BMDTimeValue playbackStartTime,
|
|
/* [in] */ BMDTimeScale timeScale,
|
|
/* [in] */ double playbackSpeed);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *StopScheduledPlayback )(
|
|
IDeckLinkOutput_v9_9 * This,
|
|
/* [in] */ BMDTimeValue stopPlaybackAtTime,
|
|
/* [out] */ BMDTimeValue *actualStopTime,
|
|
/* [in] */ BMDTimeScale timeScale);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *IsScheduledPlaybackRunning )(
|
|
IDeckLinkOutput_v9_9 * This,
|
|
/* [out] */ BOOL *active);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetScheduledStreamTime )(
|
|
IDeckLinkOutput_v9_9 * This,
|
|
/* [in] */ BMDTimeScale desiredTimeScale,
|
|
/* [out] */ BMDTimeValue *streamTime,
|
|
/* [out] */ double *playbackSpeed);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetReferenceStatus )(
|
|
IDeckLinkOutput_v9_9 * This,
|
|
/* [out] */ BMDReferenceStatus *referenceStatus);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetHardwareReferenceClock )(
|
|
IDeckLinkOutput_v9_9 * This,
|
|
/* [in] */ BMDTimeScale desiredTimeScale,
|
|
/* [out] */ BMDTimeValue *hardwareTime,
|
|
/* [out] */ BMDTimeValue *timeInFrame,
|
|
/* [out] */ BMDTimeValue *ticksPerFrame);
|
|
|
|
END_INTERFACE
|
|
} IDeckLinkOutput_v9_9Vtbl;
|
|
|
|
interface IDeckLinkOutput_v9_9
|
|
{
|
|
CONST_VTBL struct IDeckLinkOutput_v9_9Vtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IDeckLinkOutput_v9_9_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IDeckLinkOutput_v9_9_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IDeckLinkOutput_v9_9_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IDeckLinkOutput_v9_9_DoesSupportVideoMode(This,displayMode,pixelFormat,flags,result,resultDisplayMode) \
|
|
( (This)->lpVtbl -> DoesSupportVideoMode(This,displayMode,pixelFormat,flags,result,resultDisplayMode) )
|
|
|
|
#define IDeckLinkOutput_v9_9_GetDisplayModeIterator(This,iterator) \
|
|
( (This)->lpVtbl -> GetDisplayModeIterator(This,iterator) )
|
|
|
|
#define IDeckLinkOutput_v9_9_SetScreenPreviewCallback(This,previewCallback) \
|
|
( (This)->lpVtbl -> SetScreenPreviewCallback(This,previewCallback) )
|
|
|
|
#define IDeckLinkOutput_v9_9_EnableVideoOutput(This,displayMode,flags) \
|
|
( (This)->lpVtbl -> EnableVideoOutput(This,displayMode,flags) )
|
|
|
|
#define IDeckLinkOutput_v9_9_DisableVideoOutput(This) \
|
|
( (This)->lpVtbl -> DisableVideoOutput(This) )
|
|
|
|
#define IDeckLinkOutput_v9_9_SetVideoOutputFrameMemoryAllocator(This,theAllocator) \
|
|
( (This)->lpVtbl -> SetVideoOutputFrameMemoryAllocator(This,theAllocator) )
|
|
|
|
#define IDeckLinkOutput_v9_9_CreateVideoFrame(This,width,height,rowBytes,pixelFormat,flags,outFrame) \
|
|
( (This)->lpVtbl -> CreateVideoFrame(This,width,height,rowBytes,pixelFormat,flags,outFrame) )
|
|
|
|
#define IDeckLinkOutput_v9_9_CreateAncillaryData(This,pixelFormat,outBuffer) \
|
|
( (This)->lpVtbl -> CreateAncillaryData(This,pixelFormat,outBuffer) )
|
|
|
|
#define IDeckLinkOutput_v9_9_DisplayVideoFrameSync(This,theFrame) \
|
|
( (This)->lpVtbl -> DisplayVideoFrameSync(This,theFrame) )
|
|
|
|
#define IDeckLinkOutput_v9_9_ScheduleVideoFrame(This,theFrame,displayTime,displayDuration,timeScale) \
|
|
( (This)->lpVtbl -> ScheduleVideoFrame(This,theFrame,displayTime,displayDuration,timeScale) )
|
|
|
|
#define IDeckLinkOutput_v9_9_SetScheduledFrameCompletionCallback(This,theCallback) \
|
|
( (This)->lpVtbl -> SetScheduledFrameCompletionCallback(This,theCallback) )
|
|
|
|
#define IDeckLinkOutput_v9_9_GetBufferedVideoFrameCount(This,bufferedFrameCount) \
|
|
( (This)->lpVtbl -> GetBufferedVideoFrameCount(This,bufferedFrameCount) )
|
|
|
|
#define IDeckLinkOutput_v9_9_EnableAudioOutput(This,sampleRate,sampleType,channelCount,streamType) \
|
|
( (This)->lpVtbl -> EnableAudioOutput(This,sampleRate,sampleType,channelCount,streamType) )
|
|
|
|
#define IDeckLinkOutput_v9_9_DisableAudioOutput(This) \
|
|
( (This)->lpVtbl -> DisableAudioOutput(This) )
|
|
|
|
#define IDeckLinkOutput_v9_9_WriteAudioSamplesSync(This,buffer,sampleFrameCount,sampleFramesWritten) \
|
|
( (This)->lpVtbl -> WriteAudioSamplesSync(This,buffer,sampleFrameCount,sampleFramesWritten) )
|
|
|
|
#define IDeckLinkOutput_v9_9_BeginAudioPreroll(This) \
|
|
( (This)->lpVtbl -> BeginAudioPreroll(This) )
|
|
|
|
#define IDeckLinkOutput_v9_9_EndAudioPreroll(This) \
|
|
( (This)->lpVtbl -> EndAudioPreroll(This) )
|
|
|
|
#define IDeckLinkOutput_v9_9_ScheduleAudioSamples(This,buffer,sampleFrameCount,streamTime,timeScale,sampleFramesWritten) \
|
|
( (This)->lpVtbl -> ScheduleAudioSamples(This,buffer,sampleFrameCount,streamTime,timeScale,sampleFramesWritten) )
|
|
|
|
#define IDeckLinkOutput_v9_9_GetBufferedAudioSampleFrameCount(This,bufferedSampleFrameCount) \
|
|
( (This)->lpVtbl -> GetBufferedAudioSampleFrameCount(This,bufferedSampleFrameCount) )
|
|
|
|
#define IDeckLinkOutput_v9_9_FlushBufferedAudioSamples(This) \
|
|
( (This)->lpVtbl -> FlushBufferedAudioSamples(This) )
|
|
|
|
#define IDeckLinkOutput_v9_9_SetAudioCallback(This,theCallback) \
|
|
( (This)->lpVtbl -> SetAudioCallback(This,theCallback) )
|
|
|
|
#define IDeckLinkOutput_v9_9_StartScheduledPlayback(This,playbackStartTime,timeScale,playbackSpeed) \
|
|
( (This)->lpVtbl -> StartScheduledPlayback(This,playbackStartTime,timeScale,playbackSpeed) )
|
|
|
|
#define IDeckLinkOutput_v9_9_StopScheduledPlayback(This,stopPlaybackAtTime,actualStopTime,timeScale) \
|
|
( (This)->lpVtbl -> StopScheduledPlayback(This,stopPlaybackAtTime,actualStopTime,timeScale) )
|
|
|
|
#define IDeckLinkOutput_v9_9_IsScheduledPlaybackRunning(This,active) \
|
|
( (This)->lpVtbl -> IsScheduledPlaybackRunning(This,active) )
|
|
|
|
#define IDeckLinkOutput_v9_9_GetScheduledStreamTime(This,desiredTimeScale,streamTime,playbackSpeed) \
|
|
( (This)->lpVtbl -> GetScheduledStreamTime(This,desiredTimeScale,streamTime,playbackSpeed) )
|
|
|
|
#define IDeckLinkOutput_v9_9_GetReferenceStatus(This,referenceStatus) \
|
|
( (This)->lpVtbl -> GetReferenceStatus(This,referenceStatus) )
|
|
|
|
#define IDeckLinkOutput_v9_9_GetHardwareReferenceClock(This,desiredTimeScale,hardwareTime,timeInFrame,ticksPerFrame) \
|
|
( (This)->lpVtbl -> GetHardwareReferenceClock(This,desiredTimeScale,hardwareTime,timeInFrame,ticksPerFrame) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IDeckLinkOutput_v9_9_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IDeckLinkInput_v9_2_INTERFACE_DEFINED__
|
|
#define __IDeckLinkInput_v9_2_INTERFACE_DEFINED__
|
|
|
|
/* interface IDeckLinkInput_v9_2 */
|
|
/* [helpstring][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IDeckLinkInput_v9_2;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("6D40EF78-28B9-4E21-990D-95BB7750A04F")
|
|
IDeckLinkInput_v9_2 : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE DoesSupportVideoMode(
|
|
/* [in] */ BMDDisplayMode displayMode,
|
|
/* [in] */ BMDPixelFormat pixelFormat,
|
|
/* [in] */ BMDVideoInputFlags flags,
|
|
/* [out] */ BMDDisplayModeSupport *result,
|
|
/* [out] */ IDeckLinkDisplayMode **resultDisplayMode) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetDisplayModeIterator(
|
|
/* [out] */ IDeckLinkDisplayModeIterator **iterator) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetScreenPreviewCallback(
|
|
/* [in] */ IDeckLinkScreenPreviewCallback *previewCallback) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE EnableVideoInput(
|
|
/* [in] */ BMDDisplayMode displayMode,
|
|
/* [in] */ BMDPixelFormat pixelFormat,
|
|
/* [in] */ BMDVideoInputFlags flags) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE DisableVideoInput( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetAvailableVideoFrameCount(
|
|
/* [out] */ unsigned int *availableFrameCount) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE EnableAudioInput(
|
|
/* [in] */ BMDAudioSampleRate sampleRate,
|
|
/* [in] */ BMDAudioSampleType sampleType,
|
|
/* [in] */ unsigned int channelCount) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE DisableAudioInput( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetAvailableAudioSampleFrameCount(
|
|
/* [out] */ unsigned int *availableSampleFrameCount) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE StartStreams( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE StopStreams( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE PauseStreams( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE FlushStreams( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetCallback(
|
|
/* [in] */ IDeckLinkInputCallback *theCallback) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetHardwareReferenceClock(
|
|
/* [in] */ BMDTimeScale desiredTimeScale,
|
|
/* [out] */ BMDTimeValue *hardwareTime,
|
|
/* [out] */ BMDTimeValue *timeInFrame,
|
|
/* [out] */ BMDTimeValue *ticksPerFrame) = 0;
|
|
|
|
};
|
|
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IDeckLinkInput_v9_2Vtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IDeckLinkInput_v9_2 * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
_COM_Outptr_ void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IDeckLinkInput_v9_2 * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IDeckLinkInput_v9_2 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *DoesSupportVideoMode )(
|
|
IDeckLinkInput_v9_2 * This,
|
|
/* [in] */ BMDDisplayMode displayMode,
|
|
/* [in] */ BMDPixelFormat pixelFormat,
|
|
/* [in] */ BMDVideoInputFlags flags,
|
|
/* [out] */ BMDDisplayModeSupport *result,
|
|
/* [out] */ IDeckLinkDisplayMode **resultDisplayMode);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetDisplayModeIterator )(
|
|
IDeckLinkInput_v9_2 * This,
|
|
/* [out] */ IDeckLinkDisplayModeIterator **iterator);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetScreenPreviewCallback )(
|
|
IDeckLinkInput_v9_2 * This,
|
|
/* [in] */ IDeckLinkScreenPreviewCallback *previewCallback);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *EnableVideoInput )(
|
|
IDeckLinkInput_v9_2 * This,
|
|
/* [in] */ BMDDisplayMode displayMode,
|
|
/* [in] */ BMDPixelFormat pixelFormat,
|
|
/* [in] */ BMDVideoInputFlags flags);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *DisableVideoInput )(
|
|
IDeckLinkInput_v9_2 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetAvailableVideoFrameCount )(
|
|
IDeckLinkInput_v9_2 * This,
|
|
/* [out] */ unsigned int *availableFrameCount);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *EnableAudioInput )(
|
|
IDeckLinkInput_v9_2 * This,
|
|
/* [in] */ BMDAudioSampleRate sampleRate,
|
|
/* [in] */ BMDAudioSampleType sampleType,
|
|
/* [in] */ unsigned int channelCount);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *DisableAudioInput )(
|
|
IDeckLinkInput_v9_2 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetAvailableAudioSampleFrameCount )(
|
|
IDeckLinkInput_v9_2 * This,
|
|
/* [out] */ unsigned int *availableSampleFrameCount);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *StartStreams )(
|
|
IDeckLinkInput_v9_2 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *StopStreams )(
|
|
IDeckLinkInput_v9_2 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *PauseStreams )(
|
|
IDeckLinkInput_v9_2 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *FlushStreams )(
|
|
IDeckLinkInput_v9_2 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetCallback )(
|
|
IDeckLinkInput_v9_2 * This,
|
|
/* [in] */ IDeckLinkInputCallback *theCallback);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetHardwareReferenceClock )(
|
|
IDeckLinkInput_v9_2 * This,
|
|
/* [in] */ BMDTimeScale desiredTimeScale,
|
|
/* [out] */ BMDTimeValue *hardwareTime,
|
|
/* [out] */ BMDTimeValue *timeInFrame,
|
|
/* [out] */ BMDTimeValue *ticksPerFrame);
|
|
|
|
END_INTERFACE
|
|
} IDeckLinkInput_v9_2Vtbl;
|
|
|
|
interface IDeckLinkInput_v9_2
|
|
{
|
|
CONST_VTBL struct IDeckLinkInput_v9_2Vtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IDeckLinkInput_v9_2_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IDeckLinkInput_v9_2_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IDeckLinkInput_v9_2_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IDeckLinkInput_v9_2_DoesSupportVideoMode(This,displayMode,pixelFormat,flags,result,resultDisplayMode) \
|
|
( (This)->lpVtbl -> DoesSupportVideoMode(This,displayMode,pixelFormat,flags,result,resultDisplayMode) )
|
|
|
|
#define IDeckLinkInput_v9_2_GetDisplayModeIterator(This,iterator) \
|
|
( (This)->lpVtbl -> GetDisplayModeIterator(This,iterator) )
|
|
|
|
#define IDeckLinkInput_v9_2_SetScreenPreviewCallback(This,previewCallback) \
|
|
( (This)->lpVtbl -> SetScreenPreviewCallback(This,previewCallback) )
|
|
|
|
#define IDeckLinkInput_v9_2_EnableVideoInput(This,displayMode,pixelFormat,flags) \
|
|
( (This)->lpVtbl -> EnableVideoInput(This,displayMode,pixelFormat,flags) )
|
|
|
|
#define IDeckLinkInput_v9_2_DisableVideoInput(This) \
|
|
( (This)->lpVtbl -> DisableVideoInput(This) )
|
|
|
|
#define IDeckLinkInput_v9_2_GetAvailableVideoFrameCount(This,availableFrameCount) \
|
|
( (This)->lpVtbl -> GetAvailableVideoFrameCount(This,availableFrameCount) )
|
|
|
|
#define IDeckLinkInput_v9_2_EnableAudioInput(This,sampleRate,sampleType,channelCount) \
|
|
( (This)->lpVtbl -> EnableAudioInput(This,sampleRate,sampleType,channelCount) )
|
|
|
|
#define IDeckLinkInput_v9_2_DisableAudioInput(This) \
|
|
( (This)->lpVtbl -> DisableAudioInput(This) )
|
|
|
|
#define IDeckLinkInput_v9_2_GetAvailableAudioSampleFrameCount(This,availableSampleFrameCount) \
|
|
( (This)->lpVtbl -> GetAvailableAudioSampleFrameCount(This,availableSampleFrameCount) )
|
|
|
|
#define IDeckLinkInput_v9_2_StartStreams(This) \
|
|
( (This)->lpVtbl -> StartStreams(This) )
|
|
|
|
#define IDeckLinkInput_v9_2_StopStreams(This) \
|
|
( (This)->lpVtbl -> StopStreams(This) )
|
|
|
|
#define IDeckLinkInput_v9_2_PauseStreams(This) \
|
|
( (This)->lpVtbl -> PauseStreams(This) )
|
|
|
|
#define IDeckLinkInput_v9_2_FlushStreams(This) \
|
|
( (This)->lpVtbl -> FlushStreams(This) )
|
|
|
|
#define IDeckLinkInput_v9_2_SetCallback(This,theCallback) \
|
|
( (This)->lpVtbl -> SetCallback(This,theCallback) )
|
|
|
|
#define IDeckLinkInput_v9_2_GetHardwareReferenceClock(This,desiredTimeScale,hardwareTime,timeInFrame,ticksPerFrame) \
|
|
( (This)->lpVtbl -> GetHardwareReferenceClock(This,desiredTimeScale,hardwareTime,timeInFrame,ticksPerFrame) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IDeckLinkInput_v9_2_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IDeckLinkDeckControlStatusCallback_v8_1_INTERFACE_DEFINED__
|
|
#define __IDeckLinkDeckControlStatusCallback_v8_1_INTERFACE_DEFINED__
|
|
|
|
/* interface IDeckLinkDeckControlStatusCallback_v8_1 */
|
|
/* [helpstring][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IDeckLinkDeckControlStatusCallback_v8_1;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("E5F693C1-4283-4716-B18F-C1431521955B")
|
|
IDeckLinkDeckControlStatusCallback_v8_1 : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE TimecodeUpdate(
|
|
/* [in] */ BMDTimecodeBCD currentTimecode) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE VTRControlStateChanged(
|
|
/* [in] */ BMDDeckControlVTRControlState_v8_1 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 IDeckLinkDeckControlStatusCallback_v8_1Vtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IDeckLinkDeckControlStatusCallback_v8_1 * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
_COM_Outptr_ void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IDeckLinkDeckControlStatusCallback_v8_1 * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IDeckLinkDeckControlStatusCallback_v8_1 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *TimecodeUpdate )(
|
|
IDeckLinkDeckControlStatusCallback_v8_1 * This,
|
|
/* [in] */ BMDTimecodeBCD currentTimecode);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *VTRControlStateChanged )(
|
|
IDeckLinkDeckControlStatusCallback_v8_1 * This,
|
|
/* [in] */ BMDDeckControlVTRControlState_v8_1 newState,
|
|
/* [in] */ BMDDeckControlError error);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *DeckControlEventReceived )(
|
|
IDeckLinkDeckControlStatusCallback_v8_1 * This,
|
|
/* [in] */ BMDDeckControlEvent event,
|
|
/* [in] */ BMDDeckControlError error);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *DeckControlStatusChanged )(
|
|
IDeckLinkDeckControlStatusCallback_v8_1 * This,
|
|
/* [in] */ BMDDeckControlStatusFlags flags,
|
|
/* [in] */ unsigned int mask);
|
|
|
|
END_INTERFACE
|
|
} IDeckLinkDeckControlStatusCallback_v8_1Vtbl;
|
|
|
|
interface IDeckLinkDeckControlStatusCallback_v8_1
|
|
{
|
|
CONST_VTBL struct IDeckLinkDeckControlStatusCallback_v8_1Vtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IDeckLinkDeckControlStatusCallback_v8_1_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IDeckLinkDeckControlStatusCallback_v8_1_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IDeckLinkDeckControlStatusCallback_v8_1_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IDeckLinkDeckControlStatusCallback_v8_1_TimecodeUpdate(This,currentTimecode) \
|
|
( (This)->lpVtbl -> TimecodeUpdate(This,currentTimecode) )
|
|
|
|
#define IDeckLinkDeckControlStatusCallback_v8_1_VTRControlStateChanged(This,newState,error) \
|
|
( (This)->lpVtbl -> VTRControlStateChanged(This,newState,error) )
|
|
|
|
#define IDeckLinkDeckControlStatusCallback_v8_1_DeckControlEventReceived(This,event,error) \
|
|
( (This)->lpVtbl -> DeckControlEventReceived(This,event,error) )
|
|
|
|
#define IDeckLinkDeckControlStatusCallback_v8_1_DeckControlStatusChanged(This,flags,mask) \
|
|
( (This)->lpVtbl -> DeckControlStatusChanged(This,flags,mask) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IDeckLinkDeckControlStatusCallback_v8_1_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IDeckLinkDeckControl_v8_1_INTERFACE_DEFINED__
|
|
#define __IDeckLinkDeckControl_v8_1_INTERFACE_DEFINED__
|
|
|
|
/* interface IDeckLinkDeckControl_v8_1 */
|
|
/* [helpstring][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IDeckLinkDeckControl_v8_1;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("522A9E39-0F3C-4742-94EE-D80DE335DA1D")
|
|
IDeckLinkDeckControl_v8_1 : 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_v8_1 *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_v8_1 *callback) = 0;
|
|
|
|
};
|
|
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IDeckLinkDeckControl_v8_1Vtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IDeckLinkDeckControl_v8_1 * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
_COM_Outptr_ void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IDeckLinkDeckControl_v8_1 * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IDeckLinkDeckControl_v8_1 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *Open )(
|
|
IDeckLinkDeckControl_v8_1 * This,
|
|
/* [in] */ BMDTimeScale timeScale,
|
|
/* [in] */ BMDTimeValue timeValue,
|
|
/* [in] */ BOOL timecodeIsDropFrame,
|
|
/* [out] */ BMDDeckControlError *error);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *Close )(
|
|
IDeckLinkDeckControl_v8_1 * This,
|
|
/* [in] */ BOOL standbyOn);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetCurrentState )(
|
|
IDeckLinkDeckControl_v8_1 * This,
|
|
/* [out] */ BMDDeckControlMode *mode,
|
|
/* [out] */ BMDDeckControlVTRControlState_v8_1 *vtrControlState,
|
|
/* [out] */ BMDDeckControlStatusFlags *flags);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetStandby )(
|
|
IDeckLinkDeckControl_v8_1 * This,
|
|
/* [in] */ BOOL standbyOn);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SendCommand )(
|
|
IDeckLinkDeckControl_v8_1 * 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_v8_1 * This,
|
|
/* [out] */ BMDDeckControlError *error);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *Stop )(
|
|
IDeckLinkDeckControl_v8_1 * This,
|
|
/* [out] */ BMDDeckControlError *error);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *TogglePlayStop )(
|
|
IDeckLinkDeckControl_v8_1 * This,
|
|
/* [out] */ BMDDeckControlError *error);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *Eject )(
|
|
IDeckLinkDeckControl_v8_1 * This,
|
|
/* [out] */ BMDDeckControlError *error);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GoToTimecode )(
|
|
IDeckLinkDeckControl_v8_1 * This,
|
|
/* [in] */ BMDTimecodeBCD timecode,
|
|
/* [out] */ BMDDeckControlError *error);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *FastForward )(
|
|
IDeckLinkDeckControl_v8_1 * This,
|
|
/* [in] */ BOOL viewTape,
|
|
/* [out] */ BMDDeckControlError *error);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *Rewind )(
|
|
IDeckLinkDeckControl_v8_1 * This,
|
|
/* [in] */ BOOL viewTape,
|
|
/* [out] */ BMDDeckControlError *error);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *StepForward )(
|
|
IDeckLinkDeckControl_v8_1 * This,
|
|
/* [out] */ BMDDeckControlError *error);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *StepBack )(
|
|
IDeckLinkDeckControl_v8_1 * This,
|
|
/* [out] */ BMDDeckControlError *error);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *Jog )(
|
|
IDeckLinkDeckControl_v8_1 * This,
|
|
/* [in] */ double rate,
|
|
/* [out] */ BMDDeckControlError *error);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *Shuttle )(
|
|
IDeckLinkDeckControl_v8_1 * This,
|
|
/* [in] */ double rate,
|
|
/* [out] */ BMDDeckControlError *error);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetTimecodeString )(
|
|
IDeckLinkDeckControl_v8_1 * This,
|
|
/* [out] */ BSTR *currentTimeCode,
|
|
/* [out] */ BMDDeckControlError *error);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetTimecode )(
|
|
IDeckLinkDeckControl_v8_1 * This,
|
|
/* [out] */ IDeckLinkTimecode **currentTimecode,
|
|
/* [out] */ BMDDeckControlError *error);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetTimecodeBCD )(
|
|
IDeckLinkDeckControl_v8_1 * This,
|
|
/* [out] */ BMDTimecodeBCD *currentTimecode,
|
|
/* [out] */ BMDDeckControlError *error);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetPreroll )(
|
|
IDeckLinkDeckControl_v8_1 * This,
|
|
/* [in] */ unsigned int prerollSeconds);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetPreroll )(
|
|
IDeckLinkDeckControl_v8_1 * This,
|
|
/* [out] */ unsigned int *prerollSeconds);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetExportOffset )(
|
|
IDeckLinkDeckControl_v8_1 * This,
|
|
/* [in] */ int exportOffsetFields);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetExportOffset )(
|
|
IDeckLinkDeckControl_v8_1 * This,
|
|
/* [out] */ int *exportOffsetFields);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetManualExportOffset )(
|
|
IDeckLinkDeckControl_v8_1 * This,
|
|
/* [out] */ int *deckManualExportOffsetFields);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetCaptureOffset )(
|
|
IDeckLinkDeckControl_v8_1 * This,
|
|
/* [in] */ int captureOffsetFields);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetCaptureOffset )(
|
|
IDeckLinkDeckControl_v8_1 * This,
|
|
/* [out] */ int *captureOffsetFields);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *StartExport )(
|
|
IDeckLinkDeckControl_v8_1 * This,
|
|
/* [in] */ BMDTimecodeBCD inTimecode,
|
|
/* [in] */ BMDTimecodeBCD outTimecode,
|
|
/* [in] */ BMDDeckControlExportModeOpsFlags exportModeOps,
|
|
/* [out] */ BMDDeckControlError *error);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *StartCapture )(
|
|
IDeckLinkDeckControl_v8_1 * This,
|
|
/* [in] */ BOOL useVITC,
|
|
/* [in] */ BMDTimecodeBCD inTimecode,
|
|
/* [in] */ BMDTimecodeBCD outTimecode,
|
|
/* [out] */ BMDDeckControlError *error);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetDeviceID )(
|
|
IDeckLinkDeckControl_v8_1 * This,
|
|
/* [out] */ unsigned short *deviceId,
|
|
/* [out] */ BMDDeckControlError *error);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *Abort )(
|
|
IDeckLinkDeckControl_v8_1 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *CrashRecordStart )(
|
|
IDeckLinkDeckControl_v8_1 * This,
|
|
/* [out] */ BMDDeckControlError *error);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *CrashRecordStop )(
|
|
IDeckLinkDeckControl_v8_1 * This,
|
|
/* [out] */ BMDDeckControlError *error);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetCallback )(
|
|
IDeckLinkDeckControl_v8_1 * This,
|
|
/* [in] */ IDeckLinkDeckControlStatusCallback_v8_1 *callback);
|
|
|
|
END_INTERFACE
|
|
} IDeckLinkDeckControl_v8_1Vtbl;
|
|
|
|
interface IDeckLinkDeckControl_v8_1
|
|
{
|
|
CONST_VTBL struct IDeckLinkDeckControl_v8_1Vtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IDeckLinkDeckControl_v8_1_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IDeckLinkDeckControl_v8_1_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IDeckLinkDeckControl_v8_1_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IDeckLinkDeckControl_v8_1_Open(This,timeScale,timeValue,timecodeIsDropFrame,error) \
|
|
( (This)->lpVtbl -> Open(This,timeScale,timeValue,timecodeIsDropFrame,error) )
|
|
|
|
#define IDeckLinkDeckControl_v8_1_Close(This,standbyOn) \
|
|
( (This)->lpVtbl -> Close(This,standbyOn) )
|
|
|
|
#define IDeckLinkDeckControl_v8_1_GetCurrentState(This,mode,vtrControlState,flags) \
|
|
( (This)->lpVtbl -> GetCurrentState(This,mode,vtrControlState,flags) )
|
|
|
|
#define IDeckLinkDeckControl_v8_1_SetStandby(This,standbyOn) \
|
|
( (This)->lpVtbl -> SetStandby(This,standbyOn) )
|
|
|
|
#define IDeckLinkDeckControl_v8_1_SendCommand(This,inBuffer,inBufferSize,outBuffer,outDataSize,outBufferSize,error) \
|
|
( (This)->lpVtbl -> SendCommand(This,inBuffer,inBufferSize,outBuffer,outDataSize,outBufferSize,error) )
|
|
|
|
#define IDeckLinkDeckControl_v8_1_Play(This,error) \
|
|
( (This)->lpVtbl -> Play(This,error) )
|
|
|
|
#define IDeckLinkDeckControl_v8_1_Stop(This,error) \
|
|
( (This)->lpVtbl -> Stop(This,error) )
|
|
|
|
#define IDeckLinkDeckControl_v8_1_TogglePlayStop(This,error) \
|
|
( (This)->lpVtbl -> TogglePlayStop(This,error) )
|
|
|
|
#define IDeckLinkDeckControl_v8_1_Eject(This,error) \
|
|
( (This)->lpVtbl -> Eject(This,error) )
|
|
|
|
#define IDeckLinkDeckControl_v8_1_GoToTimecode(This,timecode,error) \
|
|
( (This)->lpVtbl -> GoToTimecode(This,timecode,error) )
|
|
|
|
#define IDeckLinkDeckControl_v8_1_FastForward(This,viewTape,error) \
|
|
( (This)->lpVtbl -> FastForward(This,viewTape,error) )
|
|
|
|
#define IDeckLinkDeckControl_v8_1_Rewind(This,viewTape,error) \
|
|
( (This)->lpVtbl -> Rewind(This,viewTape,error) )
|
|
|
|
#define IDeckLinkDeckControl_v8_1_StepForward(This,error) \
|
|
( (This)->lpVtbl -> StepForward(This,error) )
|
|
|
|
#define IDeckLinkDeckControl_v8_1_StepBack(This,error) \
|
|
( (This)->lpVtbl -> StepBack(This,error) )
|
|
|
|
#define IDeckLinkDeckControl_v8_1_Jog(This,rate,error) \
|
|
( (This)->lpVtbl -> Jog(This,rate,error) )
|
|
|
|
#define IDeckLinkDeckControl_v8_1_Shuttle(This,rate,error) \
|
|
( (This)->lpVtbl -> Shuttle(This,rate,error) )
|
|
|
|
#define IDeckLinkDeckControl_v8_1_GetTimecodeString(This,currentTimeCode,error) \
|
|
( (This)->lpVtbl -> GetTimecodeString(This,currentTimeCode,error) )
|
|
|
|
#define IDeckLinkDeckControl_v8_1_GetTimecode(This,currentTimecode,error) \
|
|
( (This)->lpVtbl -> GetTimecode(This,currentTimecode,error) )
|
|
|
|
#define IDeckLinkDeckControl_v8_1_GetTimecodeBCD(This,currentTimecode,error) \
|
|
( (This)->lpVtbl -> GetTimecodeBCD(This,currentTimecode,error) )
|
|
|
|
#define IDeckLinkDeckControl_v8_1_SetPreroll(This,prerollSeconds) \
|
|
( (This)->lpVtbl -> SetPreroll(This,prerollSeconds) )
|
|
|
|
#define IDeckLinkDeckControl_v8_1_GetPreroll(This,prerollSeconds) \
|
|
( (This)->lpVtbl -> GetPreroll(This,prerollSeconds) )
|
|
|
|
#define IDeckLinkDeckControl_v8_1_SetExportOffset(This,exportOffsetFields) \
|
|
( (This)->lpVtbl -> SetExportOffset(This,exportOffsetFields) )
|
|
|
|
#define IDeckLinkDeckControl_v8_1_GetExportOffset(This,exportOffsetFields) \
|
|
( (This)->lpVtbl -> GetExportOffset(This,exportOffsetFields) )
|
|
|
|
#define IDeckLinkDeckControl_v8_1_GetManualExportOffset(This,deckManualExportOffsetFields) \
|
|
( (This)->lpVtbl -> GetManualExportOffset(This,deckManualExportOffsetFields) )
|
|
|
|
#define IDeckLinkDeckControl_v8_1_SetCaptureOffset(This,captureOffsetFields) \
|
|
( (This)->lpVtbl -> SetCaptureOffset(This,captureOffsetFields) )
|
|
|
|
#define IDeckLinkDeckControl_v8_1_GetCaptureOffset(This,captureOffsetFields) \
|
|
( (This)->lpVtbl -> GetCaptureOffset(This,captureOffsetFields) )
|
|
|
|
#define IDeckLinkDeckControl_v8_1_StartExport(This,inTimecode,outTimecode,exportModeOps,error) \
|
|
( (This)->lpVtbl -> StartExport(This,inTimecode,outTimecode,exportModeOps,error) )
|
|
|
|
#define IDeckLinkDeckControl_v8_1_StartCapture(This,useVITC,inTimecode,outTimecode,error) \
|
|
( (This)->lpVtbl -> StartCapture(This,useVITC,inTimecode,outTimecode,error) )
|
|
|
|
#define IDeckLinkDeckControl_v8_1_GetDeviceID(This,deviceId,error) \
|
|
( (This)->lpVtbl -> GetDeviceID(This,deviceId,error) )
|
|
|
|
#define IDeckLinkDeckControl_v8_1_Abort(This) \
|
|
( (This)->lpVtbl -> Abort(This) )
|
|
|
|
#define IDeckLinkDeckControl_v8_1_CrashRecordStart(This,error) \
|
|
( (This)->lpVtbl -> CrashRecordStart(This,error) )
|
|
|
|
#define IDeckLinkDeckControl_v8_1_CrashRecordStop(This,error) \
|
|
( (This)->lpVtbl -> CrashRecordStop(This,error) )
|
|
|
|
#define IDeckLinkDeckControl_v8_1_SetCallback(This,callback) \
|
|
( (This)->lpVtbl -> SetCallback(This,callback) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IDeckLinkDeckControl_v8_1_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IDeckLink_v8_0_INTERFACE_DEFINED__
|
|
#define __IDeckLink_v8_0_INTERFACE_DEFINED__
|
|
|
|
/* interface IDeckLink_v8_0 */
|
|
/* [helpstring][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IDeckLink_v8_0;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("62BFF75D-6569-4E55-8D4D-66AA03829ABC")
|
|
IDeckLink_v8_0 : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE GetModelName(
|
|
/* [out] */ BSTR *modelName) = 0;
|
|
|
|
};
|
|
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IDeckLink_v8_0Vtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IDeckLink_v8_0 * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
_COM_Outptr_ void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IDeckLink_v8_0 * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IDeckLink_v8_0 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetModelName )(
|
|
IDeckLink_v8_0 * This,
|
|
/* [out] */ BSTR *modelName);
|
|
|
|
END_INTERFACE
|
|
} IDeckLink_v8_0Vtbl;
|
|
|
|
interface IDeckLink_v8_0
|
|
{
|
|
CONST_VTBL struct IDeckLink_v8_0Vtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IDeckLink_v8_0_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IDeckLink_v8_0_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IDeckLink_v8_0_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IDeckLink_v8_0_GetModelName(This,modelName) \
|
|
( (This)->lpVtbl -> GetModelName(This,modelName) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IDeckLink_v8_0_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IDeckLinkIterator_v8_0_INTERFACE_DEFINED__
|
|
#define __IDeckLinkIterator_v8_0_INTERFACE_DEFINED__
|
|
|
|
/* interface IDeckLinkIterator_v8_0 */
|
|
/* [helpstring][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IDeckLinkIterator_v8_0;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("74E936FC-CC28-4A67-81A0-1E94E52D4E69")
|
|
IDeckLinkIterator_v8_0 : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE Next(
|
|
/* [out] */ IDeckLink_v8_0 **deckLinkInstance) = 0;
|
|
|
|
};
|
|
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IDeckLinkIterator_v8_0Vtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IDeckLinkIterator_v8_0 * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
_COM_Outptr_ void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IDeckLinkIterator_v8_0 * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IDeckLinkIterator_v8_0 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *Next )(
|
|
IDeckLinkIterator_v8_0 * This,
|
|
/* [out] */ IDeckLink_v8_0 **deckLinkInstance);
|
|
|
|
END_INTERFACE
|
|
} IDeckLinkIterator_v8_0Vtbl;
|
|
|
|
interface IDeckLinkIterator_v8_0
|
|
{
|
|
CONST_VTBL struct IDeckLinkIterator_v8_0Vtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IDeckLinkIterator_v8_0_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IDeckLinkIterator_v8_0_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IDeckLinkIterator_v8_0_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IDeckLinkIterator_v8_0_Next(This,deckLinkInstance) \
|
|
( (This)->lpVtbl -> Next(This,deckLinkInstance) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IDeckLinkIterator_v8_0_INTERFACE_DEFINED__ */
|
|
|
|
|
|
EXTERN_C const CLSID CLSID_CDeckLinkIterator_v8_0;
|
|
|
|
#ifdef __cplusplus
|
|
|
|
class DECLSPEC_UUID("D9EDA3B3-2887-41FA-B724-017CF1EB1D37")
|
|
CDeckLinkIterator_v8_0;
|
|
#endif
|
|
|
|
#ifndef __IDeckLinkDeckControl_v7_9_INTERFACE_DEFINED__
|
|
#define __IDeckLinkDeckControl_v7_9_INTERFACE_DEFINED__
|
|
|
|
/* interface IDeckLinkDeckControl_v7_9 */
|
|
/* [helpstring][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IDeckLinkDeckControl_v7_9;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("A4D81043-0619-42B7-8ED6-602D29041DF7")
|
|
IDeckLinkDeckControl_v7_9 : 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 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 IDeckLinkDeckControl_v7_9Vtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IDeckLinkDeckControl_v7_9 * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
_COM_Outptr_ void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IDeckLinkDeckControl_v7_9 * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IDeckLinkDeckControl_v7_9 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *Open )(
|
|
IDeckLinkDeckControl_v7_9 * This,
|
|
/* [in] */ BMDTimeScale timeScale,
|
|
/* [in] */ BMDTimeValue timeValue,
|
|
/* [in] */ BOOL timecodeIsDropFrame,
|
|
/* [out] */ BMDDeckControlError *error);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *Close )(
|
|
IDeckLinkDeckControl_v7_9 * This,
|
|
/* [in] */ BOOL standbyOn);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetCurrentState )(
|
|
IDeckLinkDeckControl_v7_9 * This,
|
|
/* [out] */ BMDDeckControlMode *mode,
|
|
/* [out] */ BMDDeckControlVTRControlState *vtrControlState,
|
|
/* [out] */ BMDDeckControlStatusFlags *flags);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetStandby )(
|
|
IDeckLinkDeckControl_v7_9 * This,
|
|
/* [in] */ BOOL standbyOn);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *Play )(
|
|
IDeckLinkDeckControl_v7_9 * This,
|
|
/* [out] */ BMDDeckControlError *error);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *Stop )(
|
|
IDeckLinkDeckControl_v7_9 * This,
|
|
/* [out] */ BMDDeckControlError *error);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *TogglePlayStop )(
|
|
IDeckLinkDeckControl_v7_9 * This,
|
|
/* [out] */ BMDDeckControlError *error);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *Eject )(
|
|
IDeckLinkDeckControl_v7_9 * This,
|
|
/* [out] */ BMDDeckControlError *error);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GoToTimecode )(
|
|
IDeckLinkDeckControl_v7_9 * This,
|
|
/* [in] */ BMDTimecodeBCD timecode,
|
|
/* [out] */ BMDDeckControlError *error);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *FastForward )(
|
|
IDeckLinkDeckControl_v7_9 * This,
|
|
/* [in] */ BOOL viewTape,
|
|
/* [out] */ BMDDeckControlError *error);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *Rewind )(
|
|
IDeckLinkDeckControl_v7_9 * This,
|
|
/* [in] */ BOOL viewTape,
|
|
/* [out] */ BMDDeckControlError *error);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *StepForward )(
|
|
IDeckLinkDeckControl_v7_9 * This,
|
|
/* [out] */ BMDDeckControlError *error);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *StepBack )(
|
|
IDeckLinkDeckControl_v7_9 * This,
|
|
/* [out] */ BMDDeckControlError *error);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *Jog )(
|
|
IDeckLinkDeckControl_v7_9 * This,
|
|
/* [in] */ double rate,
|
|
/* [out] */ BMDDeckControlError *error);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *Shuttle )(
|
|
IDeckLinkDeckControl_v7_9 * This,
|
|
/* [in] */ double rate,
|
|
/* [out] */ BMDDeckControlError *error);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetTimecodeString )(
|
|
IDeckLinkDeckControl_v7_9 * This,
|
|
/* [out] */ BSTR *currentTimeCode,
|
|
/* [out] */ BMDDeckControlError *error);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetTimecode )(
|
|
IDeckLinkDeckControl_v7_9 * This,
|
|
/* [out] */ IDeckLinkTimecode **currentTimecode,
|
|
/* [out] */ BMDDeckControlError *error);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetTimecodeBCD )(
|
|
IDeckLinkDeckControl_v7_9 * This,
|
|
/* [out] */ BMDTimecodeBCD *currentTimecode,
|
|
/* [out] */ BMDDeckControlError *error);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetPreroll )(
|
|
IDeckLinkDeckControl_v7_9 * This,
|
|
/* [in] */ unsigned int prerollSeconds);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetPreroll )(
|
|
IDeckLinkDeckControl_v7_9 * This,
|
|
/* [out] */ unsigned int *prerollSeconds);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetExportOffset )(
|
|
IDeckLinkDeckControl_v7_9 * This,
|
|
/* [in] */ int exportOffsetFields);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetExportOffset )(
|
|
IDeckLinkDeckControl_v7_9 * This,
|
|
/* [out] */ int *exportOffsetFields);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetManualExportOffset )(
|
|
IDeckLinkDeckControl_v7_9 * This,
|
|
/* [out] */ int *deckManualExportOffsetFields);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetCaptureOffset )(
|
|
IDeckLinkDeckControl_v7_9 * This,
|
|
/* [in] */ int captureOffsetFields);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetCaptureOffset )(
|
|
IDeckLinkDeckControl_v7_9 * This,
|
|
/* [out] */ int *captureOffsetFields);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *StartExport )(
|
|
IDeckLinkDeckControl_v7_9 * This,
|
|
/* [in] */ BMDTimecodeBCD inTimecode,
|
|
/* [in] */ BMDTimecodeBCD outTimecode,
|
|
/* [in] */ BMDDeckControlExportModeOpsFlags exportModeOps,
|
|
/* [out] */ BMDDeckControlError *error);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *StartCapture )(
|
|
IDeckLinkDeckControl_v7_9 * This,
|
|
/* [in] */ BOOL useVITC,
|
|
/* [in] */ BMDTimecodeBCD inTimecode,
|
|
/* [in] */ BMDTimecodeBCD outTimecode,
|
|
/* [out] */ BMDDeckControlError *error);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetDeviceID )(
|
|
IDeckLinkDeckControl_v7_9 * This,
|
|
/* [out] */ unsigned short *deviceId,
|
|
/* [out] */ BMDDeckControlError *error);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *Abort )(
|
|
IDeckLinkDeckControl_v7_9 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *CrashRecordStart )(
|
|
IDeckLinkDeckControl_v7_9 * This,
|
|
/* [out] */ BMDDeckControlError *error);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *CrashRecordStop )(
|
|
IDeckLinkDeckControl_v7_9 * This,
|
|
/* [out] */ BMDDeckControlError *error);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetCallback )(
|
|
IDeckLinkDeckControl_v7_9 * This,
|
|
/* [in] */ IDeckLinkDeckControlStatusCallback *callback);
|
|
|
|
END_INTERFACE
|
|
} IDeckLinkDeckControl_v7_9Vtbl;
|
|
|
|
interface IDeckLinkDeckControl_v7_9
|
|
{
|
|
CONST_VTBL struct IDeckLinkDeckControl_v7_9Vtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IDeckLinkDeckControl_v7_9_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IDeckLinkDeckControl_v7_9_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IDeckLinkDeckControl_v7_9_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IDeckLinkDeckControl_v7_9_Open(This,timeScale,timeValue,timecodeIsDropFrame,error) \
|
|
( (This)->lpVtbl -> Open(This,timeScale,timeValue,timecodeIsDropFrame,error) )
|
|
|
|
#define IDeckLinkDeckControl_v7_9_Close(This,standbyOn) \
|
|
( (This)->lpVtbl -> Close(This,standbyOn) )
|
|
|
|
#define IDeckLinkDeckControl_v7_9_GetCurrentState(This,mode,vtrControlState,flags) \
|
|
( (This)->lpVtbl -> GetCurrentState(This,mode,vtrControlState,flags) )
|
|
|
|
#define IDeckLinkDeckControl_v7_9_SetStandby(This,standbyOn) \
|
|
( (This)->lpVtbl -> SetStandby(This,standbyOn) )
|
|
|
|
#define IDeckLinkDeckControl_v7_9_Play(This,error) \
|
|
( (This)->lpVtbl -> Play(This,error) )
|
|
|
|
#define IDeckLinkDeckControl_v7_9_Stop(This,error) \
|
|
( (This)->lpVtbl -> Stop(This,error) )
|
|
|
|
#define IDeckLinkDeckControl_v7_9_TogglePlayStop(This,error) \
|
|
( (This)->lpVtbl -> TogglePlayStop(This,error) )
|
|
|
|
#define IDeckLinkDeckControl_v7_9_Eject(This,error) \
|
|
( (This)->lpVtbl -> Eject(This,error) )
|
|
|
|
#define IDeckLinkDeckControl_v7_9_GoToTimecode(This,timecode,error) \
|
|
( (This)->lpVtbl -> GoToTimecode(This,timecode,error) )
|
|
|
|
#define IDeckLinkDeckControl_v7_9_FastForward(This,viewTape,error) \
|
|
( (This)->lpVtbl -> FastForward(This,viewTape,error) )
|
|
|
|
#define IDeckLinkDeckControl_v7_9_Rewind(This,viewTape,error) \
|
|
( (This)->lpVtbl -> Rewind(This,viewTape,error) )
|
|
|
|
#define IDeckLinkDeckControl_v7_9_StepForward(This,error) \
|
|
( (This)->lpVtbl -> StepForward(This,error) )
|
|
|
|
#define IDeckLinkDeckControl_v7_9_StepBack(This,error) \
|
|
( (This)->lpVtbl -> StepBack(This,error) )
|
|
|
|
#define IDeckLinkDeckControl_v7_9_Jog(This,rate,error) \
|
|
( (This)->lpVtbl -> Jog(This,rate,error) )
|
|
|
|
#define IDeckLinkDeckControl_v7_9_Shuttle(This,rate,error) \
|
|
( (This)->lpVtbl -> Shuttle(This,rate,error) )
|
|
|
|
#define IDeckLinkDeckControl_v7_9_GetTimecodeString(This,currentTimeCode,error) \
|
|
( (This)->lpVtbl -> GetTimecodeString(This,currentTimeCode,error) )
|
|
|
|
#define IDeckLinkDeckControl_v7_9_GetTimecode(This,currentTimecode,error) \
|
|
( (This)->lpVtbl -> GetTimecode(This,currentTimecode,error) )
|
|
|
|
#define IDeckLinkDeckControl_v7_9_GetTimecodeBCD(This,currentTimecode,error) \
|
|
( (This)->lpVtbl -> GetTimecodeBCD(This,currentTimecode,error) )
|
|
|
|
#define IDeckLinkDeckControl_v7_9_SetPreroll(This,prerollSeconds) \
|
|
( (This)->lpVtbl -> SetPreroll(This,prerollSeconds) )
|
|
|
|
#define IDeckLinkDeckControl_v7_9_GetPreroll(This,prerollSeconds) \
|
|
( (This)->lpVtbl -> GetPreroll(This,prerollSeconds) )
|
|
|
|
#define IDeckLinkDeckControl_v7_9_SetExportOffset(This,exportOffsetFields) \
|
|
( (This)->lpVtbl -> SetExportOffset(This,exportOffsetFields) )
|
|
|
|
#define IDeckLinkDeckControl_v7_9_GetExportOffset(This,exportOffsetFields) \
|
|
( (This)->lpVtbl -> GetExportOffset(This,exportOffsetFields) )
|
|
|
|
#define IDeckLinkDeckControl_v7_9_GetManualExportOffset(This,deckManualExportOffsetFields) \
|
|
( (This)->lpVtbl -> GetManualExportOffset(This,deckManualExportOffsetFields) )
|
|
|
|
#define IDeckLinkDeckControl_v7_9_SetCaptureOffset(This,captureOffsetFields) \
|
|
( (This)->lpVtbl -> SetCaptureOffset(This,captureOffsetFields) )
|
|
|
|
#define IDeckLinkDeckControl_v7_9_GetCaptureOffset(This,captureOffsetFields) \
|
|
( (This)->lpVtbl -> GetCaptureOffset(This,captureOffsetFields) )
|
|
|
|
#define IDeckLinkDeckControl_v7_9_StartExport(This,inTimecode,outTimecode,exportModeOps,error) \
|
|
( (This)->lpVtbl -> StartExport(This,inTimecode,outTimecode,exportModeOps,error) )
|
|
|
|
#define IDeckLinkDeckControl_v7_9_StartCapture(This,useVITC,inTimecode,outTimecode,error) \
|
|
( (This)->lpVtbl -> StartCapture(This,useVITC,inTimecode,outTimecode,error) )
|
|
|
|
#define IDeckLinkDeckControl_v7_9_GetDeviceID(This,deviceId,error) \
|
|
( (This)->lpVtbl -> GetDeviceID(This,deviceId,error) )
|
|
|
|
#define IDeckLinkDeckControl_v7_9_Abort(This) \
|
|
( (This)->lpVtbl -> Abort(This) )
|
|
|
|
#define IDeckLinkDeckControl_v7_9_CrashRecordStart(This,error) \
|
|
( (This)->lpVtbl -> CrashRecordStart(This,error) )
|
|
|
|
#define IDeckLinkDeckControl_v7_9_CrashRecordStop(This,error) \
|
|
( (This)->lpVtbl -> CrashRecordStop(This,error) )
|
|
|
|
#define IDeckLinkDeckControl_v7_9_SetCallback(This,callback) \
|
|
( (This)->lpVtbl -> SetCallback(This,callback) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IDeckLinkDeckControl_v7_9_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IDeckLinkDisplayModeIterator_v7_6_INTERFACE_DEFINED__
|
|
#define __IDeckLinkDisplayModeIterator_v7_6_INTERFACE_DEFINED__
|
|
|
|
/* interface IDeckLinkDisplayModeIterator_v7_6 */
|
|
/* [helpstring][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IDeckLinkDisplayModeIterator_v7_6;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("455D741F-1779-4800-86F5-0B5D13D79751")
|
|
IDeckLinkDisplayModeIterator_v7_6 : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE Next(
|
|
/* [out] */ IDeckLinkDisplayMode_v7_6 **deckLinkDisplayMode) = 0;
|
|
|
|
};
|
|
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IDeckLinkDisplayModeIterator_v7_6Vtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IDeckLinkDisplayModeIterator_v7_6 * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
_COM_Outptr_ void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IDeckLinkDisplayModeIterator_v7_6 * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IDeckLinkDisplayModeIterator_v7_6 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *Next )(
|
|
IDeckLinkDisplayModeIterator_v7_6 * This,
|
|
/* [out] */ IDeckLinkDisplayMode_v7_6 **deckLinkDisplayMode);
|
|
|
|
END_INTERFACE
|
|
} IDeckLinkDisplayModeIterator_v7_6Vtbl;
|
|
|
|
interface IDeckLinkDisplayModeIterator_v7_6
|
|
{
|
|
CONST_VTBL struct IDeckLinkDisplayModeIterator_v7_6Vtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IDeckLinkDisplayModeIterator_v7_6_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IDeckLinkDisplayModeIterator_v7_6_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IDeckLinkDisplayModeIterator_v7_6_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IDeckLinkDisplayModeIterator_v7_6_Next(This,deckLinkDisplayMode) \
|
|
( (This)->lpVtbl -> Next(This,deckLinkDisplayMode) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IDeckLinkDisplayModeIterator_v7_6_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IDeckLinkDisplayMode_v7_6_INTERFACE_DEFINED__
|
|
#define __IDeckLinkDisplayMode_v7_6_INTERFACE_DEFINED__
|
|
|
|
/* interface IDeckLinkDisplayMode_v7_6 */
|
|
/* [helpstring][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IDeckLinkDisplayMode_v7_6;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("87451E84-2B7E-439E-A629-4393EA4A8550")
|
|
IDeckLinkDisplayMode_v7_6 : 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;
|
|
|
|
};
|
|
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IDeckLinkDisplayMode_v7_6Vtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IDeckLinkDisplayMode_v7_6 * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
_COM_Outptr_ void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IDeckLinkDisplayMode_v7_6 * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IDeckLinkDisplayMode_v7_6 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetName )(
|
|
IDeckLinkDisplayMode_v7_6 * This,
|
|
/* [out] */ BSTR *name);
|
|
|
|
BMDDisplayMode ( STDMETHODCALLTYPE *GetDisplayMode )(
|
|
IDeckLinkDisplayMode_v7_6 * This);
|
|
|
|
long ( STDMETHODCALLTYPE *GetWidth )(
|
|
IDeckLinkDisplayMode_v7_6 * This);
|
|
|
|
long ( STDMETHODCALLTYPE *GetHeight )(
|
|
IDeckLinkDisplayMode_v7_6 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetFrameRate )(
|
|
IDeckLinkDisplayMode_v7_6 * This,
|
|
/* [out] */ BMDTimeValue *frameDuration,
|
|
/* [out] */ BMDTimeScale *timeScale);
|
|
|
|
BMDFieldDominance ( STDMETHODCALLTYPE *GetFieldDominance )(
|
|
IDeckLinkDisplayMode_v7_6 * This);
|
|
|
|
END_INTERFACE
|
|
} IDeckLinkDisplayMode_v7_6Vtbl;
|
|
|
|
interface IDeckLinkDisplayMode_v7_6
|
|
{
|
|
CONST_VTBL struct IDeckLinkDisplayMode_v7_6Vtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IDeckLinkDisplayMode_v7_6_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IDeckLinkDisplayMode_v7_6_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IDeckLinkDisplayMode_v7_6_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IDeckLinkDisplayMode_v7_6_GetName(This,name) \
|
|
( (This)->lpVtbl -> GetName(This,name) )
|
|
|
|
#define IDeckLinkDisplayMode_v7_6_GetDisplayMode(This) \
|
|
( (This)->lpVtbl -> GetDisplayMode(This) )
|
|
|
|
#define IDeckLinkDisplayMode_v7_6_GetWidth(This) \
|
|
( (This)->lpVtbl -> GetWidth(This) )
|
|
|
|
#define IDeckLinkDisplayMode_v7_6_GetHeight(This) \
|
|
( (This)->lpVtbl -> GetHeight(This) )
|
|
|
|
#define IDeckLinkDisplayMode_v7_6_GetFrameRate(This,frameDuration,timeScale) \
|
|
( (This)->lpVtbl -> GetFrameRate(This,frameDuration,timeScale) )
|
|
|
|
#define IDeckLinkDisplayMode_v7_6_GetFieldDominance(This) \
|
|
( (This)->lpVtbl -> GetFieldDominance(This) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IDeckLinkDisplayMode_v7_6_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IDeckLinkOutput_v7_6_INTERFACE_DEFINED__
|
|
#define __IDeckLinkOutput_v7_6_INTERFACE_DEFINED__
|
|
|
|
/* interface IDeckLinkOutput_v7_6 */
|
|
/* [helpstring][local][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IDeckLinkOutput_v7_6;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("29228142-EB8C-4141-A621-F74026450955")
|
|
IDeckLinkOutput_v7_6 : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE DoesSupportVideoMode(
|
|
BMDDisplayMode displayMode,
|
|
BMDPixelFormat pixelFormat,
|
|
/* [out] */ BMDDisplayModeSupport *result) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetDisplayModeIterator(
|
|
/* [out] */ IDeckLinkDisplayModeIterator_v7_6 **iterator) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetScreenPreviewCallback(
|
|
/* [in] */ IDeckLinkScreenPreviewCallback_v7_6 *previewCallback) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE EnableVideoOutput(
|
|
BMDDisplayMode displayMode,
|
|
BMDVideoOutputFlags flags) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE DisableVideoOutput( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetVideoOutputFrameMemoryAllocator(
|
|
/* [in] */ IDeckLinkMemoryAllocator *theAllocator) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE CreateVideoFrame(
|
|
int width,
|
|
int height,
|
|
int rowBytes,
|
|
BMDPixelFormat pixelFormat,
|
|
BMDFrameFlags flags,
|
|
/* [out] */ IDeckLinkMutableVideoFrame_v7_6 **outFrame) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE CreateAncillaryData(
|
|
BMDPixelFormat pixelFormat,
|
|
/* [out] */ IDeckLinkVideoFrameAncillary **outBuffer) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE DisplayVideoFrameSync(
|
|
/* [in] */ IDeckLinkVideoFrame_v7_6 *theFrame) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE ScheduleVideoFrame(
|
|
/* [in] */ IDeckLinkVideoFrame_v7_6 *theFrame,
|
|
BMDTimeValue displayTime,
|
|
BMDTimeValue displayDuration,
|
|
BMDTimeScale timeScale) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetScheduledFrameCompletionCallback(
|
|
/* [in] */ IDeckLinkVideoOutputCallback_v7_6 *theCallback) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetBufferedVideoFrameCount(
|
|
/* [out] */ unsigned int *bufferedFrameCount) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE EnableAudioOutput(
|
|
BMDAudioSampleRate sampleRate,
|
|
BMDAudioSampleType sampleType,
|
|
unsigned int channelCount,
|
|
BMDAudioOutputStreamType streamType) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE DisableAudioOutput( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE WriteAudioSamplesSync(
|
|
/* [in] */ void *buffer,
|
|
unsigned int sampleFrameCount,
|
|
/* [out] */ unsigned int *sampleFramesWritten) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE BeginAudioPreroll( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE EndAudioPreroll( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE ScheduleAudioSamples(
|
|
/* [in] */ void *buffer,
|
|
unsigned int sampleFrameCount,
|
|
BMDTimeValue streamTime,
|
|
BMDTimeScale timeScale,
|
|
/* [out] */ unsigned int *sampleFramesWritten) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetBufferedAudioSampleFrameCount(
|
|
/* [out] */ unsigned int *bufferedSampleFrameCount) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE FlushBufferedAudioSamples( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetAudioCallback(
|
|
/* [in] */ IDeckLinkAudioOutputCallback *theCallback) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE StartScheduledPlayback(
|
|
BMDTimeValue playbackStartTime,
|
|
BMDTimeScale timeScale,
|
|
double playbackSpeed) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE StopScheduledPlayback(
|
|
BMDTimeValue stopPlaybackAtTime,
|
|
/* [out] */ BMDTimeValue *actualStopTime,
|
|
BMDTimeScale timeScale) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE IsScheduledPlaybackRunning(
|
|
/* [out] */ BOOL *active) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetScheduledStreamTime(
|
|
BMDTimeScale desiredTimeScale,
|
|
/* [out] */ BMDTimeValue *streamTime,
|
|
/* [out] */ double *playbackSpeed) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetHardwareReferenceClock(
|
|
BMDTimeScale desiredTimeScale,
|
|
/* [out] */ BMDTimeValue *hardwareTime,
|
|
/* [out] */ BMDTimeValue *timeInFrame,
|
|
/* [out] */ BMDTimeValue *ticksPerFrame) = 0;
|
|
|
|
};
|
|
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IDeckLinkOutput_v7_6Vtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IDeckLinkOutput_v7_6 * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
_COM_Outptr_ void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IDeckLinkOutput_v7_6 * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IDeckLinkOutput_v7_6 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *DoesSupportVideoMode )(
|
|
IDeckLinkOutput_v7_6 * This,
|
|
BMDDisplayMode displayMode,
|
|
BMDPixelFormat pixelFormat,
|
|
/* [out] */ BMDDisplayModeSupport *result);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetDisplayModeIterator )(
|
|
IDeckLinkOutput_v7_6 * This,
|
|
/* [out] */ IDeckLinkDisplayModeIterator_v7_6 **iterator);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetScreenPreviewCallback )(
|
|
IDeckLinkOutput_v7_6 * This,
|
|
/* [in] */ IDeckLinkScreenPreviewCallback_v7_6 *previewCallback);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *EnableVideoOutput )(
|
|
IDeckLinkOutput_v7_6 * This,
|
|
BMDDisplayMode displayMode,
|
|
BMDVideoOutputFlags flags);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *DisableVideoOutput )(
|
|
IDeckLinkOutput_v7_6 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetVideoOutputFrameMemoryAllocator )(
|
|
IDeckLinkOutput_v7_6 * This,
|
|
/* [in] */ IDeckLinkMemoryAllocator *theAllocator);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *CreateVideoFrame )(
|
|
IDeckLinkOutput_v7_6 * This,
|
|
int width,
|
|
int height,
|
|
int rowBytes,
|
|
BMDPixelFormat pixelFormat,
|
|
BMDFrameFlags flags,
|
|
/* [out] */ IDeckLinkMutableVideoFrame_v7_6 **outFrame);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *CreateAncillaryData )(
|
|
IDeckLinkOutput_v7_6 * This,
|
|
BMDPixelFormat pixelFormat,
|
|
/* [out] */ IDeckLinkVideoFrameAncillary **outBuffer);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *DisplayVideoFrameSync )(
|
|
IDeckLinkOutput_v7_6 * This,
|
|
/* [in] */ IDeckLinkVideoFrame_v7_6 *theFrame);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *ScheduleVideoFrame )(
|
|
IDeckLinkOutput_v7_6 * This,
|
|
/* [in] */ IDeckLinkVideoFrame_v7_6 *theFrame,
|
|
BMDTimeValue displayTime,
|
|
BMDTimeValue displayDuration,
|
|
BMDTimeScale timeScale);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetScheduledFrameCompletionCallback )(
|
|
IDeckLinkOutput_v7_6 * This,
|
|
/* [in] */ IDeckLinkVideoOutputCallback_v7_6 *theCallback);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetBufferedVideoFrameCount )(
|
|
IDeckLinkOutput_v7_6 * This,
|
|
/* [out] */ unsigned int *bufferedFrameCount);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *EnableAudioOutput )(
|
|
IDeckLinkOutput_v7_6 * This,
|
|
BMDAudioSampleRate sampleRate,
|
|
BMDAudioSampleType sampleType,
|
|
unsigned int channelCount,
|
|
BMDAudioOutputStreamType streamType);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *DisableAudioOutput )(
|
|
IDeckLinkOutput_v7_6 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *WriteAudioSamplesSync )(
|
|
IDeckLinkOutput_v7_6 * This,
|
|
/* [in] */ void *buffer,
|
|
unsigned int sampleFrameCount,
|
|
/* [out] */ unsigned int *sampleFramesWritten);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *BeginAudioPreroll )(
|
|
IDeckLinkOutput_v7_6 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *EndAudioPreroll )(
|
|
IDeckLinkOutput_v7_6 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *ScheduleAudioSamples )(
|
|
IDeckLinkOutput_v7_6 * This,
|
|
/* [in] */ void *buffer,
|
|
unsigned int sampleFrameCount,
|
|
BMDTimeValue streamTime,
|
|
BMDTimeScale timeScale,
|
|
/* [out] */ unsigned int *sampleFramesWritten);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetBufferedAudioSampleFrameCount )(
|
|
IDeckLinkOutput_v7_6 * This,
|
|
/* [out] */ unsigned int *bufferedSampleFrameCount);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *FlushBufferedAudioSamples )(
|
|
IDeckLinkOutput_v7_6 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetAudioCallback )(
|
|
IDeckLinkOutput_v7_6 * This,
|
|
/* [in] */ IDeckLinkAudioOutputCallback *theCallback);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *StartScheduledPlayback )(
|
|
IDeckLinkOutput_v7_6 * This,
|
|
BMDTimeValue playbackStartTime,
|
|
BMDTimeScale timeScale,
|
|
double playbackSpeed);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *StopScheduledPlayback )(
|
|
IDeckLinkOutput_v7_6 * This,
|
|
BMDTimeValue stopPlaybackAtTime,
|
|
/* [out] */ BMDTimeValue *actualStopTime,
|
|
BMDTimeScale timeScale);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *IsScheduledPlaybackRunning )(
|
|
IDeckLinkOutput_v7_6 * This,
|
|
/* [out] */ BOOL *active);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetScheduledStreamTime )(
|
|
IDeckLinkOutput_v7_6 * This,
|
|
BMDTimeScale desiredTimeScale,
|
|
/* [out] */ BMDTimeValue *streamTime,
|
|
/* [out] */ double *playbackSpeed);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetHardwareReferenceClock )(
|
|
IDeckLinkOutput_v7_6 * This,
|
|
BMDTimeScale desiredTimeScale,
|
|
/* [out] */ BMDTimeValue *hardwareTime,
|
|
/* [out] */ BMDTimeValue *timeInFrame,
|
|
/* [out] */ BMDTimeValue *ticksPerFrame);
|
|
|
|
END_INTERFACE
|
|
} IDeckLinkOutput_v7_6Vtbl;
|
|
|
|
interface IDeckLinkOutput_v7_6
|
|
{
|
|
CONST_VTBL struct IDeckLinkOutput_v7_6Vtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IDeckLinkOutput_v7_6_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IDeckLinkOutput_v7_6_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IDeckLinkOutput_v7_6_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IDeckLinkOutput_v7_6_DoesSupportVideoMode(This,displayMode,pixelFormat,result) \
|
|
( (This)->lpVtbl -> DoesSupportVideoMode(This,displayMode,pixelFormat,result) )
|
|
|
|
#define IDeckLinkOutput_v7_6_GetDisplayModeIterator(This,iterator) \
|
|
( (This)->lpVtbl -> GetDisplayModeIterator(This,iterator) )
|
|
|
|
#define IDeckLinkOutput_v7_6_SetScreenPreviewCallback(This,previewCallback) \
|
|
( (This)->lpVtbl -> SetScreenPreviewCallback(This,previewCallback) )
|
|
|
|
#define IDeckLinkOutput_v7_6_EnableVideoOutput(This,displayMode,flags) \
|
|
( (This)->lpVtbl -> EnableVideoOutput(This,displayMode,flags) )
|
|
|
|
#define IDeckLinkOutput_v7_6_DisableVideoOutput(This) \
|
|
( (This)->lpVtbl -> DisableVideoOutput(This) )
|
|
|
|
#define IDeckLinkOutput_v7_6_SetVideoOutputFrameMemoryAllocator(This,theAllocator) \
|
|
( (This)->lpVtbl -> SetVideoOutputFrameMemoryAllocator(This,theAllocator) )
|
|
|
|
#define IDeckLinkOutput_v7_6_CreateVideoFrame(This,width,height,rowBytes,pixelFormat,flags,outFrame) \
|
|
( (This)->lpVtbl -> CreateVideoFrame(This,width,height,rowBytes,pixelFormat,flags,outFrame) )
|
|
|
|
#define IDeckLinkOutput_v7_6_CreateAncillaryData(This,pixelFormat,outBuffer) \
|
|
( (This)->lpVtbl -> CreateAncillaryData(This,pixelFormat,outBuffer) )
|
|
|
|
#define IDeckLinkOutput_v7_6_DisplayVideoFrameSync(This,theFrame) \
|
|
( (This)->lpVtbl -> DisplayVideoFrameSync(This,theFrame) )
|
|
|
|
#define IDeckLinkOutput_v7_6_ScheduleVideoFrame(This,theFrame,displayTime,displayDuration,timeScale) \
|
|
( (This)->lpVtbl -> ScheduleVideoFrame(This,theFrame,displayTime,displayDuration,timeScale) )
|
|
|
|
#define IDeckLinkOutput_v7_6_SetScheduledFrameCompletionCallback(This,theCallback) \
|
|
( (This)->lpVtbl -> SetScheduledFrameCompletionCallback(This,theCallback) )
|
|
|
|
#define IDeckLinkOutput_v7_6_GetBufferedVideoFrameCount(This,bufferedFrameCount) \
|
|
( (This)->lpVtbl -> GetBufferedVideoFrameCount(This,bufferedFrameCount) )
|
|
|
|
#define IDeckLinkOutput_v7_6_EnableAudioOutput(This,sampleRate,sampleType,channelCount,streamType) \
|
|
( (This)->lpVtbl -> EnableAudioOutput(This,sampleRate,sampleType,channelCount,streamType) )
|
|
|
|
#define IDeckLinkOutput_v7_6_DisableAudioOutput(This) \
|
|
( (This)->lpVtbl -> DisableAudioOutput(This) )
|
|
|
|
#define IDeckLinkOutput_v7_6_WriteAudioSamplesSync(This,buffer,sampleFrameCount,sampleFramesWritten) \
|
|
( (This)->lpVtbl -> WriteAudioSamplesSync(This,buffer,sampleFrameCount,sampleFramesWritten) )
|
|
|
|
#define IDeckLinkOutput_v7_6_BeginAudioPreroll(This) \
|
|
( (This)->lpVtbl -> BeginAudioPreroll(This) )
|
|
|
|
#define IDeckLinkOutput_v7_6_EndAudioPreroll(This) \
|
|
( (This)->lpVtbl -> EndAudioPreroll(This) )
|
|
|
|
#define IDeckLinkOutput_v7_6_ScheduleAudioSamples(This,buffer,sampleFrameCount,streamTime,timeScale,sampleFramesWritten) \
|
|
( (This)->lpVtbl -> ScheduleAudioSamples(This,buffer,sampleFrameCount,streamTime,timeScale,sampleFramesWritten) )
|
|
|
|
#define IDeckLinkOutput_v7_6_GetBufferedAudioSampleFrameCount(This,bufferedSampleFrameCount) \
|
|
( (This)->lpVtbl -> GetBufferedAudioSampleFrameCount(This,bufferedSampleFrameCount) )
|
|
|
|
#define IDeckLinkOutput_v7_6_FlushBufferedAudioSamples(This) \
|
|
( (This)->lpVtbl -> FlushBufferedAudioSamples(This) )
|
|
|
|
#define IDeckLinkOutput_v7_6_SetAudioCallback(This,theCallback) \
|
|
( (This)->lpVtbl -> SetAudioCallback(This,theCallback) )
|
|
|
|
#define IDeckLinkOutput_v7_6_StartScheduledPlayback(This,playbackStartTime,timeScale,playbackSpeed) \
|
|
( (This)->lpVtbl -> StartScheduledPlayback(This,playbackStartTime,timeScale,playbackSpeed) )
|
|
|
|
#define IDeckLinkOutput_v7_6_StopScheduledPlayback(This,stopPlaybackAtTime,actualStopTime,timeScale) \
|
|
( (This)->lpVtbl -> StopScheduledPlayback(This,stopPlaybackAtTime,actualStopTime,timeScale) )
|
|
|
|
#define IDeckLinkOutput_v7_6_IsScheduledPlaybackRunning(This,active) \
|
|
( (This)->lpVtbl -> IsScheduledPlaybackRunning(This,active) )
|
|
|
|
#define IDeckLinkOutput_v7_6_GetScheduledStreamTime(This,desiredTimeScale,streamTime,playbackSpeed) \
|
|
( (This)->lpVtbl -> GetScheduledStreamTime(This,desiredTimeScale,streamTime,playbackSpeed) )
|
|
|
|
#define IDeckLinkOutput_v7_6_GetHardwareReferenceClock(This,desiredTimeScale,hardwareTime,timeInFrame,ticksPerFrame) \
|
|
( (This)->lpVtbl -> GetHardwareReferenceClock(This,desiredTimeScale,hardwareTime,timeInFrame,ticksPerFrame) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IDeckLinkOutput_v7_6_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IDeckLinkInput_v7_6_INTERFACE_DEFINED__
|
|
#define __IDeckLinkInput_v7_6_INTERFACE_DEFINED__
|
|
|
|
/* interface IDeckLinkInput_v7_6 */
|
|
/* [helpstring][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IDeckLinkInput_v7_6;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("300C135A-9F43-48E2-9906-6D7911D93CF1")
|
|
IDeckLinkInput_v7_6 : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE DoesSupportVideoMode(
|
|
BMDDisplayMode displayMode,
|
|
BMDPixelFormat pixelFormat,
|
|
/* [out] */ BMDDisplayModeSupport *result) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetDisplayModeIterator(
|
|
/* [out] */ IDeckLinkDisplayModeIterator_v7_6 **iterator) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetScreenPreviewCallback(
|
|
/* [in] */ IDeckLinkScreenPreviewCallback_v7_6 *previewCallback) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE EnableVideoInput(
|
|
BMDDisplayMode displayMode,
|
|
BMDPixelFormat pixelFormat,
|
|
BMDVideoInputFlags flags) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE DisableVideoInput( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetAvailableVideoFrameCount(
|
|
/* [out] */ unsigned int *availableFrameCount) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE EnableAudioInput(
|
|
BMDAudioSampleRate sampleRate,
|
|
BMDAudioSampleType sampleType,
|
|
unsigned int channelCount) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE DisableAudioInput( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetAvailableAudioSampleFrameCount(
|
|
/* [out] */ unsigned int *availableSampleFrameCount) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE StartStreams( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE StopStreams( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE PauseStreams( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE FlushStreams( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetCallback(
|
|
/* [in] */ IDeckLinkInputCallback_v7_6 *theCallback) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetHardwareReferenceClock(
|
|
BMDTimeScale desiredTimeScale,
|
|
/* [out] */ BMDTimeValue *hardwareTime,
|
|
/* [out] */ BMDTimeValue *timeInFrame,
|
|
/* [out] */ BMDTimeValue *ticksPerFrame) = 0;
|
|
|
|
};
|
|
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IDeckLinkInput_v7_6Vtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IDeckLinkInput_v7_6 * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
_COM_Outptr_ void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IDeckLinkInput_v7_6 * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IDeckLinkInput_v7_6 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *DoesSupportVideoMode )(
|
|
IDeckLinkInput_v7_6 * This,
|
|
BMDDisplayMode displayMode,
|
|
BMDPixelFormat pixelFormat,
|
|
/* [out] */ BMDDisplayModeSupport *result);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetDisplayModeIterator )(
|
|
IDeckLinkInput_v7_6 * This,
|
|
/* [out] */ IDeckLinkDisplayModeIterator_v7_6 **iterator);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetScreenPreviewCallback )(
|
|
IDeckLinkInput_v7_6 * This,
|
|
/* [in] */ IDeckLinkScreenPreviewCallback_v7_6 *previewCallback);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *EnableVideoInput )(
|
|
IDeckLinkInput_v7_6 * This,
|
|
BMDDisplayMode displayMode,
|
|
BMDPixelFormat pixelFormat,
|
|
BMDVideoInputFlags flags);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *DisableVideoInput )(
|
|
IDeckLinkInput_v7_6 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetAvailableVideoFrameCount )(
|
|
IDeckLinkInput_v7_6 * This,
|
|
/* [out] */ unsigned int *availableFrameCount);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *EnableAudioInput )(
|
|
IDeckLinkInput_v7_6 * This,
|
|
BMDAudioSampleRate sampleRate,
|
|
BMDAudioSampleType sampleType,
|
|
unsigned int channelCount);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *DisableAudioInput )(
|
|
IDeckLinkInput_v7_6 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetAvailableAudioSampleFrameCount )(
|
|
IDeckLinkInput_v7_6 * This,
|
|
/* [out] */ unsigned int *availableSampleFrameCount);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *StartStreams )(
|
|
IDeckLinkInput_v7_6 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *StopStreams )(
|
|
IDeckLinkInput_v7_6 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *PauseStreams )(
|
|
IDeckLinkInput_v7_6 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *FlushStreams )(
|
|
IDeckLinkInput_v7_6 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetCallback )(
|
|
IDeckLinkInput_v7_6 * This,
|
|
/* [in] */ IDeckLinkInputCallback_v7_6 *theCallback);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetHardwareReferenceClock )(
|
|
IDeckLinkInput_v7_6 * This,
|
|
BMDTimeScale desiredTimeScale,
|
|
/* [out] */ BMDTimeValue *hardwareTime,
|
|
/* [out] */ BMDTimeValue *timeInFrame,
|
|
/* [out] */ BMDTimeValue *ticksPerFrame);
|
|
|
|
END_INTERFACE
|
|
} IDeckLinkInput_v7_6Vtbl;
|
|
|
|
interface IDeckLinkInput_v7_6
|
|
{
|
|
CONST_VTBL struct IDeckLinkInput_v7_6Vtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IDeckLinkInput_v7_6_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IDeckLinkInput_v7_6_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IDeckLinkInput_v7_6_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IDeckLinkInput_v7_6_DoesSupportVideoMode(This,displayMode,pixelFormat,result) \
|
|
( (This)->lpVtbl -> DoesSupportVideoMode(This,displayMode,pixelFormat,result) )
|
|
|
|
#define IDeckLinkInput_v7_6_GetDisplayModeIterator(This,iterator) \
|
|
( (This)->lpVtbl -> GetDisplayModeIterator(This,iterator) )
|
|
|
|
#define IDeckLinkInput_v7_6_SetScreenPreviewCallback(This,previewCallback) \
|
|
( (This)->lpVtbl -> SetScreenPreviewCallback(This,previewCallback) )
|
|
|
|
#define IDeckLinkInput_v7_6_EnableVideoInput(This,displayMode,pixelFormat,flags) \
|
|
( (This)->lpVtbl -> EnableVideoInput(This,displayMode,pixelFormat,flags) )
|
|
|
|
#define IDeckLinkInput_v7_6_DisableVideoInput(This) \
|
|
( (This)->lpVtbl -> DisableVideoInput(This) )
|
|
|
|
#define IDeckLinkInput_v7_6_GetAvailableVideoFrameCount(This,availableFrameCount) \
|
|
( (This)->lpVtbl -> GetAvailableVideoFrameCount(This,availableFrameCount) )
|
|
|
|
#define IDeckLinkInput_v7_6_EnableAudioInput(This,sampleRate,sampleType,channelCount) \
|
|
( (This)->lpVtbl -> EnableAudioInput(This,sampleRate,sampleType,channelCount) )
|
|
|
|
#define IDeckLinkInput_v7_6_DisableAudioInput(This) \
|
|
( (This)->lpVtbl -> DisableAudioInput(This) )
|
|
|
|
#define IDeckLinkInput_v7_6_GetAvailableAudioSampleFrameCount(This,availableSampleFrameCount) \
|
|
( (This)->lpVtbl -> GetAvailableAudioSampleFrameCount(This,availableSampleFrameCount) )
|
|
|
|
#define IDeckLinkInput_v7_6_StartStreams(This) \
|
|
( (This)->lpVtbl -> StartStreams(This) )
|
|
|
|
#define IDeckLinkInput_v7_6_StopStreams(This) \
|
|
( (This)->lpVtbl -> StopStreams(This) )
|
|
|
|
#define IDeckLinkInput_v7_6_PauseStreams(This) \
|
|
( (This)->lpVtbl -> PauseStreams(This) )
|
|
|
|
#define IDeckLinkInput_v7_6_FlushStreams(This) \
|
|
( (This)->lpVtbl -> FlushStreams(This) )
|
|
|
|
#define IDeckLinkInput_v7_6_SetCallback(This,theCallback) \
|
|
( (This)->lpVtbl -> SetCallback(This,theCallback) )
|
|
|
|
#define IDeckLinkInput_v7_6_GetHardwareReferenceClock(This,desiredTimeScale,hardwareTime,timeInFrame,ticksPerFrame) \
|
|
( (This)->lpVtbl -> GetHardwareReferenceClock(This,desiredTimeScale,hardwareTime,timeInFrame,ticksPerFrame) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IDeckLinkInput_v7_6_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IDeckLinkTimecode_v7_6_INTERFACE_DEFINED__
|
|
#define __IDeckLinkTimecode_v7_6_INTERFACE_DEFINED__
|
|
|
|
/* interface IDeckLinkTimecode_v7_6 */
|
|
/* [helpstring][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IDeckLinkTimecode_v7_6;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("EFB9BCA6-A521-44F7-BD69-2332F24D9EE6")
|
|
IDeckLinkTimecode_v7_6 : 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;
|
|
|
|
};
|
|
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IDeckLinkTimecode_v7_6Vtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IDeckLinkTimecode_v7_6 * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
_COM_Outptr_ void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IDeckLinkTimecode_v7_6 * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IDeckLinkTimecode_v7_6 * This);
|
|
|
|
BMDTimecodeBCD ( STDMETHODCALLTYPE *GetBCD )(
|
|
IDeckLinkTimecode_v7_6 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetComponents )(
|
|
IDeckLinkTimecode_v7_6 * This,
|
|
/* [out] */ unsigned char *hours,
|
|
/* [out] */ unsigned char *minutes,
|
|
/* [out] */ unsigned char *seconds,
|
|
/* [out] */ unsigned char *frames);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetString )(
|
|
IDeckLinkTimecode_v7_6 * This,
|
|
/* [out] */ BSTR *timecode);
|
|
|
|
BMDTimecodeFlags ( STDMETHODCALLTYPE *GetFlags )(
|
|
IDeckLinkTimecode_v7_6 * This);
|
|
|
|
END_INTERFACE
|
|
} IDeckLinkTimecode_v7_6Vtbl;
|
|
|
|
interface IDeckLinkTimecode_v7_6
|
|
{
|
|
CONST_VTBL struct IDeckLinkTimecode_v7_6Vtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IDeckLinkTimecode_v7_6_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IDeckLinkTimecode_v7_6_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IDeckLinkTimecode_v7_6_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IDeckLinkTimecode_v7_6_GetBCD(This) \
|
|
( (This)->lpVtbl -> GetBCD(This) )
|
|
|
|
#define IDeckLinkTimecode_v7_6_GetComponents(This,hours,minutes,seconds,frames) \
|
|
( (This)->lpVtbl -> GetComponents(This,hours,minutes,seconds,frames) )
|
|
|
|
#define IDeckLinkTimecode_v7_6_GetString(This,timecode) \
|
|
( (This)->lpVtbl -> GetString(This,timecode) )
|
|
|
|
#define IDeckLinkTimecode_v7_6_GetFlags(This) \
|
|
( (This)->lpVtbl -> GetFlags(This) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IDeckLinkTimecode_v7_6_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IDeckLinkVideoFrame_v7_6_INTERFACE_DEFINED__
|
|
#define __IDeckLinkVideoFrame_v7_6_INTERFACE_DEFINED__
|
|
|
|
/* interface IDeckLinkVideoFrame_v7_6 */
|
|
/* [helpstring][local][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IDeckLinkVideoFrame_v7_6;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("A8D8238E-6B18-4196-99E1-5AF717B83D32")
|
|
IDeckLinkVideoFrame_v7_6 : public IUnknown
|
|
{
|
|
public:
|
|
virtual long STDMETHODCALLTYPE GetWidth( void) = 0;
|
|
|
|
virtual long STDMETHODCALLTYPE GetHeight( void) = 0;
|
|
|
|
virtual long STDMETHODCALLTYPE GetRowBytes( void) = 0;
|
|
|
|
virtual BMDPixelFormat STDMETHODCALLTYPE GetPixelFormat( void) = 0;
|
|
|
|
virtual BMDFrameFlags STDMETHODCALLTYPE GetFlags( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetBytes(
|
|
/* [out] */ void **buffer) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetTimecode(
|
|
BMDTimecodeFormat format,
|
|
/* [out] */ IDeckLinkTimecode_v7_6 **timecode) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetAncillaryData(
|
|
/* [out] */ IDeckLinkVideoFrameAncillary **ancillary) = 0;
|
|
|
|
};
|
|
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IDeckLinkVideoFrame_v7_6Vtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IDeckLinkVideoFrame_v7_6 * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
_COM_Outptr_ void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IDeckLinkVideoFrame_v7_6 * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IDeckLinkVideoFrame_v7_6 * This);
|
|
|
|
long ( STDMETHODCALLTYPE *GetWidth )(
|
|
IDeckLinkVideoFrame_v7_6 * This);
|
|
|
|
long ( STDMETHODCALLTYPE *GetHeight )(
|
|
IDeckLinkVideoFrame_v7_6 * This);
|
|
|
|
long ( STDMETHODCALLTYPE *GetRowBytes )(
|
|
IDeckLinkVideoFrame_v7_6 * This);
|
|
|
|
BMDPixelFormat ( STDMETHODCALLTYPE *GetPixelFormat )(
|
|
IDeckLinkVideoFrame_v7_6 * This);
|
|
|
|
BMDFrameFlags ( STDMETHODCALLTYPE *GetFlags )(
|
|
IDeckLinkVideoFrame_v7_6 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetBytes )(
|
|
IDeckLinkVideoFrame_v7_6 * This,
|
|
/* [out] */ void **buffer);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetTimecode )(
|
|
IDeckLinkVideoFrame_v7_6 * This,
|
|
BMDTimecodeFormat format,
|
|
/* [out] */ IDeckLinkTimecode_v7_6 **timecode);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetAncillaryData )(
|
|
IDeckLinkVideoFrame_v7_6 * This,
|
|
/* [out] */ IDeckLinkVideoFrameAncillary **ancillary);
|
|
|
|
END_INTERFACE
|
|
} IDeckLinkVideoFrame_v7_6Vtbl;
|
|
|
|
interface IDeckLinkVideoFrame_v7_6
|
|
{
|
|
CONST_VTBL struct IDeckLinkVideoFrame_v7_6Vtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IDeckLinkVideoFrame_v7_6_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IDeckLinkVideoFrame_v7_6_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IDeckLinkVideoFrame_v7_6_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IDeckLinkVideoFrame_v7_6_GetWidth(This) \
|
|
( (This)->lpVtbl -> GetWidth(This) )
|
|
|
|
#define IDeckLinkVideoFrame_v7_6_GetHeight(This) \
|
|
( (This)->lpVtbl -> GetHeight(This) )
|
|
|
|
#define IDeckLinkVideoFrame_v7_6_GetRowBytes(This) \
|
|
( (This)->lpVtbl -> GetRowBytes(This) )
|
|
|
|
#define IDeckLinkVideoFrame_v7_6_GetPixelFormat(This) \
|
|
( (This)->lpVtbl -> GetPixelFormat(This) )
|
|
|
|
#define IDeckLinkVideoFrame_v7_6_GetFlags(This) \
|
|
( (This)->lpVtbl -> GetFlags(This) )
|
|
|
|
#define IDeckLinkVideoFrame_v7_6_GetBytes(This,buffer) \
|
|
( (This)->lpVtbl -> GetBytes(This,buffer) )
|
|
|
|
#define IDeckLinkVideoFrame_v7_6_GetTimecode(This,format,timecode) \
|
|
( (This)->lpVtbl -> GetTimecode(This,format,timecode) )
|
|
|
|
#define IDeckLinkVideoFrame_v7_6_GetAncillaryData(This,ancillary) \
|
|
( (This)->lpVtbl -> GetAncillaryData(This,ancillary) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IDeckLinkVideoFrame_v7_6_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IDeckLinkMutableVideoFrame_v7_6_INTERFACE_DEFINED__
|
|
#define __IDeckLinkMutableVideoFrame_v7_6_INTERFACE_DEFINED__
|
|
|
|
/* interface IDeckLinkMutableVideoFrame_v7_6 */
|
|
/* [helpstring][local][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IDeckLinkMutableVideoFrame_v7_6;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("46FCEE00-B4E6-43D0-91C0-023A7FCEB34F")
|
|
IDeckLinkMutableVideoFrame_v7_6 : public IDeckLinkVideoFrame_v7_6
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE SetFlags(
|
|
BMDFrameFlags newFlags) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetTimecode(
|
|
BMDTimecodeFormat format,
|
|
/* [in] */ IDeckLinkTimecode_v7_6 *timecode) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetTimecodeFromComponents(
|
|
BMDTimecodeFormat format,
|
|
unsigned char hours,
|
|
unsigned char minutes,
|
|
unsigned char seconds,
|
|
unsigned char frames,
|
|
BMDTimecodeFlags flags) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetAncillaryData(
|
|
/* [in] */ IDeckLinkVideoFrameAncillary *ancillary) = 0;
|
|
|
|
};
|
|
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IDeckLinkMutableVideoFrame_v7_6Vtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IDeckLinkMutableVideoFrame_v7_6 * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
_COM_Outptr_ void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IDeckLinkMutableVideoFrame_v7_6 * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IDeckLinkMutableVideoFrame_v7_6 * This);
|
|
|
|
long ( STDMETHODCALLTYPE *GetWidth )(
|
|
IDeckLinkMutableVideoFrame_v7_6 * This);
|
|
|
|
long ( STDMETHODCALLTYPE *GetHeight )(
|
|
IDeckLinkMutableVideoFrame_v7_6 * This);
|
|
|
|
long ( STDMETHODCALLTYPE *GetRowBytes )(
|
|
IDeckLinkMutableVideoFrame_v7_6 * This);
|
|
|
|
BMDPixelFormat ( STDMETHODCALLTYPE *GetPixelFormat )(
|
|
IDeckLinkMutableVideoFrame_v7_6 * This);
|
|
|
|
BMDFrameFlags ( STDMETHODCALLTYPE *GetFlags )(
|
|
IDeckLinkMutableVideoFrame_v7_6 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetBytes )(
|
|
IDeckLinkMutableVideoFrame_v7_6 * This,
|
|
/* [out] */ void **buffer);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetTimecode )(
|
|
IDeckLinkMutableVideoFrame_v7_6 * This,
|
|
BMDTimecodeFormat format,
|
|
/* [out] */ IDeckLinkTimecode_v7_6 **timecode);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetAncillaryData )(
|
|
IDeckLinkMutableVideoFrame_v7_6 * This,
|
|
/* [out] */ IDeckLinkVideoFrameAncillary **ancillary);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetFlags )(
|
|
IDeckLinkMutableVideoFrame_v7_6 * This,
|
|
BMDFrameFlags newFlags);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetTimecode )(
|
|
IDeckLinkMutableVideoFrame_v7_6 * This,
|
|
BMDTimecodeFormat format,
|
|
/* [in] */ IDeckLinkTimecode_v7_6 *timecode);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetTimecodeFromComponents )(
|
|
IDeckLinkMutableVideoFrame_v7_6 * This,
|
|
BMDTimecodeFormat format,
|
|
unsigned char hours,
|
|
unsigned char minutes,
|
|
unsigned char seconds,
|
|
unsigned char frames,
|
|
BMDTimecodeFlags flags);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetAncillaryData )(
|
|
IDeckLinkMutableVideoFrame_v7_6 * This,
|
|
/* [in] */ IDeckLinkVideoFrameAncillary *ancillary);
|
|
|
|
END_INTERFACE
|
|
} IDeckLinkMutableVideoFrame_v7_6Vtbl;
|
|
|
|
interface IDeckLinkMutableVideoFrame_v7_6
|
|
{
|
|
CONST_VTBL struct IDeckLinkMutableVideoFrame_v7_6Vtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IDeckLinkMutableVideoFrame_v7_6_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IDeckLinkMutableVideoFrame_v7_6_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IDeckLinkMutableVideoFrame_v7_6_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IDeckLinkMutableVideoFrame_v7_6_GetWidth(This) \
|
|
( (This)->lpVtbl -> GetWidth(This) )
|
|
|
|
#define IDeckLinkMutableVideoFrame_v7_6_GetHeight(This) \
|
|
( (This)->lpVtbl -> GetHeight(This) )
|
|
|
|
#define IDeckLinkMutableVideoFrame_v7_6_GetRowBytes(This) \
|
|
( (This)->lpVtbl -> GetRowBytes(This) )
|
|
|
|
#define IDeckLinkMutableVideoFrame_v7_6_GetPixelFormat(This) \
|
|
( (This)->lpVtbl -> GetPixelFormat(This) )
|
|
|
|
#define IDeckLinkMutableVideoFrame_v7_6_GetFlags(This) \
|
|
( (This)->lpVtbl -> GetFlags(This) )
|
|
|
|
#define IDeckLinkMutableVideoFrame_v7_6_GetBytes(This,buffer) \
|
|
( (This)->lpVtbl -> GetBytes(This,buffer) )
|
|
|
|
#define IDeckLinkMutableVideoFrame_v7_6_GetTimecode(This,format,timecode) \
|
|
( (This)->lpVtbl -> GetTimecode(This,format,timecode) )
|
|
|
|
#define IDeckLinkMutableVideoFrame_v7_6_GetAncillaryData(This,ancillary) \
|
|
( (This)->lpVtbl -> GetAncillaryData(This,ancillary) )
|
|
|
|
|
|
#define IDeckLinkMutableVideoFrame_v7_6_SetFlags(This,newFlags) \
|
|
( (This)->lpVtbl -> SetFlags(This,newFlags) )
|
|
|
|
#define IDeckLinkMutableVideoFrame_v7_6_SetTimecode(This,format,timecode) \
|
|
( (This)->lpVtbl -> SetTimecode(This,format,timecode) )
|
|
|
|
#define IDeckLinkMutableVideoFrame_v7_6_SetTimecodeFromComponents(This,format,hours,minutes,seconds,frames,flags) \
|
|
( (This)->lpVtbl -> SetTimecodeFromComponents(This,format,hours,minutes,seconds,frames,flags) )
|
|
|
|
#define IDeckLinkMutableVideoFrame_v7_6_SetAncillaryData(This,ancillary) \
|
|
( (This)->lpVtbl -> SetAncillaryData(This,ancillary) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IDeckLinkMutableVideoFrame_v7_6_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IDeckLinkVideoInputFrame_v7_6_INTERFACE_DEFINED__
|
|
#define __IDeckLinkVideoInputFrame_v7_6_INTERFACE_DEFINED__
|
|
|
|
/* interface IDeckLinkVideoInputFrame_v7_6 */
|
|
/* [helpstring][local][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IDeckLinkVideoInputFrame_v7_6;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("9A74FA41-AE9F-47AC-8CF4-01F42DD59965")
|
|
IDeckLinkVideoInputFrame_v7_6 : public IDeckLinkVideoFrame_v7_6
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE GetStreamTime(
|
|
/* [out] */ BMDTimeValue *frameTime,
|
|
/* [out] */ BMDTimeValue *frameDuration,
|
|
BMDTimeScale timeScale) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetHardwareReferenceTimestamp(
|
|
BMDTimeScale timeScale,
|
|
/* [out] */ BMDTimeValue *frameTime,
|
|
/* [out] */ BMDTimeValue *frameDuration) = 0;
|
|
|
|
};
|
|
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IDeckLinkVideoInputFrame_v7_6Vtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IDeckLinkVideoInputFrame_v7_6 * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
_COM_Outptr_ void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IDeckLinkVideoInputFrame_v7_6 * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IDeckLinkVideoInputFrame_v7_6 * This);
|
|
|
|
long ( STDMETHODCALLTYPE *GetWidth )(
|
|
IDeckLinkVideoInputFrame_v7_6 * This);
|
|
|
|
long ( STDMETHODCALLTYPE *GetHeight )(
|
|
IDeckLinkVideoInputFrame_v7_6 * This);
|
|
|
|
long ( STDMETHODCALLTYPE *GetRowBytes )(
|
|
IDeckLinkVideoInputFrame_v7_6 * This);
|
|
|
|
BMDPixelFormat ( STDMETHODCALLTYPE *GetPixelFormat )(
|
|
IDeckLinkVideoInputFrame_v7_6 * This);
|
|
|
|
BMDFrameFlags ( STDMETHODCALLTYPE *GetFlags )(
|
|
IDeckLinkVideoInputFrame_v7_6 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetBytes )(
|
|
IDeckLinkVideoInputFrame_v7_6 * This,
|
|
/* [out] */ void **buffer);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetTimecode )(
|
|
IDeckLinkVideoInputFrame_v7_6 * This,
|
|
BMDTimecodeFormat format,
|
|
/* [out] */ IDeckLinkTimecode_v7_6 **timecode);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetAncillaryData )(
|
|
IDeckLinkVideoInputFrame_v7_6 * This,
|
|
/* [out] */ IDeckLinkVideoFrameAncillary **ancillary);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetStreamTime )(
|
|
IDeckLinkVideoInputFrame_v7_6 * This,
|
|
/* [out] */ BMDTimeValue *frameTime,
|
|
/* [out] */ BMDTimeValue *frameDuration,
|
|
BMDTimeScale timeScale);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetHardwareReferenceTimestamp )(
|
|
IDeckLinkVideoInputFrame_v7_6 * This,
|
|
BMDTimeScale timeScale,
|
|
/* [out] */ BMDTimeValue *frameTime,
|
|
/* [out] */ BMDTimeValue *frameDuration);
|
|
|
|
END_INTERFACE
|
|
} IDeckLinkVideoInputFrame_v7_6Vtbl;
|
|
|
|
interface IDeckLinkVideoInputFrame_v7_6
|
|
{
|
|
CONST_VTBL struct IDeckLinkVideoInputFrame_v7_6Vtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IDeckLinkVideoInputFrame_v7_6_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IDeckLinkVideoInputFrame_v7_6_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IDeckLinkVideoInputFrame_v7_6_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IDeckLinkVideoInputFrame_v7_6_GetWidth(This) \
|
|
( (This)->lpVtbl -> GetWidth(This) )
|
|
|
|
#define IDeckLinkVideoInputFrame_v7_6_GetHeight(This) \
|
|
( (This)->lpVtbl -> GetHeight(This) )
|
|
|
|
#define IDeckLinkVideoInputFrame_v7_6_GetRowBytes(This) \
|
|
( (This)->lpVtbl -> GetRowBytes(This) )
|
|
|
|
#define IDeckLinkVideoInputFrame_v7_6_GetPixelFormat(This) \
|
|
( (This)->lpVtbl -> GetPixelFormat(This) )
|
|
|
|
#define IDeckLinkVideoInputFrame_v7_6_GetFlags(This) \
|
|
( (This)->lpVtbl -> GetFlags(This) )
|
|
|
|
#define IDeckLinkVideoInputFrame_v7_6_GetBytes(This,buffer) \
|
|
( (This)->lpVtbl -> GetBytes(This,buffer) )
|
|
|
|
#define IDeckLinkVideoInputFrame_v7_6_GetTimecode(This,format,timecode) \
|
|
( (This)->lpVtbl -> GetTimecode(This,format,timecode) )
|
|
|
|
#define IDeckLinkVideoInputFrame_v7_6_GetAncillaryData(This,ancillary) \
|
|
( (This)->lpVtbl -> GetAncillaryData(This,ancillary) )
|
|
|
|
|
|
#define IDeckLinkVideoInputFrame_v7_6_GetStreamTime(This,frameTime,frameDuration,timeScale) \
|
|
( (This)->lpVtbl -> GetStreamTime(This,frameTime,frameDuration,timeScale) )
|
|
|
|
#define IDeckLinkVideoInputFrame_v7_6_GetHardwareReferenceTimestamp(This,timeScale,frameTime,frameDuration) \
|
|
( (This)->lpVtbl -> GetHardwareReferenceTimestamp(This,timeScale,frameTime,frameDuration) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IDeckLinkVideoInputFrame_v7_6_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IDeckLinkScreenPreviewCallback_v7_6_INTERFACE_DEFINED__
|
|
#define __IDeckLinkScreenPreviewCallback_v7_6_INTERFACE_DEFINED__
|
|
|
|
/* interface IDeckLinkScreenPreviewCallback_v7_6 */
|
|
/* [helpstring][local][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IDeckLinkScreenPreviewCallback_v7_6;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("373F499D-4B4D-4518-AD22-6354E5A5825E")
|
|
IDeckLinkScreenPreviewCallback_v7_6 : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE DrawFrame(
|
|
/* [in] */ IDeckLinkVideoFrame_v7_6 *theFrame) = 0;
|
|
|
|
};
|
|
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IDeckLinkScreenPreviewCallback_v7_6Vtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IDeckLinkScreenPreviewCallback_v7_6 * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
_COM_Outptr_ void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IDeckLinkScreenPreviewCallback_v7_6 * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IDeckLinkScreenPreviewCallback_v7_6 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *DrawFrame )(
|
|
IDeckLinkScreenPreviewCallback_v7_6 * This,
|
|
/* [in] */ IDeckLinkVideoFrame_v7_6 *theFrame);
|
|
|
|
END_INTERFACE
|
|
} IDeckLinkScreenPreviewCallback_v7_6Vtbl;
|
|
|
|
interface IDeckLinkScreenPreviewCallback_v7_6
|
|
{
|
|
CONST_VTBL struct IDeckLinkScreenPreviewCallback_v7_6Vtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IDeckLinkScreenPreviewCallback_v7_6_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IDeckLinkScreenPreviewCallback_v7_6_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IDeckLinkScreenPreviewCallback_v7_6_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IDeckLinkScreenPreviewCallback_v7_6_DrawFrame(This,theFrame) \
|
|
( (This)->lpVtbl -> DrawFrame(This,theFrame) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IDeckLinkScreenPreviewCallback_v7_6_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IDeckLinkGLScreenPreviewHelper_v7_6_INTERFACE_DEFINED__
|
|
#define __IDeckLinkGLScreenPreviewHelper_v7_6_INTERFACE_DEFINED__
|
|
|
|
/* interface IDeckLinkGLScreenPreviewHelper_v7_6 */
|
|
/* [helpstring][local][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IDeckLinkGLScreenPreviewHelper_v7_6;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("BA575CD9-A15E-497B-B2C2-F9AFE7BE4EBA")
|
|
IDeckLinkGLScreenPreviewHelper_v7_6 : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE InitializeGL( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE PaintGL( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetFrame(
|
|
/* [in] */ IDeckLinkVideoFrame_v7_6 *theFrame) = 0;
|
|
|
|
};
|
|
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IDeckLinkGLScreenPreviewHelper_v7_6Vtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IDeckLinkGLScreenPreviewHelper_v7_6 * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
_COM_Outptr_ void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IDeckLinkGLScreenPreviewHelper_v7_6 * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IDeckLinkGLScreenPreviewHelper_v7_6 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *InitializeGL )(
|
|
IDeckLinkGLScreenPreviewHelper_v7_6 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *PaintGL )(
|
|
IDeckLinkGLScreenPreviewHelper_v7_6 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetFrame )(
|
|
IDeckLinkGLScreenPreviewHelper_v7_6 * This,
|
|
/* [in] */ IDeckLinkVideoFrame_v7_6 *theFrame);
|
|
|
|
END_INTERFACE
|
|
} IDeckLinkGLScreenPreviewHelper_v7_6Vtbl;
|
|
|
|
interface IDeckLinkGLScreenPreviewHelper_v7_6
|
|
{
|
|
CONST_VTBL struct IDeckLinkGLScreenPreviewHelper_v7_6Vtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IDeckLinkGLScreenPreviewHelper_v7_6_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IDeckLinkGLScreenPreviewHelper_v7_6_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IDeckLinkGLScreenPreviewHelper_v7_6_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IDeckLinkGLScreenPreviewHelper_v7_6_InitializeGL(This) \
|
|
( (This)->lpVtbl -> InitializeGL(This) )
|
|
|
|
#define IDeckLinkGLScreenPreviewHelper_v7_6_PaintGL(This) \
|
|
( (This)->lpVtbl -> PaintGL(This) )
|
|
|
|
#define IDeckLinkGLScreenPreviewHelper_v7_6_SetFrame(This,theFrame) \
|
|
( (This)->lpVtbl -> SetFrame(This,theFrame) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IDeckLinkGLScreenPreviewHelper_v7_6_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IDeckLinkVideoConversion_v7_6_INTERFACE_DEFINED__
|
|
#define __IDeckLinkVideoConversion_v7_6_INTERFACE_DEFINED__
|
|
|
|
/* interface IDeckLinkVideoConversion_v7_6 */
|
|
/* [helpstring][local][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IDeckLinkVideoConversion_v7_6;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("3EB504C9-F97D-40FE-A158-D407D48CB53B")
|
|
IDeckLinkVideoConversion_v7_6 : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE ConvertFrame(
|
|
/* [in] */ IDeckLinkVideoFrame_v7_6 *srcFrame,
|
|
/* [in] */ IDeckLinkVideoFrame_v7_6 *dstFrame) = 0;
|
|
|
|
};
|
|
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IDeckLinkVideoConversion_v7_6Vtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IDeckLinkVideoConversion_v7_6 * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
_COM_Outptr_ void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IDeckLinkVideoConversion_v7_6 * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IDeckLinkVideoConversion_v7_6 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *ConvertFrame )(
|
|
IDeckLinkVideoConversion_v7_6 * This,
|
|
/* [in] */ IDeckLinkVideoFrame_v7_6 *srcFrame,
|
|
/* [in] */ IDeckLinkVideoFrame_v7_6 *dstFrame);
|
|
|
|
END_INTERFACE
|
|
} IDeckLinkVideoConversion_v7_6Vtbl;
|
|
|
|
interface IDeckLinkVideoConversion_v7_6
|
|
{
|
|
CONST_VTBL struct IDeckLinkVideoConversion_v7_6Vtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IDeckLinkVideoConversion_v7_6_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IDeckLinkVideoConversion_v7_6_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IDeckLinkVideoConversion_v7_6_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IDeckLinkVideoConversion_v7_6_ConvertFrame(This,srcFrame,dstFrame) \
|
|
( (This)->lpVtbl -> ConvertFrame(This,srcFrame,dstFrame) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IDeckLinkVideoConversion_v7_6_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IDeckLinkConfiguration_v7_6_INTERFACE_DEFINED__
|
|
#define __IDeckLinkConfiguration_v7_6_INTERFACE_DEFINED__
|
|
|
|
/* interface IDeckLinkConfiguration_v7_6 */
|
|
/* [helpstring][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IDeckLinkConfiguration_v7_6;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("B8EAD569-B764-47F0-A73F-AE40DF6CBF10")
|
|
IDeckLinkConfiguration_v7_6 : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE GetConfigurationValidator(
|
|
/* [out] */ IDeckLinkConfiguration_v7_6 **configObject) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE WriteConfigurationToPreferences( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetVideoOutputFormat(
|
|
/* [in] */ BMDVideoConnection_v7_6 videoOutputConnection) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE IsVideoOutputActive(
|
|
/* [in] */ BMDVideoConnection_v7_6 videoOutputConnection,
|
|
/* [out] */ BOOL *active) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetAnalogVideoOutputFlags(
|
|
/* [in] */ BMDAnalogVideoFlags analogVideoFlags) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetAnalogVideoOutputFlags(
|
|
/* [out] */ BMDAnalogVideoFlags *analogVideoFlags) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE EnableFieldFlickerRemovalWhenPaused(
|
|
/* [in] */ BOOL enable) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE IsEnabledFieldFlickerRemovalWhenPaused(
|
|
/* [out] */ BOOL *enabled) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE Set444And3GBpsVideoOutput(
|
|
/* [in] */ BOOL enable444VideoOutput,
|
|
/* [in] */ BOOL enable3GbsOutput) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE Get444And3GBpsVideoOutput(
|
|
/* [out] */ BOOL *is444VideoOutputEnabled,
|
|
/* [out] */ BOOL *threeGbsOutputEnabled) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetVideoOutputConversionMode(
|
|
/* [in] */ BMDVideoOutputConversionMode conversionMode) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetVideoOutputConversionMode(
|
|
/* [out] */ BMDVideoOutputConversionMode *conversionMode) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE Set_HD1080p24_to_HD1080i5994_Conversion(
|
|
/* [in] */ BOOL enable) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE Get_HD1080p24_to_HD1080i5994_Conversion(
|
|
/* [out] */ BOOL *enabled) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetVideoInputFormat(
|
|
/* [in] */ BMDVideoConnection_v7_6 videoInputFormat) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetVideoInputFormat(
|
|
/* [out] */ BMDVideoConnection_v7_6 *videoInputFormat) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetAnalogVideoInputFlags(
|
|
/* [in] */ BMDAnalogVideoFlags analogVideoFlags) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetAnalogVideoInputFlags(
|
|
/* [out] */ BMDAnalogVideoFlags *analogVideoFlags) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetVideoInputConversionMode(
|
|
/* [in] */ BMDVideoInputConversionMode conversionMode) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetVideoInputConversionMode(
|
|
/* [out] */ BMDVideoInputConversionMode *conversionMode) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetBlackVideoOutputDuringCapture(
|
|
/* [in] */ BOOL blackOutInCapture) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetBlackVideoOutputDuringCapture(
|
|
/* [out] */ BOOL *blackOutInCapture) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE Set32PulldownSequenceInitialTimecodeFrame(
|
|
/* [in] */ unsigned int aFrameTimecode) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE Get32PulldownSequenceInitialTimecodeFrame(
|
|
/* [out] */ unsigned int *aFrameTimecode) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetVancSourceLineMapping(
|
|
/* [in] */ unsigned int activeLine1VANCsource,
|
|
/* [in] */ unsigned int activeLine2VANCsource,
|
|
/* [in] */ unsigned int activeLine3VANCsource) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetVancSourceLineMapping(
|
|
/* [out] */ unsigned int *activeLine1VANCsource,
|
|
/* [out] */ unsigned int *activeLine2VANCsource,
|
|
/* [out] */ unsigned int *activeLine3VANCsource) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetAudioInputFormat(
|
|
/* [in] */ BMDAudioConnection_v10_2 audioInputFormat) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetAudioInputFormat(
|
|
/* [out] */ BMDAudioConnection_v10_2 *audioInputFormat) = 0;
|
|
|
|
};
|
|
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IDeckLinkConfiguration_v7_6Vtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IDeckLinkConfiguration_v7_6 * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
_COM_Outptr_ void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IDeckLinkConfiguration_v7_6 * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IDeckLinkConfiguration_v7_6 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetConfigurationValidator )(
|
|
IDeckLinkConfiguration_v7_6 * This,
|
|
/* [out] */ IDeckLinkConfiguration_v7_6 **configObject);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *WriteConfigurationToPreferences )(
|
|
IDeckLinkConfiguration_v7_6 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetVideoOutputFormat )(
|
|
IDeckLinkConfiguration_v7_6 * This,
|
|
/* [in] */ BMDVideoConnection_v7_6 videoOutputConnection);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *IsVideoOutputActive )(
|
|
IDeckLinkConfiguration_v7_6 * This,
|
|
/* [in] */ BMDVideoConnection_v7_6 videoOutputConnection,
|
|
/* [out] */ BOOL *active);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetAnalogVideoOutputFlags )(
|
|
IDeckLinkConfiguration_v7_6 * This,
|
|
/* [in] */ BMDAnalogVideoFlags analogVideoFlags);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetAnalogVideoOutputFlags )(
|
|
IDeckLinkConfiguration_v7_6 * This,
|
|
/* [out] */ BMDAnalogVideoFlags *analogVideoFlags);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *EnableFieldFlickerRemovalWhenPaused )(
|
|
IDeckLinkConfiguration_v7_6 * This,
|
|
/* [in] */ BOOL enable);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *IsEnabledFieldFlickerRemovalWhenPaused )(
|
|
IDeckLinkConfiguration_v7_6 * This,
|
|
/* [out] */ BOOL *enabled);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *Set444And3GBpsVideoOutput )(
|
|
IDeckLinkConfiguration_v7_6 * This,
|
|
/* [in] */ BOOL enable444VideoOutput,
|
|
/* [in] */ BOOL enable3GbsOutput);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *Get444And3GBpsVideoOutput )(
|
|
IDeckLinkConfiguration_v7_6 * This,
|
|
/* [out] */ BOOL *is444VideoOutputEnabled,
|
|
/* [out] */ BOOL *threeGbsOutputEnabled);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetVideoOutputConversionMode )(
|
|
IDeckLinkConfiguration_v7_6 * This,
|
|
/* [in] */ BMDVideoOutputConversionMode conversionMode);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetVideoOutputConversionMode )(
|
|
IDeckLinkConfiguration_v7_6 * This,
|
|
/* [out] */ BMDVideoOutputConversionMode *conversionMode);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *Set_HD1080p24_to_HD1080i5994_Conversion )(
|
|
IDeckLinkConfiguration_v7_6 * This,
|
|
/* [in] */ BOOL enable);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *Get_HD1080p24_to_HD1080i5994_Conversion )(
|
|
IDeckLinkConfiguration_v7_6 * This,
|
|
/* [out] */ BOOL *enabled);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetVideoInputFormat )(
|
|
IDeckLinkConfiguration_v7_6 * This,
|
|
/* [in] */ BMDVideoConnection_v7_6 videoInputFormat);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetVideoInputFormat )(
|
|
IDeckLinkConfiguration_v7_6 * This,
|
|
/* [out] */ BMDVideoConnection_v7_6 *videoInputFormat);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetAnalogVideoInputFlags )(
|
|
IDeckLinkConfiguration_v7_6 * This,
|
|
/* [in] */ BMDAnalogVideoFlags analogVideoFlags);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetAnalogVideoInputFlags )(
|
|
IDeckLinkConfiguration_v7_6 * This,
|
|
/* [out] */ BMDAnalogVideoFlags *analogVideoFlags);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetVideoInputConversionMode )(
|
|
IDeckLinkConfiguration_v7_6 * This,
|
|
/* [in] */ BMDVideoInputConversionMode conversionMode);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetVideoInputConversionMode )(
|
|
IDeckLinkConfiguration_v7_6 * This,
|
|
/* [out] */ BMDVideoInputConversionMode *conversionMode);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetBlackVideoOutputDuringCapture )(
|
|
IDeckLinkConfiguration_v7_6 * This,
|
|
/* [in] */ BOOL blackOutInCapture);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetBlackVideoOutputDuringCapture )(
|
|
IDeckLinkConfiguration_v7_6 * This,
|
|
/* [out] */ BOOL *blackOutInCapture);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *Set32PulldownSequenceInitialTimecodeFrame )(
|
|
IDeckLinkConfiguration_v7_6 * This,
|
|
/* [in] */ unsigned int aFrameTimecode);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *Get32PulldownSequenceInitialTimecodeFrame )(
|
|
IDeckLinkConfiguration_v7_6 * This,
|
|
/* [out] */ unsigned int *aFrameTimecode);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetVancSourceLineMapping )(
|
|
IDeckLinkConfiguration_v7_6 * This,
|
|
/* [in] */ unsigned int activeLine1VANCsource,
|
|
/* [in] */ unsigned int activeLine2VANCsource,
|
|
/* [in] */ unsigned int activeLine3VANCsource);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetVancSourceLineMapping )(
|
|
IDeckLinkConfiguration_v7_6 * This,
|
|
/* [out] */ unsigned int *activeLine1VANCsource,
|
|
/* [out] */ unsigned int *activeLine2VANCsource,
|
|
/* [out] */ unsigned int *activeLine3VANCsource);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetAudioInputFormat )(
|
|
IDeckLinkConfiguration_v7_6 * This,
|
|
/* [in] */ BMDAudioConnection_v10_2 audioInputFormat);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetAudioInputFormat )(
|
|
IDeckLinkConfiguration_v7_6 * This,
|
|
/* [out] */ BMDAudioConnection_v10_2 *audioInputFormat);
|
|
|
|
END_INTERFACE
|
|
} IDeckLinkConfiguration_v7_6Vtbl;
|
|
|
|
interface IDeckLinkConfiguration_v7_6
|
|
{
|
|
CONST_VTBL struct IDeckLinkConfiguration_v7_6Vtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IDeckLinkConfiguration_v7_6_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IDeckLinkConfiguration_v7_6_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IDeckLinkConfiguration_v7_6_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IDeckLinkConfiguration_v7_6_GetConfigurationValidator(This,configObject) \
|
|
( (This)->lpVtbl -> GetConfigurationValidator(This,configObject) )
|
|
|
|
#define IDeckLinkConfiguration_v7_6_WriteConfigurationToPreferences(This) \
|
|
( (This)->lpVtbl -> WriteConfigurationToPreferences(This) )
|
|
|
|
#define IDeckLinkConfiguration_v7_6_SetVideoOutputFormat(This,videoOutputConnection) \
|
|
( (This)->lpVtbl -> SetVideoOutputFormat(This,videoOutputConnection) )
|
|
|
|
#define IDeckLinkConfiguration_v7_6_IsVideoOutputActive(This,videoOutputConnection,active) \
|
|
( (This)->lpVtbl -> IsVideoOutputActive(This,videoOutputConnection,active) )
|
|
|
|
#define IDeckLinkConfiguration_v7_6_SetAnalogVideoOutputFlags(This,analogVideoFlags) \
|
|
( (This)->lpVtbl -> SetAnalogVideoOutputFlags(This,analogVideoFlags) )
|
|
|
|
#define IDeckLinkConfiguration_v7_6_GetAnalogVideoOutputFlags(This,analogVideoFlags) \
|
|
( (This)->lpVtbl -> GetAnalogVideoOutputFlags(This,analogVideoFlags) )
|
|
|
|
#define IDeckLinkConfiguration_v7_6_EnableFieldFlickerRemovalWhenPaused(This,enable) \
|
|
( (This)->lpVtbl -> EnableFieldFlickerRemovalWhenPaused(This,enable) )
|
|
|
|
#define IDeckLinkConfiguration_v7_6_IsEnabledFieldFlickerRemovalWhenPaused(This,enabled) \
|
|
( (This)->lpVtbl -> IsEnabledFieldFlickerRemovalWhenPaused(This,enabled) )
|
|
|
|
#define IDeckLinkConfiguration_v7_6_Set444And3GBpsVideoOutput(This,enable444VideoOutput,enable3GbsOutput) \
|
|
( (This)->lpVtbl -> Set444And3GBpsVideoOutput(This,enable444VideoOutput,enable3GbsOutput) )
|
|
|
|
#define IDeckLinkConfiguration_v7_6_Get444And3GBpsVideoOutput(This,is444VideoOutputEnabled,threeGbsOutputEnabled) \
|
|
( (This)->lpVtbl -> Get444And3GBpsVideoOutput(This,is444VideoOutputEnabled,threeGbsOutputEnabled) )
|
|
|
|
#define IDeckLinkConfiguration_v7_6_SetVideoOutputConversionMode(This,conversionMode) \
|
|
( (This)->lpVtbl -> SetVideoOutputConversionMode(This,conversionMode) )
|
|
|
|
#define IDeckLinkConfiguration_v7_6_GetVideoOutputConversionMode(This,conversionMode) \
|
|
( (This)->lpVtbl -> GetVideoOutputConversionMode(This,conversionMode) )
|
|
|
|
#define IDeckLinkConfiguration_v7_6_Set_HD1080p24_to_HD1080i5994_Conversion(This,enable) \
|
|
( (This)->lpVtbl -> Set_HD1080p24_to_HD1080i5994_Conversion(This,enable) )
|
|
|
|
#define IDeckLinkConfiguration_v7_6_Get_HD1080p24_to_HD1080i5994_Conversion(This,enabled) \
|
|
( (This)->lpVtbl -> Get_HD1080p24_to_HD1080i5994_Conversion(This,enabled) )
|
|
|
|
#define IDeckLinkConfiguration_v7_6_SetVideoInputFormat(This,videoInputFormat) \
|
|
( (This)->lpVtbl -> SetVideoInputFormat(This,videoInputFormat) )
|
|
|
|
#define IDeckLinkConfiguration_v7_6_GetVideoInputFormat(This,videoInputFormat) \
|
|
( (This)->lpVtbl -> GetVideoInputFormat(This,videoInputFormat) )
|
|
|
|
#define IDeckLinkConfiguration_v7_6_SetAnalogVideoInputFlags(This,analogVideoFlags) \
|
|
( (This)->lpVtbl -> SetAnalogVideoInputFlags(This,analogVideoFlags) )
|
|
|
|
#define IDeckLinkConfiguration_v7_6_GetAnalogVideoInputFlags(This,analogVideoFlags) \
|
|
( (This)->lpVtbl -> GetAnalogVideoInputFlags(This,analogVideoFlags) )
|
|
|
|
#define IDeckLinkConfiguration_v7_6_SetVideoInputConversionMode(This,conversionMode) \
|
|
( (This)->lpVtbl -> SetVideoInputConversionMode(This,conversionMode) )
|
|
|
|
#define IDeckLinkConfiguration_v7_6_GetVideoInputConversionMode(This,conversionMode) \
|
|
( (This)->lpVtbl -> GetVideoInputConversionMode(This,conversionMode) )
|
|
|
|
#define IDeckLinkConfiguration_v7_6_SetBlackVideoOutputDuringCapture(This,blackOutInCapture) \
|
|
( (This)->lpVtbl -> SetBlackVideoOutputDuringCapture(This,blackOutInCapture) )
|
|
|
|
#define IDeckLinkConfiguration_v7_6_GetBlackVideoOutputDuringCapture(This,blackOutInCapture) \
|
|
( (This)->lpVtbl -> GetBlackVideoOutputDuringCapture(This,blackOutInCapture) )
|
|
|
|
#define IDeckLinkConfiguration_v7_6_Set32PulldownSequenceInitialTimecodeFrame(This,aFrameTimecode) \
|
|
( (This)->lpVtbl -> Set32PulldownSequenceInitialTimecodeFrame(This,aFrameTimecode) )
|
|
|
|
#define IDeckLinkConfiguration_v7_6_Get32PulldownSequenceInitialTimecodeFrame(This,aFrameTimecode) \
|
|
( (This)->lpVtbl -> Get32PulldownSequenceInitialTimecodeFrame(This,aFrameTimecode) )
|
|
|
|
#define IDeckLinkConfiguration_v7_6_SetVancSourceLineMapping(This,activeLine1VANCsource,activeLine2VANCsource,activeLine3VANCsource) \
|
|
( (This)->lpVtbl -> SetVancSourceLineMapping(This,activeLine1VANCsource,activeLine2VANCsource,activeLine3VANCsource) )
|
|
|
|
#define IDeckLinkConfiguration_v7_6_GetVancSourceLineMapping(This,activeLine1VANCsource,activeLine2VANCsource,activeLine3VANCsource) \
|
|
( (This)->lpVtbl -> GetVancSourceLineMapping(This,activeLine1VANCsource,activeLine2VANCsource,activeLine3VANCsource) )
|
|
|
|
#define IDeckLinkConfiguration_v7_6_SetAudioInputFormat(This,audioInputFormat) \
|
|
( (This)->lpVtbl -> SetAudioInputFormat(This,audioInputFormat) )
|
|
|
|
#define IDeckLinkConfiguration_v7_6_GetAudioInputFormat(This,audioInputFormat) \
|
|
( (This)->lpVtbl -> GetAudioInputFormat(This,audioInputFormat) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IDeckLinkConfiguration_v7_6_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IDeckLinkVideoOutputCallback_v7_6_INTERFACE_DEFINED__
|
|
#define __IDeckLinkVideoOutputCallback_v7_6_INTERFACE_DEFINED__
|
|
|
|
/* interface IDeckLinkVideoOutputCallback_v7_6 */
|
|
/* [helpstring][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IDeckLinkVideoOutputCallback_v7_6;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("E763A626-4A3C-49D1-BF13-E7AD3692AE52")
|
|
IDeckLinkVideoOutputCallback_v7_6 : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE ScheduledFrameCompleted(
|
|
/* [in] */ IDeckLinkVideoFrame_v7_6 *completedFrame,
|
|
/* [in] */ BMDOutputFrameCompletionResult result) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE ScheduledPlaybackHasStopped( void) = 0;
|
|
|
|
};
|
|
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IDeckLinkVideoOutputCallback_v7_6Vtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IDeckLinkVideoOutputCallback_v7_6 * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
_COM_Outptr_ void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IDeckLinkVideoOutputCallback_v7_6 * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IDeckLinkVideoOutputCallback_v7_6 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *ScheduledFrameCompleted )(
|
|
IDeckLinkVideoOutputCallback_v7_6 * This,
|
|
/* [in] */ IDeckLinkVideoFrame_v7_6 *completedFrame,
|
|
/* [in] */ BMDOutputFrameCompletionResult result);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *ScheduledPlaybackHasStopped )(
|
|
IDeckLinkVideoOutputCallback_v7_6 * This);
|
|
|
|
END_INTERFACE
|
|
} IDeckLinkVideoOutputCallback_v7_6Vtbl;
|
|
|
|
interface IDeckLinkVideoOutputCallback_v7_6
|
|
{
|
|
CONST_VTBL struct IDeckLinkVideoOutputCallback_v7_6Vtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IDeckLinkVideoOutputCallback_v7_6_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IDeckLinkVideoOutputCallback_v7_6_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IDeckLinkVideoOutputCallback_v7_6_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IDeckLinkVideoOutputCallback_v7_6_ScheduledFrameCompleted(This,completedFrame,result) \
|
|
( (This)->lpVtbl -> ScheduledFrameCompleted(This,completedFrame,result) )
|
|
|
|
#define IDeckLinkVideoOutputCallback_v7_6_ScheduledPlaybackHasStopped(This) \
|
|
( (This)->lpVtbl -> ScheduledPlaybackHasStopped(This) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IDeckLinkVideoOutputCallback_v7_6_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IDeckLinkInputCallback_v7_6_INTERFACE_DEFINED__
|
|
#define __IDeckLinkInputCallback_v7_6_INTERFACE_DEFINED__
|
|
|
|
/* interface IDeckLinkInputCallback_v7_6 */
|
|
/* [helpstring][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IDeckLinkInputCallback_v7_6;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("31D28EE7-88B6-4CB1-897A-CDBF79A26414")
|
|
IDeckLinkInputCallback_v7_6 : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE VideoInputFormatChanged(
|
|
/* [in] */ BMDVideoInputFormatChangedEvents notificationEvents,
|
|
/* [in] */ IDeckLinkDisplayMode_v7_6 *newDisplayMode,
|
|
/* [in] */ BMDDetectedVideoInputFormatFlags detectedSignalFlags) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE VideoInputFrameArrived(
|
|
/* [in] */ IDeckLinkVideoInputFrame_v7_6 *videoFrame,
|
|
/* [in] */ IDeckLinkAudioInputPacket *audioPacket) = 0;
|
|
|
|
};
|
|
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IDeckLinkInputCallback_v7_6Vtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IDeckLinkInputCallback_v7_6 * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
_COM_Outptr_ void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IDeckLinkInputCallback_v7_6 * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IDeckLinkInputCallback_v7_6 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *VideoInputFormatChanged )(
|
|
IDeckLinkInputCallback_v7_6 * This,
|
|
/* [in] */ BMDVideoInputFormatChangedEvents notificationEvents,
|
|
/* [in] */ IDeckLinkDisplayMode_v7_6 *newDisplayMode,
|
|
/* [in] */ BMDDetectedVideoInputFormatFlags detectedSignalFlags);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *VideoInputFrameArrived )(
|
|
IDeckLinkInputCallback_v7_6 * This,
|
|
/* [in] */ IDeckLinkVideoInputFrame_v7_6 *videoFrame,
|
|
/* [in] */ IDeckLinkAudioInputPacket *audioPacket);
|
|
|
|
END_INTERFACE
|
|
} IDeckLinkInputCallback_v7_6Vtbl;
|
|
|
|
interface IDeckLinkInputCallback_v7_6
|
|
{
|
|
CONST_VTBL struct IDeckLinkInputCallback_v7_6Vtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IDeckLinkInputCallback_v7_6_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IDeckLinkInputCallback_v7_6_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IDeckLinkInputCallback_v7_6_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IDeckLinkInputCallback_v7_6_VideoInputFormatChanged(This,notificationEvents,newDisplayMode,detectedSignalFlags) \
|
|
( (This)->lpVtbl -> VideoInputFormatChanged(This,notificationEvents,newDisplayMode,detectedSignalFlags) )
|
|
|
|
#define IDeckLinkInputCallback_v7_6_VideoInputFrameArrived(This,videoFrame,audioPacket) \
|
|
( (This)->lpVtbl -> VideoInputFrameArrived(This,videoFrame,audioPacket) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IDeckLinkInputCallback_v7_6_INTERFACE_DEFINED__ */
|
|
|
|
|
|
EXTERN_C const CLSID CLSID_CDeckLinkGLScreenPreviewHelper_v7_6;
|
|
|
|
#ifdef __cplusplus
|
|
|
|
class DECLSPEC_UUID("D398CEE7-4434-4CA3-9BA6-5AE34556B905")
|
|
CDeckLinkGLScreenPreviewHelper_v7_6;
|
|
#endif
|
|
|
|
EXTERN_C const CLSID CLSID_CDeckLinkVideoConversion_v7_6;
|
|
|
|
#ifdef __cplusplus
|
|
|
|
class DECLSPEC_UUID("FFA84F77-73BE-4FB7-B03E-B5E44B9F759B")
|
|
CDeckLinkVideoConversion_v7_6;
|
|
#endif
|
|
|
|
#ifndef __IDeckLinkInputCallback_v7_3_INTERFACE_DEFINED__
|
|
#define __IDeckLinkInputCallback_v7_3_INTERFACE_DEFINED__
|
|
|
|
/* interface IDeckLinkInputCallback_v7_3 */
|
|
/* [helpstring][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IDeckLinkInputCallback_v7_3;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("FD6F311D-4D00-444B-9ED4-1F25B5730AD0")
|
|
IDeckLinkInputCallback_v7_3 : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE VideoInputFormatChanged(
|
|
/* [in] */ BMDVideoInputFormatChangedEvents notificationEvents,
|
|
/* [in] */ IDeckLinkDisplayMode_v7_6 *newDisplayMode,
|
|
/* [in] */ BMDDetectedVideoInputFormatFlags detectedSignalFlags) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE VideoInputFrameArrived(
|
|
/* [in] */ IDeckLinkVideoInputFrame_v7_3 *videoFrame,
|
|
/* [in] */ IDeckLinkAudioInputPacket *audioPacket) = 0;
|
|
|
|
};
|
|
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IDeckLinkInputCallback_v7_3Vtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IDeckLinkInputCallback_v7_3 * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
_COM_Outptr_ void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IDeckLinkInputCallback_v7_3 * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IDeckLinkInputCallback_v7_3 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *VideoInputFormatChanged )(
|
|
IDeckLinkInputCallback_v7_3 * This,
|
|
/* [in] */ BMDVideoInputFormatChangedEvents notificationEvents,
|
|
/* [in] */ IDeckLinkDisplayMode_v7_6 *newDisplayMode,
|
|
/* [in] */ BMDDetectedVideoInputFormatFlags detectedSignalFlags);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *VideoInputFrameArrived )(
|
|
IDeckLinkInputCallback_v7_3 * This,
|
|
/* [in] */ IDeckLinkVideoInputFrame_v7_3 *videoFrame,
|
|
/* [in] */ IDeckLinkAudioInputPacket *audioPacket);
|
|
|
|
END_INTERFACE
|
|
} IDeckLinkInputCallback_v7_3Vtbl;
|
|
|
|
interface IDeckLinkInputCallback_v7_3
|
|
{
|
|
CONST_VTBL struct IDeckLinkInputCallback_v7_3Vtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IDeckLinkInputCallback_v7_3_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IDeckLinkInputCallback_v7_3_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IDeckLinkInputCallback_v7_3_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IDeckLinkInputCallback_v7_3_VideoInputFormatChanged(This,notificationEvents,newDisplayMode,detectedSignalFlags) \
|
|
( (This)->lpVtbl -> VideoInputFormatChanged(This,notificationEvents,newDisplayMode,detectedSignalFlags) )
|
|
|
|
#define IDeckLinkInputCallback_v7_3_VideoInputFrameArrived(This,videoFrame,audioPacket) \
|
|
( (This)->lpVtbl -> VideoInputFrameArrived(This,videoFrame,audioPacket) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IDeckLinkInputCallback_v7_3_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IDeckLinkOutput_v7_3_INTERFACE_DEFINED__
|
|
#define __IDeckLinkOutput_v7_3_INTERFACE_DEFINED__
|
|
|
|
/* interface IDeckLinkOutput_v7_3 */
|
|
/* [helpstring][local][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IDeckLinkOutput_v7_3;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("271C65E3-C323-4344-A30F-D908BCB20AA3")
|
|
IDeckLinkOutput_v7_3 : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE DoesSupportVideoMode(
|
|
BMDDisplayMode displayMode,
|
|
BMDPixelFormat pixelFormat,
|
|
/* [out] */ BMDDisplayModeSupport *result) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetDisplayModeIterator(
|
|
/* [out] */ IDeckLinkDisplayModeIterator_v7_6 **iterator) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetScreenPreviewCallback(
|
|
/* [in] */ IDeckLinkScreenPreviewCallback *previewCallback) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE EnableVideoOutput(
|
|
BMDDisplayMode displayMode,
|
|
BMDVideoOutputFlags flags) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE DisableVideoOutput( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetVideoOutputFrameMemoryAllocator(
|
|
/* [in] */ IDeckLinkMemoryAllocator *theAllocator) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE CreateVideoFrame(
|
|
int width,
|
|
int height,
|
|
int rowBytes,
|
|
BMDPixelFormat pixelFormat,
|
|
BMDFrameFlags flags,
|
|
/* [out] */ IDeckLinkMutableVideoFrame_v7_6 **outFrame) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE CreateAncillaryData(
|
|
BMDPixelFormat pixelFormat,
|
|
/* [out] */ IDeckLinkVideoFrameAncillary **outBuffer) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE DisplayVideoFrameSync(
|
|
/* [in] */ IDeckLinkVideoFrame_v7_6 *theFrame) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE ScheduleVideoFrame(
|
|
/* [in] */ IDeckLinkVideoFrame_v7_6 *theFrame,
|
|
BMDTimeValue displayTime,
|
|
BMDTimeValue displayDuration,
|
|
BMDTimeScale timeScale) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetScheduledFrameCompletionCallback(
|
|
/* [in] */ IDeckLinkVideoOutputCallback *theCallback) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetBufferedVideoFrameCount(
|
|
/* [out] */ unsigned int *bufferedFrameCount) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE EnableAudioOutput(
|
|
BMDAudioSampleRate sampleRate,
|
|
BMDAudioSampleType sampleType,
|
|
unsigned int channelCount,
|
|
BMDAudioOutputStreamType streamType) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE DisableAudioOutput( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE WriteAudioSamplesSync(
|
|
/* [in] */ void *buffer,
|
|
unsigned int sampleFrameCount,
|
|
/* [out] */ unsigned int *sampleFramesWritten) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE BeginAudioPreroll( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE EndAudioPreroll( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE ScheduleAudioSamples(
|
|
/* [in] */ void *buffer,
|
|
unsigned int sampleFrameCount,
|
|
BMDTimeValue streamTime,
|
|
BMDTimeScale timeScale,
|
|
/* [out] */ unsigned int *sampleFramesWritten) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetBufferedAudioSampleFrameCount(
|
|
/* [out] */ unsigned int *bufferedSampleFrameCount) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE FlushBufferedAudioSamples( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetAudioCallback(
|
|
/* [in] */ IDeckLinkAudioOutputCallback *theCallback) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE StartScheduledPlayback(
|
|
BMDTimeValue playbackStartTime,
|
|
BMDTimeScale timeScale,
|
|
double playbackSpeed) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE StopScheduledPlayback(
|
|
BMDTimeValue stopPlaybackAtTime,
|
|
/* [out] */ BMDTimeValue *actualStopTime,
|
|
BMDTimeScale timeScale) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE IsScheduledPlaybackRunning(
|
|
/* [out] */ BOOL *active) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetHardwareReferenceClock(
|
|
BMDTimeScale desiredTimeScale,
|
|
/* [out] */ BMDTimeValue *elapsedTimeSinceSchedulerBegan) = 0;
|
|
|
|
};
|
|
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IDeckLinkOutput_v7_3Vtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IDeckLinkOutput_v7_3 * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
_COM_Outptr_ void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IDeckLinkOutput_v7_3 * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IDeckLinkOutput_v7_3 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *DoesSupportVideoMode )(
|
|
IDeckLinkOutput_v7_3 * This,
|
|
BMDDisplayMode displayMode,
|
|
BMDPixelFormat pixelFormat,
|
|
/* [out] */ BMDDisplayModeSupport *result);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetDisplayModeIterator )(
|
|
IDeckLinkOutput_v7_3 * This,
|
|
/* [out] */ IDeckLinkDisplayModeIterator_v7_6 **iterator);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetScreenPreviewCallback )(
|
|
IDeckLinkOutput_v7_3 * This,
|
|
/* [in] */ IDeckLinkScreenPreviewCallback *previewCallback);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *EnableVideoOutput )(
|
|
IDeckLinkOutput_v7_3 * This,
|
|
BMDDisplayMode displayMode,
|
|
BMDVideoOutputFlags flags);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *DisableVideoOutput )(
|
|
IDeckLinkOutput_v7_3 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetVideoOutputFrameMemoryAllocator )(
|
|
IDeckLinkOutput_v7_3 * This,
|
|
/* [in] */ IDeckLinkMemoryAllocator *theAllocator);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *CreateVideoFrame )(
|
|
IDeckLinkOutput_v7_3 * This,
|
|
int width,
|
|
int height,
|
|
int rowBytes,
|
|
BMDPixelFormat pixelFormat,
|
|
BMDFrameFlags flags,
|
|
/* [out] */ IDeckLinkMutableVideoFrame_v7_6 **outFrame);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *CreateAncillaryData )(
|
|
IDeckLinkOutput_v7_3 * This,
|
|
BMDPixelFormat pixelFormat,
|
|
/* [out] */ IDeckLinkVideoFrameAncillary **outBuffer);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *DisplayVideoFrameSync )(
|
|
IDeckLinkOutput_v7_3 * This,
|
|
/* [in] */ IDeckLinkVideoFrame_v7_6 *theFrame);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *ScheduleVideoFrame )(
|
|
IDeckLinkOutput_v7_3 * This,
|
|
/* [in] */ IDeckLinkVideoFrame_v7_6 *theFrame,
|
|
BMDTimeValue displayTime,
|
|
BMDTimeValue displayDuration,
|
|
BMDTimeScale timeScale);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetScheduledFrameCompletionCallback )(
|
|
IDeckLinkOutput_v7_3 * This,
|
|
/* [in] */ IDeckLinkVideoOutputCallback *theCallback);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetBufferedVideoFrameCount )(
|
|
IDeckLinkOutput_v7_3 * This,
|
|
/* [out] */ unsigned int *bufferedFrameCount);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *EnableAudioOutput )(
|
|
IDeckLinkOutput_v7_3 * This,
|
|
BMDAudioSampleRate sampleRate,
|
|
BMDAudioSampleType sampleType,
|
|
unsigned int channelCount,
|
|
BMDAudioOutputStreamType streamType);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *DisableAudioOutput )(
|
|
IDeckLinkOutput_v7_3 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *WriteAudioSamplesSync )(
|
|
IDeckLinkOutput_v7_3 * This,
|
|
/* [in] */ void *buffer,
|
|
unsigned int sampleFrameCount,
|
|
/* [out] */ unsigned int *sampleFramesWritten);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *BeginAudioPreroll )(
|
|
IDeckLinkOutput_v7_3 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *EndAudioPreroll )(
|
|
IDeckLinkOutput_v7_3 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *ScheduleAudioSamples )(
|
|
IDeckLinkOutput_v7_3 * This,
|
|
/* [in] */ void *buffer,
|
|
unsigned int sampleFrameCount,
|
|
BMDTimeValue streamTime,
|
|
BMDTimeScale timeScale,
|
|
/* [out] */ unsigned int *sampleFramesWritten);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetBufferedAudioSampleFrameCount )(
|
|
IDeckLinkOutput_v7_3 * This,
|
|
/* [out] */ unsigned int *bufferedSampleFrameCount);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *FlushBufferedAudioSamples )(
|
|
IDeckLinkOutput_v7_3 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetAudioCallback )(
|
|
IDeckLinkOutput_v7_3 * This,
|
|
/* [in] */ IDeckLinkAudioOutputCallback *theCallback);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *StartScheduledPlayback )(
|
|
IDeckLinkOutput_v7_3 * This,
|
|
BMDTimeValue playbackStartTime,
|
|
BMDTimeScale timeScale,
|
|
double playbackSpeed);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *StopScheduledPlayback )(
|
|
IDeckLinkOutput_v7_3 * This,
|
|
BMDTimeValue stopPlaybackAtTime,
|
|
/* [out] */ BMDTimeValue *actualStopTime,
|
|
BMDTimeScale timeScale);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *IsScheduledPlaybackRunning )(
|
|
IDeckLinkOutput_v7_3 * This,
|
|
/* [out] */ BOOL *active);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetHardwareReferenceClock )(
|
|
IDeckLinkOutput_v7_3 * This,
|
|
BMDTimeScale desiredTimeScale,
|
|
/* [out] */ BMDTimeValue *elapsedTimeSinceSchedulerBegan);
|
|
|
|
END_INTERFACE
|
|
} IDeckLinkOutput_v7_3Vtbl;
|
|
|
|
interface IDeckLinkOutput_v7_3
|
|
{
|
|
CONST_VTBL struct IDeckLinkOutput_v7_3Vtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IDeckLinkOutput_v7_3_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IDeckLinkOutput_v7_3_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IDeckLinkOutput_v7_3_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IDeckLinkOutput_v7_3_DoesSupportVideoMode(This,displayMode,pixelFormat,result) \
|
|
( (This)->lpVtbl -> DoesSupportVideoMode(This,displayMode,pixelFormat,result) )
|
|
|
|
#define IDeckLinkOutput_v7_3_GetDisplayModeIterator(This,iterator) \
|
|
( (This)->lpVtbl -> GetDisplayModeIterator(This,iterator) )
|
|
|
|
#define IDeckLinkOutput_v7_3_SetScreenPreviewCallback(This,previewCallback) \
|
|
( (This)->lpVtbl -> SetScreenPreviewCallback(This,previewCallback) )
|
|
|
|
#define IDeckLinkOutput_v7_3_EnableVideoOutput(This,displayMode,flags) \
|
|
( (This)->lpVtbl -> EnableVideoOutput(This,displayMode,flags) )
|
|
|
|
#define IDeckLinkOutput_v7_3_DisableVideoOutput(This) \
|
|
( (This)->lpVtbl -> DisableVideoOutput(This) )
|
|
|
|
#define IDeckLinkOutput_v7_3_SetVideoOutputFrameMemoryAllocator(This,theAllocator) \
|
|
( (This)->lpVtbl -> SetVideoOutputFrameMemoryAllocator(This,theAllocator) )
|
|
|
|
#define IDeckLinkOutput_v7_3_CreateVideoFrame(This,width,height,rowBytes,pixelFormat,flags,outFrame) \
|
|
( (This)->lpVtbl -> CreateVideoFrame(This,width,height,rowBytes,pixelFormat,flags,outFrame) )
|
|
|
|
#define IDeckLinkOutput_v7_3_CreateAncillaryData(This,pixelFormat,outBuffer) \
|
|
( (This)->lpVtbl -> CreateAncillaryData(This,pixelFormat,outBuffer) )
|
|
|
|
#define IDeckLinkOutput_v7_3_DisplayVideoFrameSync(This,theFrame) \
|
|
( (This)->lpVtbl -> DisplayVideoFrameSync(This,theFrame) )
|
|
|
|
#define IDeckLinkOutput_v7_3_ScheduleVideoFrame(This,theFrame,displayTime,displayDuration,timeScale) \
|
|
( (This)->lpVtbl -> ScheduleVideoFrame(This,theFrame,displayTime,displayDuration,timeScale) )
|
|
|
|
#define IDeckLinkOutput_v7_3_SetScheduledFrameCompletionCallback(This,theCallback) \
|
|
( (This)->lpVtbl -> SetScheduledFrameCompletionCallback(This,theCallback) )
|
|
|
|
#define IDeckLinkOutput_v7_3_GetBufferedVideoFrameCount(This,bufferedFrameCount) \
|
|
( (This)->lpVtbl -> GetBufferedVideoFrameCount(This,bufferedFrameCount) )
|
|
|
|
#define IDeckLinkOutput_v7_3_EnableAudioOutput(This,sampleRate,sampleType,channelCount,streamType) \
|
|
( (This)->lpVtbl -> EnableAudioOutput(This,sampleRate,sampleType,channelCount,streamType) )
|
|
|
|
#define IDeckLinkOutput_v7_3_DisableAudioOutput(This) \
|
|
( (This)->lpVtbl -> DisableAudioOutput(This) )
|
|
|
|
#define IDeckLinkOutput_v7_3_WriteAudioSamplesSync(This,buffer,sampleFrameCount,sampleFramesWritten) \
|
|
( (This)->lpVtbl -> WriteAudioSamplesSync(This,buffer,sampleFrameCount,sampleFramesWritten) )
|
|
|
|
#define IDeckLinkOutput_v7_3_BeginAudioPreroll(This) \
|
|
( (This)->lpVtbl -> BeginAudioPreroll(This) )
|
|
|
|
#define IDeckLinkOutput_v7_3_EndAudioPreroll(This) \
|
|
( (This)->lpVtbl -> EndAudioPreroll(This) )
|
|
|
|
#define IDeckLinkOutput_v7_3_ScheduleAudioSamples(This,buffer,sampleFrameCount,streamTime,timeScale,sampleFramesWritten) \
|
|
( (This)->lpVtbl -> ScheduleAudioSamples(This,buffer,sampleFrameCount,streamTime,timeScale,sampleFramesWritten) )
|
|
|
|
#define IDeckLinkOutput_v7_3_GetBufferedAudioSampleFrameCount(This,bufferedSampleFrameCount) \
|
|
( (This)->lpVtbl -> GetBufferedAudioSampleFrameCount(This,bufferedSampleFrameCount) )
|
|
|
|
#define IDeckLinkOutput_v7_3_FlushBufferedAudioSamples(This) \
|
|
( (This)->lpVtbl -> FlushBufferedAudioSamples(This) )
|
|
|
|
#define IDeckLinkOutput_v7_3_SetAudioCallback(This,theCallback) \
|
|
( (This)->lpVtbl -> SetAudioCallback(This,theCallback) )
|
|
|
|
#define IDeckLinkOutput_v7_3_StartScheduledPlayback(This,playbackStartTime,timeScale,playbackSpeed) \
|
|
( (This)->lpVtbl -> StartScheduledPlayback(This,playbackStartTime,timeScale,playbackSpeed) )
|
|
|
|
#define IDeckLinkOutput_v7_3_StopScheduledPlayback(This,stopPlaybackAtTime,actualStopTime,timeScale) \
|
|
( (This)->lpVtbl -> StopScheduledPlayback(This,stopPlaybackAtTime,actualStopTime,timeScale) )
|
|
|
|
#define IDeckLinkOutput_v7_3_IsScheduledPlaybackRunning(This,active) \
|
|
( (This)->lpVtbl -> IsScheduledPlaybackRunning(This,active) )
|
|
|
|
#define IDeckLinkOutput_v7_3_GetHardwareReferenceClock(This,desiredTimeScale,elapsedTimeSinceSchedulerBegan) \
|
|
( (This)->lpVtbl -> GetHardwareReferenceClock(This,desiredTimeScale,elapsedTimeSinceSchedulerBegan) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IDeckLinkOutput_v7_3_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IDeckLinkInput_v7_3_INTERFACE_DEFINED__
|
|
#define __IDeckLinkInput_v7_3_INTERFACE_DEFINED__
|
|
|
|
/* interface IDeckLinkInput_v7_3 */
|
|
/* [helpstring][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IDeckLinkInput_v7_3;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("4973F012-9925-458C-871C-18774CDBBECB")
|
|
IDeckLinkInput_v7_3 : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE DoesSupportVideoMode(
|
|
BMDDisplayMode displayMode,
|
|
BMDPixelFormat pixelFormat,
|
|
/* [out] */ BMDDisplayModeSupport *result) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetDisplayModeIterator(
|
|
/* [out] */ IDeckLinkDisplayModeIterator_v7_6 **iterator) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetScreenPreviewCallback(
|
|
/* [in] */ IDeckLinkScreenPreviewCallback *previewCallback) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE EnableVideoInput(
|
|
BMDDisplayMode displayMode,
|
|
BMDPixelFormat pixelFormat,
|
|
BMDVideoInputFlags flags) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE DisableVideoInput( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetAvailableVideoFrameCount(
|
|
/* [out] */ unsigned int *availableFrameCount) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE EnableAudioInput(
|
|
BMDAudioSampleRate sampleRate,
|
|
BMDAudioSampleType sampleType,
|
|
unsigned int channelCount) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE DisableAudioInput( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetAvailableAudioSampleFrameCount(
|
|
/* [out] */ unsigned int *availableSampleFrameCount) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE StartStreams( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE StopStreams( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE PauseStreams( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE FlushStreams( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetCallback(
|
|
/* [in] */ IDeckLinkInputCallback_v7_3 *theCallback) = 0;
|
|
|
|
};
|
|
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IDeckLinkInput_v7_3Vtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IDeckLinkInput_v7_3 * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
_COM_Outptr_ void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IDeckLinkInput_v7_3 * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IDeckLinkInput_v7_3 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *DoesSupportVideoMode )(
|
|
IDeckLinkInput_v7_3 * This,
|
|
BMDDisplayMode displayMode,
|
|
BMDPixelFormat pixelFormat,
|
|
/* [out] */ BMDDisplayModeSupport *result);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetDisplayModeIterator )(
|
|
IDeckLinkInput_v7_3 * This,
|
|
/* [out] */ IDeckLinkDisplayModeIterator_v7_6 **iterator);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetScreenPreviewCallback )(
|
|
IDeckLinkInput_v7_3 * This,
|
|
/* [in] */ IDeckLinkScreenPreviewCallback *previewCallback);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *EnableVideoInput )(
|
|
IDeckLinkInput_v7_3 * This,
|
|
BMDDisplayMode displayMode,
|
|
BMDPixelFormat pixelFormat,
|
|
BMDVideoInputFlags flags);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *DisableVideoInput )(
|
|
IDeckLinkInput_v7_3 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetAvailableVideoFrameCount )(
|
|
IDeckLinkInput_v7_3 * This,
|
|
/* [out] */ unsigned int *availableFrameCount);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *EnableAudioInput )(
|
|
IDeckLinkInput_v7_3 * This,
|
|
BMDAudioSampleRate sampleRate,
|
|
BMDAudioSampleType sampleType,
|
|
unsigned int channelCount);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *DisableAudioInput )(
|
|
IDeckLinkInput_v7_3 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetAvailableAudioSampleFrameCount )(
|
|
IDeckLinkInput_v7_3 * This,
|
|
/* [out] */ unsigned int *availableSampleFrameCount);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *StartStreams )(
|
|
IDeckLinkInput_v7_3 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *StopStreams )(
|
|
IDeckLinkInput_v7_3 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *PauseStreams )(
|
|
IDeckLinkInput_v7_3 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *FlushStreams )(
|
|
IDeckLinkInput_v7_3 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetCallback )(
|
|
IDeckLinkInput_v7_3 * This,
|
|
/* [in] */ IDeckLinkInputCallback_v7_3 *theCallback);
|
|
|
|
END_INTERFACE
|
|
} IDeckLinkInput_v7_3Vtbl;
|
|
|
|
interface IDeckLinkInput_v7_3
|
|
{
|
|
CONST_VTBL struct IDeckLinkInput_v7_3Vtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IDeckLinkInput_v7_3_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IDeckLinkInput_v7_3_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IDeckLinkInput_v7_3_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IDeckLinkInput_v7_3_DoesSupportVideoMode(This,displayMode,pixelFormat,result) \
|
|
( (This)->lpVtbl -> DoesSupportVideoMode(This,displayMode,pixelFormat,result) )
|
|
|
|
#define IDeckLinkInput_v7_3_GetDisplayModeIterator(This,iterator) \
|
|
( (This)->lpVtbl -> GetDisplayModeIterator(This,iterator) )
|
|
|
|
#define IDeckLinkInput_v7_3_SetScreenPreviewCallback(This,previewCallback) \
|
|
( (This)->lpVtbl -> SetScreenPreviewCallback(This,previewCallback) )
|
|
|
|
#define IDeckLinkInput_v7_3_EnableVideoInput(This,displayMode,pixelFormat,flags) \
|
|
( (This)->lpVtbl -> EnableVideoInput(This,displayMode,pixelFormat,flags) )
|
|
|
|
#define IDeckLinkInput_v7_3_DisableVideoInput(This) \
|
|
( (This)->lpVtbl -> DisableVideoInput(This) )
|
|
|
|
#define IDeckLinkInput_v7_3_GetAvailableVideoFrameCount(This,availableFrameCount) \
|
|
( (This)->lpVtbl -> GetAvailableVideoFrameCount(This,availableFrameCount) )
|
|
|
|
#define IDeckLinkInput_v7_3_EnableAudioInput(This,sampleRate,sampleType,channelCount) \
|
|
( (This)->lpVtbl -> EnableAudioInput(This,sampleRate,sampleType,channelCount) )
|
|
|
|
#define IDeckLinkInput_v7_3_DisableAudioInput(This) \
|
|
( (This)->lpVtbl -> DisableAudioInput(This) )
|
|
|
|
#define IDeckLinkInput_v7_3_GetAvailableAudioSampleFrameCount(This,availableSampleFrameCount) \
|
|
( (This)->lpVtbl -> GetAvailableAudioSampleFrameCount(This,availableSampleFrameCount) )
|
|
|
|
#define IDeckLinkInput_v7_3_StartStreams(This) \
|
|
( (This)->lpVtbl -> StartStreams(This) )
|
|
|
|
#define IDeckLinkInput_v7_3_StopStreams(This) \
|
|
( (This)->lpVtbl -> StopStreams(This) )
|
|
|
|
#define IDeckLinkInput_v7_3_PauseStreams(This) \
|
|
( (This)->lpVtbl -> PauseStreams(This) )
|
|
|
|
#define IDeckLinkInput_v7_3_FlushStreams(This) \
|
|
( (This)->lpVtbl -> FlushStreams(This) )
|
|
|
|
#define IDeckLinkInput_v7_3_SetCallback(This,theCallback) \
|
|
( (This)->lpVtbl -> SetCallback(This,theCallback) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IDeckLinkInput_v7_3_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IDeckLinkVideoInputFrame_v7_3_INTERFACE_DEFINED__
|
|
#define __IDeckLinkVideoInputFrame_v7_3_INTERFACE_DEFINED__
|
|
|
|
/* interface IDeckLinkVideoInputFrame_v7_3 */
|
|
/* [helpstring][local][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IDeckLinkVideoInputFrame_v7_3;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("CF317790-2894-11DE-8C30-0800200C9A66")
|
|
IDeckLinkVideoInputFrame_v7_3 : public IDeckLinkVideoFrame_v7_6
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE GetStreamTime(
|
|
/* [out] */ BMDTimeValue *frameTime,
|
|
/* [out] */ BMDTimeValue *frameDuration,
|
|
BMDTimeScale timeScale) = 0;
|
|
|
|
};
|
|
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IDeckLinkVideoInputFrame_v7_3Vtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IDeckLinkVideoInputFrame_v7_3 * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
_COM_Outptr_ void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IDeckLinkVideoInputFrame_v7_3 * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IDeckLinkVideoInputFrame_v7_3 * This);
|
|
|
|
long ( STDMETHODCALLTYPE *GetWidth )(
|
|
IDeckLinkVideoInputFrame_v7_3 * This);
|
|
|
|
long ( STDMETHODCALLTYPE *GetHeight )(
|
|
IDeckLinkVideoInputFrame_v7_3 * This);
|
|
|
|
long ( STDMETHODCALLTYPE *GetRowBytes )(
|
|
IDeckLinkVideoInputFrame_v7_3 * This);
|
|
|
|
BMDPixelFormat ( STDMETHODCALLTYPE *GetPixelFormat )(
|
|
IDeckLinkVideoInputFrame_v7_3 * This);
|
|
|
|
BMDFrameFlags ( STDMETHODCALLTYPE *GetFlags )(
|
|
IDeckLinkVideoInputFrame_v7_3 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetBytes )(
|
|
IDeckLinkVideoInputFrame_v7_3 * This,
|
|
/* [out] */ void **buffer);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetTimecode )(
|
|
IDeckLinkVideoInputFrame_v7_3 * This,
|
|
BMDTimecodeFormat format,
|
|
/* [out] */ IDeckLinkTimecode_v7_6 **timecode);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetAncillaryData )(
|
|
IDeckLinkVideoInputFrame_v7_3 * This,
|
|
/* [out] */ IDeckLinkVideoFrameAncillary **ancillary);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetStreamTime )(
|
|
IDeckLinkVideoInputFrame_v7_3 * This,
|
|
/* [out] */ BMDTimeValue *frameTime,
|
|
/* [out] */ BMDTimeValue *frameDuration,
|
|
BMDTimeScale timeScale);
|
|
|
|
END_INTERFACE
|
|
} IDeckLinkVideoInputFrame_v7_3Vtbl;
|
|
|
|
interface IDeckLinkVideoInputFrame_v7_3
|
|
{
|
|
CONST_VTBL struct IDeckLinkVideoInputFrame_v7_3Vtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IDeckLinkVideoInputFrame_v7_3_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IDeckLinkVideoInputFrame_v7_3_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IDeckLinkVideoInputFrame_v7_3_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IDeckLinkVideoInputFrame_v7_3_GetWidth(This) \
|
|
( (This)->lpVtbl -> GetWidth(This) )
|
|
|
|
#define IDeckLinkVideoInputFrame_v7_3_GetHeight(This) \
|
|
( (This)->lpVtbl -> GetHeight(This) )
|
|
|
|
#define IDeckLinkVideoInputFrame_v7_3_GetRowBytes(This) \
|
|
( (This)->lpVtbl -> GetRowBytes(This) )
|
|
|
|
#define IDeckLinkVideoInputFrame_v7_3_GetPixelFormat(This) \
|
|
( (This)->lpVtbl -> GetPixelFormat(This) )
|
|
|
|
#define IDeckLinkVideoInputFrame_v7_3_GetFlags(This) \
|
|
( (This)->lpVtbl -> GetFlags(This) )
|
|
|
|
#define IDeckLinkVideoInputFrame_v7_3_GetBytes(This,buffer) \
|
|
( (This)->lpVtbl -> GetBytes(This,buffer) )
|
|
|
|
#define IDeckLinkVideoInputFrame_v7_3_GetTimecode(This,format,timecode) \
|
|
( (This)->lpVtbl -> GetTimecode(This,format,timecode) )
|
|
|
|
#define IDeckLinkVideoInputFrame_v7_3_GetAncillaryData(This,ancillary) \
|
|
( (This)->lpVtbl -> GetAncillaryData(This,ancillary) )
|
|
|
|
|
|
#define IDeckLinkVideoInputFrame_v7_3_GetStreamTime(This,frameTime,frameDuration,timeScale) \
|
|
( (This)->lpVtbl -> GetStreamTime(This,frameTime,frameDuration,timeScale) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IDeckLinkVideoInputFrame_v7_3_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IDeckLinkDisplayModeIterator_v7_1_INTERFACE_DEFINED__
|
|
#define __IDeckLinkDisplayModeIterator_v7_1_INTERFACE_DEFINED__
|
|
|
|
/* interface IDeckLinkDisplayModeIterator_v7_1 */
|
|
/* [helpstring][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IDeckLinkDisplayModeIterator_v7_1;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("B28131B6-59AC-4857-B5AC-CD75D5883E2F")
|
|
IDeckLinkDisplayModeIterator_v7_1 : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE Next(
|
|
/* [out] */ IDeckLinkDisplayMode_v7_1 **deckLinkDisplayMode) = 0;
|
|
|
|
};
|
|
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IDeckLinkDisplayModeIterator_v7_1Vtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IDeckLinkDisplayModeIterator_v7_1 * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
_COM_Outptr_ void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IDeckLinkDisplayModeIterator_v7_1 * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IDeckLinkDisplayModeIterator_v7_1 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *Next )(
|
|
IDeckLinkDisplayModeIterator_v7_1 * This,
|
|
/* [out] */ IDeckLinkDisplayMode_v7_1 **deckLinkDisplayMode);
|
|
|
|
END_INTERFACE
|
|
} IDeckLinkDisplayModeIterator_v7_1Vtbl;
|
|
|
|
interface IDeckLinkDisplayModeIterator_v7_1
|
|
{
|
|
CONST_VTBL struct IDeckLinkDisplayModeIterator_v7_1Vtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IDeckLinkDisplayModeIterator_v7_1_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IDeckLinkDisplayModeIterator_v7_1_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IDeckLinkDisplayModeIterator_v7_1_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IDeckLinkDisplayModeIterator_v7_1_Next(This,deckLinkDisplayMode) \
|
|
( (This)->lpVtbl -> Next(This,deckLinkDisplayMode) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IDeckLinkDisplayModeIterator_v7_1_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IDeckLinkDisplayMode_v7_1_INTERFACE_DEFINED__
|
|
#define __IDeckLinkDisplayMode_v7_1_INTERFACE_DEFINED__
|
|
|
|
/* interface IDeckLinkDisplayMode_v7_1 */
|
|
/* [helpstring][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IDeckLinkDisplayMode_v7_1;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("AF0CD6D5-8376-435E-8433-54F9DD530AC3")
|
|
IDeckLinkDisplayMode_v7_1 : 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;
|
|
|
|
};
|
|
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IDeckLinkDisplayMode_v7_1Vtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IDeckLinkDisplayMode_v7_1 * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
_COM_Outptr_ void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IDeckLinkDisplayMode_v7_1 * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IDeckLinkDisplayMode_v7_1 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetName )(
|
|
IDeckLinkDisplayMode_v7_1 * This,
|
|
/* [out] */ BSTR *name);
|
|
|
|
BMDDisplayMode ( STDMETHODCALLTYPE *GetDisplayMode )(
|
|
IDeckLinkDisplayMode_v7_1 * This);
|
|
|
|
long ( STDMETHODCALLTYPE *GetWidth )(
|
|
IDeckLinkDisplayMode_v7_1 * This);
|
|
|
|
long ( STDMETHODCALLTYPE *GetHeight )(
|
|
IDeckLinkDisplayMode_v7_1 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetFrameRate )(
|
|
IDeckLinkDisplayMode_v7_1 * This,
|
|
/* [out] */ BMDTimeValue *frameDuration,
|
|
/* [out] */ BMDTimeScale *timeScale);
|
|
|
|
END_INTERFACE
|
|
} IDeckLinkDisplayMode_v7_1Vtbl;
|
|
|
|
interface IDeckLinkDisplayMode_v7_1
|
|
{
|
|
CONST_VTBL struct IDeckLinkDisplayMode_v7_1Vtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IDeckLinkDisplayMode_v7_1_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IDeckLinkDisplayMode_v7_1_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IDeckLinkDisplayMode_v7_1_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IDeckLinkDisplayMode_v7_1_GetName(This,name) \
|
|
( (This)->lpVtbl -> GetName(This,name) )
|
|
|
|
#define IDeckLinkDisplayMode_v7_1_GetDisplayMode(This) \
|
|
( (This)->lpVtbl -> GetDisplayMode(This) )
|
|
|
|
#define IDeckLinkDisplayMode_v7_1_GetWidth(This) \
|
|
( (This)->lpVtbl -> GetWidth(This) )
|
|
|
|
#define IDeckLinkDisplayMode_v7_1_GetHeight(This) \
|
|
( (This)->lpVtbl -> GetHeight(This) )
|
|
|
|
#define IDeckLinkDisplayMode_v7_1_GetFrameRate(This,frameDuration,timeScale) \
|
|
( (This)->lpVtbl -> GetFrameRate(This,frameDuration,timeScale) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IDeckLinkDisplayMode_v7_1_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IDeckLinkVideoFrame_v7_1_INTERFACE_DEFINED__
|
|
#define __IDeckLinkVideoFrame_v7_1_INTERFACE_DEFINED__
|
|
|
|
/* interface IDeckLinkVideoFrame_v7_1 */
|
|
/* [helpstring][local][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IDeckLinkVideoFrame_v7_1;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("333F3A10-8C2D-43CF-B79D-46560FEEA1CE")
|
|
IDeckLinkVideoFrame_v7_1 : public IUnknown
|
|
{
|
|
public:
|
|
virtual long STDMETHODCALLTYPE GetWidth( void) = 0;
|
|
|
|
virtual long STDMETHODCALLTYPE GetHeight( void) = 0;
|
|
|
|
virtual long STDMETHODCALLTYPE GetRowBytes( void) = 0;
|
|
|
|
virtual BMDPixelFormat STDMETHODCALLTYPE GetPixelFormat( void) = 0;
|
|
|
|
virtual BMDFrameFlags STDMETHODCALLTYPE GetFlags( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetBytes(
|
|
void **buffer) = 0;
|
|
|
|
};
|
|
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IDeckLinkVideoFrame_v7_1Vtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IDeckLinkVideoFrame_v7_1 * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
_COM_Outptr_ void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IDeckLinkVideoFrame_v7_1 * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IDeckLinkVideoFrame_v7_1 * This);
|
|
|
|
long ( STDMETHODCALLTYPE *GetWidth )(
|
|
IDeckLinkVideoFrame_v7_1 * This);
|
|
|
|
long ( STDMETHODCALLTYPE *GetHeight )(
|
|
IDeckLinkVideoFrame_v7_1 * This);
|
|
|
|
long ( STDMETHODCALLTYPE *GetRowBytes )(
|
|
IDeckLinkVideoFrame_v7_1 * This);
|
|
|
|
BMDPixelFormat ( STDMETHODCALLTYPE *GetPixelFormat )(
|
|
IDeckLinkVideoFrame_v7_1 * This);
|
|
|
|
BMDFrameFlags ( STDMETHODCALLTYPE *GetFlags )(
|
|
IDeckLinkVideoFrame_v7_1 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetBytes )(
|
|
IDeckLinkVideoFrame_v7_1 * This,
|
|
void **buffer);
|
|
|
|
END_INTERFACE
|
|
} IDeckLinkVideoFrame_v7_1Vtbl;
|
|
|
|
interface IDeckLinkVideoFrame_v7_1
|
|
{
|
|
CONST_VTBL struct IDeckLinkVideoFrame_v7_1Vtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IDeckLinkVideoFrame_v7_1_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IDeckLinkVideoFrame_v7_1_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IDeckLinkVideoFrame_v7_1_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IDeckLinkVideoFrame_v7_1_GetWidth(This) \
|
|
( (This)->lpVtbl -> GetWidth(This) )
|
|
|
|
#define IDeckLinkVideoFrame_v7_1_GetHeight(This) \
|
|
( (This)->lpVtbl -> GetHeight(This) )
|
|
|
|
#define IDeckLinkVideoFrame_v7_1_GetRowBytes(This) \
|
|
( (This)->lpVtbl -> GetRowBytes(This) )
|
|
|
|
#define IDeckLinkVideoFrame_v7_1_GetPixelFormat(This) \
|
|
( (This)->lpVtbl -> GetPixelFormat(This) )
|
|
|
|
#define IDeckLinkVideoFrame_v7_1_GetFlags(This) \
|
|
( (This)->lpVtbl -> GetFlags(This) )
|
|
|
|
#define IDeckLinkVideoFrame_v7_1_GetBytes(This,buffer) \
|
|
( (This)->lpVtbl -> GetBytes(This,buffer) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IDeckLinkVideoFrame_v7_1_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IDeckLinkVideoInputFrame_v7_1_INTERFACE_DEFINED__
|
|
#define __IDeckLinkVideoInputFrame_v7_1_INTERFACE_DEFINED__
|
|
|
|
/* interface IDeckLinkVideoInputFrame_v7_1 */
|
|
/* [helpstring][local][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IDeckLinkVideoInputFrame_v7_1;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("C8B41D95-8848-40EE-9B37-6E3417FB114B")
|
|
IDeckLinkVideoInputFrame_v7_1 : public IDeckLinkVideoFrame_v7_1
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE GetFrameTime(
|
|
BMDTimeValue *frameTime,
|
|
BMDTimeValue *frameDuration,
|
|
BMDTimeScale timeScale) = 0;
|
|
|
|
};
|
|
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IDeckLinkVideoInputFrame_v7_1Vtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IDeckLinkVideoInputFrame_v7_1 * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
_COM_Outptr_ void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IDeckLinkVideoInputFrame_v7_1 * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IDeckLinkVideoInputFrame_v7_1 * This);
|
|
|
|
long ( STDMETHODCALLTYPE *GetWidth )(
|
|
IDeckLinkVideoInputFrame_v7_1 * This);
|
|
|
|
long ( STDMETHODCALLTYPE *GetHeight )(
|
|
IDeckLinkVideoInputFrame_v7_1 * This);
|
|
|
|
long ( STDMETHODCALLTYPE *GetRowBytes )(
|
|
IDeckLinkVideoInputFrame_v7_1 * This);
|
|
|
|
BMDPixelFormat ( STDMETHODCALLTYPE *GetPixelFormat )(
|
|
IDeckLinkVideoInputFrame_v7_1 * This);
|
|
|
|
BMDFrameFlags ( STDMETHODCALLTYPE *GetFlags )(
|
|
IDeckLinkVideoInputFrame_v7_1 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetBytes )(
|
|
IDeckLinkVideoInputFrame_v7_1 * This,
|
|
void **buffer);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetFrameTime )(
|
|
IDeckLinkVideoInputFrame_v7_1 * This,
|
|
BMDTimeValue *frameTime,
|
|
BMDTimeValue *frameDuration,
|
|
BMDTimeScale timeScale);
|
|
|
|
END_INTERFACE
|
|
} IDeckLinkVideoInputFrame_v7_1Vtbl;
|
|
|
|
interface IDeckLinkVideoInputFrame_v7_1
|
|
{
|
|
CONST_VTBL struct IDeckLinkVideoInputFrame_v7_1Vtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IDeckLinkVideoInputFrame_v7_1_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IDeckLinkVideoInputFrame_v7_1_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IDeckLinkVideoInputFrame_v7_1_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IDeckLinkVideoInputFrame_v7_1_GetWidth(This) \
|
|
( (This)->lpVtbl -> GetWidth(This) )
|
|
|
|
#define IDeckLinkVideoInputFrame_v7_1_GetHeight(This) \
|
|
( (This)->lpVtbl -> GetHeight(This) )
|
|
|
|
#define IDeckLinkVideoInputFrame_v7_1_GetRowBytes(This) \
|
|
( (This)->lpVtbl -> GetRowBytes(This) )
|
|
|
|
#define IDeckLinkVideoInputFrame_v7_1_GetPixelFormat(This) \
|
|
( (This)->lpVtbl -> GetPixelFormat(This) )
|
|
|
|
#define IDeckLinkVideoInputFrame_v7_1_GetFlags(This) \
|
|
( (This)->lpVtbl -> GetFlags(This) )
|
|
|
|
#define IDeckLinkVideoInputFrame_v7_1_GetBytes(This,buffer) \
|
|
( (This)->lpVtbl -> GetBytes(This,buffer) )
|
|
|
|
|
|
#define IDeckLinkVideoInputFrame_v7_1_GetFrameTime(This,frameTime,frameDuration,timeScale) \
|
|
( (This)->lpVtbl -> GetFrameTime(This,frameTime,frameDuration,timeScale) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IDeckLinkVideoInputFrame_v7_1_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IDeckLinkAudioInputPacket_v7_1_INTERFACE_DEFINED__
|
|
#define __IDeckLinkAudioInputPacket_v7_1_INTERFACE_DEFINED__
|
|
|
|
/* interface IDeckLinkAudioInputPacket_v7_1 */
|
|
/* [helpstring][local][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IDeckLinkAudioInputPacket_v7_1;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("C86DE4F6-A29F-42E3-AB3A-1363E29F0788")
|
|
IDeckLinkAudioInputPacket_v7_1 : public IUnknown
|
|
{
|
|
public:
|
|
virtual long STDMETHODCALLTYPE GetSampleCount( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetBytes(
|
|
void **buffer) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetAudioPacketTime(
|
|
BMDTimeValue *packetTime,
|
|
BMDTimeScale timeScale) = 0;
|
|
|
|
};
|
|
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IDeckLinkAudioInputPacket_v7_1Vtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IDeckLinkAudioInputPacket_v7_1 * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
_COM_Outptr_ void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IDeckLinkAudioInputPacket_v7_1 * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IDeckLinkAudioInputPacket_v7_1 * This);
|
|
|
|
long ( STDMETHODCALLTYPE *GetSampleCount )(
|
|
IDeckLinkAudioInputPacket_v7_1 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetBytes )(
|
|
IDeckLinkAudioInputPacket_v7_1 * This,
|
|
void **buffer);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetAudioPacketTime )(
|
|
IDeckLinkAudioInputPacket_v7_1 * This,
|
|
BMDTimeValue *packetTime,
|
|
BMDTimeScale timeScale);
|
|
|
|
END_INTERFACE
|
|
} IDeckLinkAudioInputPacket_v7_1Vtbl;
|
|
|
|
interface IDeckLinkAudioInputPacket_v7_1
|
|
{
|
|
CONST_VTBL struct IDeckLinkAudioInputPacket_v7_1Vtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IDeckLinkAudioInputPacket_v7_1_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IDeckLinkAudioInputPacket_v7_1_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IDeckLinkAudioInputPacket_v7_1_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IDeckLinkAudioInputPacket_v7_1_GetSampleCount(This) \
|
|
( (This)->lpVtbl -> GetSampleCount(This) )
|
|
|
|
#define IDeckLinkAudioInputPacket_v7_1_GetBytes(This,buffer) \
|
|
( (This)->lpVtbl -> GetBytes(This,buffer) )
|
|
|
|
#define IDeckLinkAudioInputPacket_v7_1_GetAudioPacketTime(This,packetTime,timeScale) \
|
|
( (This)->lpVtbl -> GetAudioPacketTime(This,packetTime,timeScale) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IDeckLinkAudioInputPacket_v7_1_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IDeckLinkVideoOutputCallback_v7_1_INTERFACE_DEFINED__
|
|
#define __IDeckLinkVideoOutputCallback_v7_1_INTERFACE_DEFINED__
|
|
|
|
/* interface IDeckLinkVideoOutputCallback_v7_1 */
|
|
/* [helpstring][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IDeckLinkVideoOutputCallback_v7_1;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("EBD01AFA-E4B0-49C6-A01D-EDB9D1B55FD9")
|
|
IDeckLinkVideoOutputCallback_v7_1 : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE ScheduledFrameCompleted(
|
|
/* [in] */ IDeckLinkVideoFrame_v7_1 *completedFrame,
|
|
/* [in] */ BMDOutputFrameCompletionResult result) = 0;
|
|
|
|
};
|
|
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IDeckLinkVideoOutputCallback_v7_1Vtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IDeckLinkVideoOutputCallback_v7_1 * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
_COM_Outptr_ void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IDeckLinkVideoOutputCallback_v7_1 * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IDeckLinkVideoOutputCallback_v7_1 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *ScheduledFrameCompleted )(
|
|
IDeckLinkVideoOutputCallback_v7_1 * This,
|
|
/* [in] */ IDeckLinkVideoFrame_v7_1 *completedFrame,
|
|
/* [in] */ BMDOutputFrameCompletionResult result);
|
|
|
|
END_INTERFACE
|
|
} IDeckLinkVideoOutputCallback_v7_1Vtbl;
|
|
|
|
interface IDeckLinkVideoOutputCallback_v7_1
|
|
{
|
|
CONST_VTBL struct IDeckLinkVideoOutputCallback_v7_1Vtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IDeckLinkVideoOutputCallback_v7_1_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IDeckLinkVideoOutputCallback_v7_1_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IDeckLinkVideoOutputCallback_v7_1_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IDeckLinkVideoOutputCallback_v7_1_ScheduledFrameCompleted(This,completedFrame,result) \
|
|
( (This)->lpVtbl -> ScheduledFrameCompleted(This,completedFrame,result) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IDeckLinkVideoOutputCallback_v7_1_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IDeckLinkInputCallback_v7_1_INTERFACE_DEFINED__
|
|
#define __IDeckLinkInputCallback_v7_1_INTERFACE_DEFINED__
|
|
|
|
/* interface IDeckLinkInputCallback_v7_1 */
|
|
/* [helpstring][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IDeckLinkInputCallback_v7_1;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("7F94F328-5ED4-4E9F-9729-76A86BDC99CC")
|
|
IDeckLinkInputCallback_v7_1 : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE VideoInputFrameArrived(
|
|
/* [in] */ IDeckLinkVideoInputFrame_v7_1 *videoFrame,
|
|
/* [in] */ IDeckLinkAudioInputPacket_v7_1 *audioPacket) = 0;
|
|
|
|
};
|
|
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IDeckLinkInputCallback_v7_1Vtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IDeckLinkInputCallback_v7_1 * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
_COM_Outptr_ void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IDeckLinkInputCallback_v7_1 * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IDeckLinkInputCallback_v7_1 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *VideoInputFrameArrived )(
|
|
IDeckLinkInputCallback_v7_1 * This,
|
|
/* [in] */ IDeckLinkVideoInputFrame_v7_1 *videoFrame,
|
|
/* [in] */ IDeckLinkAudioInputPacket_v7_1 *audioPacket);
|
|
|
|
END_INTERFACE
|
|
} IDeckLinkInputCallback_v7_1Vtbl;
|
|
|
|
interface IDeckLinkInputCallback_v7_1
|
|
{
|
|
CONST_VTBL struct IDeckLinkInputCallback_v7_1Vtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IDeckLinkInputCallback_v7_1_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IDeckLinkInputCallback_v7_1_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IDeckLinkInputCallback_v7_1_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IDeckLinkInputCallback_v7_1_VideoInputFrameArrived(This,videoFrame,audioPacket) \
|
|
( (This)->lpVtbl -> VideoInputFrameArrived(This,videoFrame,audioPacket) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IDeckLinkInputCallback_v7_1_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IDeckLinkOutput_v7_1_INTERFACE_DEFINED__
|
|
#define __IDeckLinkOutput_v7_1_INTERFACE_DEFINED__
|
|
|
|
/* interface IDeckLinkOutput_v7_1 */
|
|
/* [helpstring][local][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IDeckLinkOutput_v7_1;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("AE5B3E9B-4E1E-4535-B6E8-480FF52F6CE5")
|
|
IDeckLinkOutput_v7_1 : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE DoesSupportVideoMode(
|
|
BMDDisplayMode displayMode,
|
|
BMDPixelFormat pixelFormat,
|
|
/* [out] */ BMDDisplayModeSupport *result) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetDisplayModeIterator(
|
|
/* [out] */ IDeckLinkDisplayModeIterator_v7_1 **iterator) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE EnableVideoOutput(
|
|
BMDDisplayMode displayMode) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE DisableVideoOutput( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetVideoOutputFrameMemoryAllocator(
|
|
/* [in] */ IDeckLinkMemoryAllocator *theAllocator) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE CreateVideoFrame(
|
|
int width,
|
|
int height,
|
|
int rowBytes,
|
|
BMDPixelFormat pixelFormat,
|
|
BMDFrameFlags flags,
|
|
IDeckLinkVideoFrame_v7_1 **outFrame) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE CreateVideoFrameFromBuffer(
|
|
void *buffer,
|
|
int width,
|
|
int height,
|
|
int rowBytes,
|
|
BMDPixelFormat pixelFormat,
|
|
BMDFrameFlags flags,
|
|
IDeckLinkVideoFrame_v7_1 **outFrame) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE DisplayVideoFrameSync(
|
|
IDeckLinkVideoFrame_v7_1 *theFrame) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE ScheduleVideoFrame(
|
|
IDeckLinkVideoFrame_v7_1 *theFrame,
|
|
BMDTimeValue displayTime,
|
|
BMDTimeValue displayDuration,
|
|
BMDTimeScale timeScale) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetScheduledFrameCompletionCallback(
|
|
/* [in] */ IDeckLinkVideoOutputCallback_v7_1 *theCallback) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE EnableAudioOutput(
|
|
BMDAudioSampleRate sampleRate,
|
|
BMDAudioSampleType sampleType,
|
|
unsigned int channelCount) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE DisableAudioOutput( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE WriteAudioSamplesSync(
|
|
void *buffer,
|
|
unsigned int sampleFrameCount,
|
|
/* [out] */ unsigned int *sampleFramesWritten) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE BeginAudioPreroll( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE EndAudioPreroll( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE ScheduleAudioSamples(
|
|
void *buffer,
|
|
unsigned int sampleFrameCount,
|
|
BMDTimeValue streamTime,
|
|
BMDTimeScale timeScale,
|
|
/* [out] */ unsigned int *sampleFramesWritten) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetBufferedAudioSampleFrameCount(
|
|
/* [out] */ unsigned int *bufferedSampleCount) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE FlushBufferedAudioSamples( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetAudioCallback(
|
|
/* [in] */ IDeckLinkAudioOutputCallback *theCallback) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE StartScheduledPlayback(
|
|
BMDTimeValue playbackStartTime,
|
|
BMDTimeScale timeScale,
|
|
double playbackSpeed) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE StopScheduledPlayback(
|
|
BMDTimeValue stopPlaybackAtTime,
|
|
BMDTimeValue *actualStopTime,
|
|
BMDTimeScale timeScale) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetHardwareReferenceClock(
|
|
BMDTimeScale desiredTimeScale,
|
|
BMDTimeValue *elapsedTimeSinceSchedulerBegan) = 0;
|
|
|
|
};
|
|
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IDeckLinkOutput_v7_1Vtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IDeckLinkOutput_v7_1 * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
_COM_Outptr_ void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IDeckLinkOutput_v7_1 * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IDeckLinkOutput_v7_1 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *DoesSupportVideoMode )(
|
|
IDeckLinkOutput_v7_1 * This,
|
|
BMDDisplayMode displayMode,
|
|
BMDPixelFormat pixelFormat,
|
|
/* [out] */ BMDDisplayModeSupport *result);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetDisplayModeIterator )(
|
|
IDeckLinkOutput_v7_1 * This,
|
|
/* [out] */ IDeckLinkDisplayModeIterator_v7_1 **iterator);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *EnableVideoOutput )(
|
|
IDeckLinkOutput_v7_1 * This,
|
|
BMDDisplayMode displayMode);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *DisableVideoOutput )(
|
|
IDeckLinkOutput_v7_1 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetVideoOutputFrameMemoryAllocator )(
|
|
IDeckLinkOutput_v7_1 * This,
|
|
/* [in] */ IDeckLinkMemoryAllocator *theAllocator);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *CreateVideoFrame )(
|
|
IDeckLinkOutput_v7_1 * This,
|
|
int width,
|
|
int height,
|
|
int rowBytes,
|
|
BMDPixelFormat pixelFormat,
|
|
BMDFrameFlags flags,
|
|
IDeckLinkVideoFrame_v7_1 **outFrame);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *CreateVideoFrameFromBuffer )(
|
|
IDeckLinkOutput_v7_1 * This,
|
|
void *buffer,
|
|
int width,
|
|
int height,
|
|
int rowBytes,
|
|
BMDPixelFormat pixelFormat,
|
|
BMDFrameFlags flags,
|
|
IDeckLinkVideoFrame_v7_1 **outFrame);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *DisplayVideoFrameSync )(
|
|
IDeckLinkOutput_v7_1 * This,
|
|
IDeckLinkVideoFrame_v7_1 *theFrame);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *ScheduleVideoFrame )(
|
|
IDeckLinkOutput_v7_1 * This,
|
|
IDeckLinkVideoFrame_v7_1 *theFrame,
|
|
BMDTimeValue displayTime,
|
|
BMDTimeValue displayDuration,
|
|
BMDTimeScale timeScale);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetScheduledFrameCompletionCallback )(
|
|
IDeckLinkOutput_v7_1 * This,
|
|
/* [in] */ IDeckLinkVideoOutputCallback_v7_1 *theCallback);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *EnableAudioOutput )(
|
|
IDeckLinkOutput_v7_1 * This,
|
|
BMDAudioSampleRate sampleRate,
|
|
BMDAudioSampleType sampleType,
|
|
unsigned int channelCount);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *DisableAudioOutput )(
|
|
IDeckLinkOutput_v7_1 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *WriteAudioSamplesSync )(
|
|
IDeckLinkOutput_v7_1 * This,
|
|
void *buffer,
|
|
unsigned int sampleFrameCount,
|
|
/* [out] */ unsigned int *sampleFramesWritten);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *BeginAudioPreroll )(
|
|
IDeckLinkOutput_v7_1 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *EndAudioPreroll )(
|
|
IDeckLinkOutput_v7_1 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *ScheduleAudioSamples )(
|
|
IDeckLinkOutput_v7_1 * This,
|
|
void *buffer,
|
|
unsigned int sampleFrameCount,
|
|
BMDTimeValue streamTime,
|
|
BMDTimeScale timeScale,
|
|
/* [out] */ unsigned int *sampleFramesWritten);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetBufferedAudioSampleFrameCount )(
|
|
IDeckLinkOutput_v7_1 * This,
|
|
/* [out] */ unsigned int *bufferedSampleCount);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *FlushBufferedAudioSamples )(
|
|
IDeckLinkOutput_v7_1 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetAudioCallback )(
|
|
IDeckLinkOutput_v7_1 * This,
|
|
/* [in] */ IDeckLinkAudioOutputCallback *theCallback);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *StartScheduledPlayback )(
|
|
IDeckLinkOutput_v7_1 * This,
|
|
BMDTimeValue playbackStartTime,
|
|
BMDTimeScale timeScale,
|
|
double playbackSpeed);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *StopScheduledPlayback )(
|
|
IDeckLinkOutput_v7_1 * This,
|
|
BMDTimeValue stopPlaybackAtTime,
|
|
BMDTimeValue *actualStopTime,
|
|
BMDTimeScale timeScale);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetHardwareReferenceClock )(
|
|
IDeckLinkOutput_v7_1 * This,
|
|
BMDTimeScale desiredTimeScale,
|
|
BMDTimeValue *elapsedTimeSinceSchedulerBegan);
|
|
|
|
END_INTERFACE
|
|
} IDeckLinkOutput_v7_1Vtbl;
|
|
|
|
interface IDeckLinkOutput_v7_1
|
|
{
|
|
CONST_VTBL struct IDeckLinkOutput_v7_1Vtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IDeckLinkOutput_v7_1_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IDeckLinkOutput_v7_1_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IDeckLinkOutput_v7_1_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IDeckLinkOutput_v7_1_DoesSupportVideoMode(This,displayMode,pixelFormat,result) \
|
|
( (This)->lpVtbl -> DoesSupportVideoMode(This,displayMode,pixelFormat,result) )
|
|
|
|
#define IDeckLinkOutput_v7_1_GetDisplayModeIterator(This,iterator) \
|
|
( (This)->lpVtbl -> GetDisplayModeIterator(This,iterator) )
|
|
|
|
#define IDeckLinkOutput_v7_1_EnableVideoOutput(This,displayMode) \
|
|
( (This)->lpVtbl -> EnableVideoOutput(This,displayMode) )
|
|
|
|
#define IDeckLinkOutput_v7_1_DisableVideoOutput(This) \
|
|
( (This)->lpVtbl -> DisableVideoOutput(This) )
|
|
|
|
#define IDeckLinkOutput_v7_1_SetVideoOutputFrameMemoryAllocator(This,theAllocator) \
|
|
( (This)->lpVtbl -> SetVideoOutputFrameMemoryAllocator(This,theAllocator) )
|
|
|
|
#define IDeckLinkOutput_v7_1_CreateVideoFrame(This,width,height,rowBytes,pixelFormat,flags,outFrame) \
|
|
( (This)->lpVtbl -> CreateVideoFrame(This,width,height,rowBytes,pixelFormat,flags,outFrame) )
|
|
|
|
#define IDeckLinkOutput_v7_1_CreateVideoFrameFromBuffer(This,buffer,width,height,rowBytes,pixelFormat,flags,outFrame) \
|
|
( (This)->lpVtbl -> CreateVideoFrameFromBuffer(This,buffer,width,height,rowBytes,pixelFormat,flags,outFrame) )
|
|
|
|
#define IDeckLinkOutput_v7_1_DisplayVideoFrameSync(This,theFrame) \
|
|
( (This)->lpVtbl -> DisplayVideoFrameSync(This,theFrame) )
|
|
|
|
#define IDeckLinkOutput_v7_1_ScheduleVideoFrame(This,theFrame,displayTime,displayDuration,timeScale) \
|
|
( (This)->lpVtbl -> ScheduleVideoFrame(This,theFrame,displayTime,displayDuration,timeScale) )
|
|
|
|
#define IDeckLinkOutput_v7_1_SetScheduledFrameCompletionCallback(This,theCallback) \
|
|
( (This)->lpVtbl -> SetScheduledFrameCompletionCallback(This,theCallback) )
|
|
|
|
#define IDeckLinkOutput_v7_1_EnableAudioOutput(This,sampleRate,sampleType,channelCount) \
|
|
( (This)->lpVtbl -> EnableAudioOutput(This,sampleRate,sampleType,channelCount) )
|
|
|
|
#define IDeckLinkOutput_v7_1_DisableAudioOutput(This) \
|
|
( (This)->lpVtbl -> DisableAudioOutput(This) )
|
|
|
|
#define IDeckLinkOutput_v7_1_WriteAudioSamplesSync(This,buffer,sampleFrameCount,sampleFramesWritten) \
|
|
( (This)->lpVtbl -> WriteAudioSamplesSync(This,buffer,sampleFrameCount,sampleFramesWritten) )
|
|
|
|
#define IDeckLinkOutput_v7_1_BeginAudioPreroll(This) \
|
|
( (This)->lpVtbl -> BeginAudioPreroll(This) )
|
|
|
|
#define IDeckLinkOutput_v7_1_EndAudioPreroll(This) \
|
|
( (This)->lpVtbl -> EndAudioPreroll(This) )
|
|
|
|
#define IDeckLinkOutput_v7_1_ScheduleAudioSamples(This,buffer,sampleFrameCount,streamTime,timeScale,sampleFramesWritten) \
|
|
( (This)->lpVtbl -> ScheduleAudioSamples(This,buffer,sampleFrameCount,streamTime,timeScale,sampleFramesWritten) )
|
|
|
|
#define IDeckLinkOutput_v7_1_GetBufferedAudioSampleFrameCount(This,bufferedSampleCount) \
|
|
( (This)->lpVtbl -> GetBufferedAudioSampleFrameCount(This,bufferedSampleCount) )
|
|
|
|
#define IDeckLinkOutput_v7_1_FlushBufferedAudioSamples(This) \
|
|
( (This)->lpVtbl -> FlushBufferedAudioSamples(This) )
|
|
|
|
#define IDeckLinkOutput_v7_1_SetAudioCallback(This,theCallback) \
|
|
( (This)->lpVtbl -> SetAudioCallback(This,theCallback) )
|
|
|
|
#define IDeckLinkOutput_v7_1_StartScheduledPlayback(This,playbackStartTime,timeScale,playbackSpeed) \
|
|
( (This)->lpVtbl -> StartScheduledPlayback(This,playbackStartTime,timeScale,playbackSpeed) )
|
|
|
|
#define IDeckLinkOutput_v7_1_StopScheduledPlayback(This,stopPlaybackAtTime,actualStopTime,timeScale) \
|
|
( (This)->lpVtbl -> StopScheduledPlayback(This,stopPlaybackAtTime,actualStopTime,timeScale) )
|
|
|
|
#define IDeckLinkOutput_v7_1_GetHardwareReferenceClock(This,desiredTimeScale,elapsedTimeSinceSchedulerBegan) \
|
|
( (This)->lpVtbl -> GetHardwareReferenceClock(This,desiredTimeScale,elapsedTimeSinceSchedulerBegan) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IDeckLinkOutput_v7_1_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IDeckLinkInput_v7_1_INTERFACE_DEFINED__
|
|
#define __IDeckLinkInput_v7_1_INTERFACE_DEFINED__
|
|
|
|
/* interface IDeckLinkInput_v7_1 */
|
|
/* [helpstring][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IDeckLinkInput_v7_1;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("2B54EDEF-5B32-429F-BA11-BB990596EACD")
|
|
IDeckLinkInput_v7_1 : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE DoesSupportVideoMode(
|
|
BMDDisplayMode displayMode,
|
|
BMDPixelFormat pixelFormat,
|
|
/* [out] */ BMDDisplayModeSupport *result) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetDisplayModeIterator(
|
|
/* [out] */ IDeckLinkDisplayModeIterator_v7_1 **iterator) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE EnableVideoInput(
|
|
BMDDisplayMode displayMode,
|
|
BMDPixelFormat pixelFormat,
|
|
BMDVideoInputFlags flags) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE DisableVideoInput( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE EnableAudioInput(
|
|
BMDAudioSampleRate sampleRate,
|
|
BMDAudioSampleType sampleType,
|
|
unsigned int channelCount) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE DisableAudioInput( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE ReadAudioSamples(
|
|
void *buffer,
|
|
unsigned int sampleFrameCount,
|
|
/* [out] */ unsigned int *sampleFramesRead,
|
|
/* [out] */ BMDTimeValue *audioPacketTime,
|
|
BMDTimeScale timeScale) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetBufferedAudioSampleFrameCount(
|
|
/* [out] */ unsigned int *bufferedSampleCount) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE StartStreams( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE StopStreams( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE PauseStreams( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetCallback(
|
|
/* [in] */ IDeckLinkInputCallback_v7_1 *theCallback) = 0;
|
|
|
|
};
|
|
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IDeckLinkInput_v7_1Vtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IDeckLinkInput_v7_1 * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
_COM_Outptr_ void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IDeckLinkInput_v7_1 * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IDeckLinkInput_v7_1 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *DoesSupportVideoMode )(
|
|
IDeckLinkInput_v7_1 * This,
|
|
BMDDisplayMode displayMode,
|
|
BMDPixelFormat pixelFormat,
|
|
/* [out] */ BMDDisplayModeSupport *result);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetDisplayModeIterator )(
|
|
IDeckLinkInput_v7_1 * This,
|
|
/* [out] */ IDeckLinkDisplayModeIterator_v7_1 **iterator);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *EnableVideoInput )(
|
|
IDeckLinkInput_v7_1 * This,
|
|
BMDDisplayMode displayMode,
|
|
BMDPixelFormat pixelFormat,
|
|
BMDVideoInputFlags flags);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *DisableVideoInput )(
|
|
IDeckLinkInput_v7_1 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *EnableAudioInput )(
|
|
IDeckLinkInput_v7_1 * This,
|
|
BMDAudioSampleRate sampleRate,
|
|
BMDAudioSampleType sampleType,
|
|
unsigned int channelCount);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *DisableAudioInput )(
|
|
IDeckLinkInput_v7_1 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *ReadAudioSamples )(
|
|
IDeckLinkInput_v7_1 * This,
|
|
void *buffer,
|
|
unsigned int sampleFrameCount,
|
|
/* [out] */ unsigned int *sampleFramesRead,
|
|
/* [out] */ BMDTimeValue *audioPacketTime,
|
|
BMDTimeScale timeScale);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetBufferedAudioSampleFrameCount )(
|
|
IDeckLinkInput_v7_1 * This,
|
|
/* [out] */ unsigned int *bufferedSampleCount);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *StartStreams )(
|
|
IDeckLinkInput_v7_1 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *StopStreams )(
|
|
IDeckLinkInput_v7_1 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *PauseStreams )(
|
|
IDeckLinkInput_v7_1 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetCallback )(
|
|
IDeckLinkInput_v7_1 * This,
|
|
/* [in] */ IDeckLinkInputCallback_v7_1 *theCallback);
|
|
|
|
END_INTERFACE
|
|
} IDeckLinkInput_v7_1Vtbl;
|
|
|
|
interface IDeckLinkInput_v7_1
|
|
{
|
|
CONST_VTBL struct IDeckLinkInput_v7_1Vtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IDeckLinkInput_v7_1_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IDeckLinkInput_v7_1_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IDeckLinkInput_v7_1_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IDeckLinkInput_v7_1_DoesSupportVideoMode(This,displayMode,pixelFormat,result) \
|
|
( (This)->lpVtbl -> DoesSupportVideoMode(This,displayMode,pixelFormat,result) )
|
|
|
|
#define IDeckLinkInput_v7_1_GetDisplayModeIterator(This,iterator) \
|
|
( (This)->lpVtbl -> GetDisplayModeIterator(This,iterator) )
|
|
|
|
#define IDeckLinkInput_v7_1_EnableVideoInput(This,displayMode,pixelFormat,flags) \
|
|
( (This)->lpVtbl -> EnableVideoInput(This,displayMode,pixelFormat,flags) )
|
|
|
|
#define IDeckLinkInput_v7_1_DisableVideoInput(This) \
|
|
( (This)->lpVtbl -> DisableVideoInput(This) )
|
|
|
|
#define IDeckLinkInput_v7_1_EnableAudioInput(This,sampleRate,sampleType,channelCount) \
|
|
( (This)->lpVtbl -> EnableAudioInput(This,sampleRate,sampleType,channelCount) )
|
|
|
|
#define IDeckLinkInput_v7_1_DisableAudioInput(This) \
|
|
( (This)->lpVtbl -> DisableAudioInput(This) )
|
|
|
|
#define IDeckLinkInput_v7_1_ReadAudioSamples(This,buffer,sampleFrameCount,sampleFramesRead,audioPacketTime,timeScale) \
|
|
( (This)->lpVtbl -> ReadAudioSamples(This,buffer,sampleFrameCount,sampleFramesRead,audioPacketTime,timeScale) )
|
|
|
|
#define IDeckLinkInput_v7_1_GetBufferedAudioSampleFrameCount(This,bufferedSampleCount) \
|
|
( (This)->lpVtbl -> GetBufferedAudioSampleFrameCount(This,bufferedSampleCount) )
|
|
|
|
#define IDeckLinkInput_v7_1_StartStreams(This) \
|
|
( (This)->lpVtbl -> StartStreams(This) )
|
|
|
|
#define IDeckLinkInput_v7_1_StopStreams(This) \
|
|
( (This)->lpVtbl -> StopStreams(This) )
|
|
|
|
#define IDeckLinkInput_v7_1_PauseStreams(This) \
|
|
( (This)->lpVtbl -> PauseStreams(This) )
|
|
|
|
#define IDeckLinkInput_v7_1_SetCallback(This,theCallback) \
|
|
( (This)->lpVtbl -> SetCallback(This,theCallback) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IDeckLinkInput_v7_1_INTERFACE_DEFINED__ */
|
|
|
|
#endif /* __DeckLinkAPI_LIBRARY_DEFINED__ */
|
|
|
|
/* Additional Prototypes for ALL interfaces */
|
|
|
|
/* end of Additional Prototypes */
|
|
|
|
/* Functions */
|
|
|
|
extern "C" {
|
|
|
|
IDeckLinkIterator* CreateDeckLinkIteratorInstance (void);
|
|
|
|
}
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif
|
|
|
|
|