• Products
  • Resellers
  • Support
  • Developer
  • Company
  • Media
  • Splice
  • Forum
Blackmagic Design logo
  • Back to Developer Page

Quick Search

Table of Contents

  • 1 Desktop Video SDK
  • 2 DeckLink API
    • 2.1 Using the DeckLink API in a project
    • 2.2 Sandboxing support on macOS
    • 2.3 Accessing DeckLink devices
    • 2.4 High level interface
    • 2.5 Interface Reference
      • 2.5.1 IDeckLinkIterator Interface
      • 2.5.2 IDeckLink Interface
        • 2.5.2.1 IDeckLink::GetModelName method
        • 2.5.2.2 IDeckLink::GetDisplayName method
      • 2.5.3 IDeckLinkOutput Interface
      • 2.5.4 IDeckLinkInput Interface
      • 2.5.5 IDeckLinkVideoFrame Interface
      • 2.5.6 IDeckLinkVideoOutputCallback Interface
      • 2.5.7 IDeckLinkMutableVideoFrame Interface
      • 2.5.8 IDeckLinkVideoFrame3DExtensions Interface
      • 2.5.9 IDeckLinkAudioOutputCallback Interface
      • 2.5.10 IDeckLinkInputCallback Interface
      • 2.5.11 IDeckLinkVideoInputFrame Interface
      • 2.5.12 IDeckLinkAudioInputPacket Interface
      • 2.5.13 IDeckLinkDisplayModeIterator Interface
      • 2.5.14 IDeckLinkDisplayMode Interface
      • 2.5.15 IDeckLinkConfiguration Interface
      • 2.5.16 IDeckLinkAPIInformation Interface
      • 2.5.17 IDeckLinkProfileAttributes Interface
      • 2.5.18 IDeckLinkKeyer Interface
      • 2.5.19 IDeckLinkVideoFrameAncillary Interface
      • 2.5.20 IDeckLinkVideoFrameAncillaryPackets Interface
      • 2.5.21 IDeckLinkAncillaryPacketIterator Interface
      • 2.5.22 IDeckLinkAncillaryPacket Interface
      • 2.5.23 IDeckLinkTimecode Interface
      • 2.5.24 IDeckLinkScreenPreviewCallback Interface
      • 2.5.25 IDeckLinkGLScreenPreviewHelper Interface
      • 2.5.26 IDeckLinkCocoaScreenPreviewCallback Interface
      • 2.5.27 IDeckLinkDX9ScreenPreviewHelper Interface
      • 2.5.28 IDeckLinkDeckControl Interface
      • 2.5.29 IDeckLinkDeckControlStatusCallback Interface
      • 2.5.30 IDeckLinkDiscovery Interface
      • 2.5.31 IDeckLinkDeviceNotificationCallback Interface
      • 2.5.32 IDeckLinkNotification Interface
      • 2.5.33 IDeckLinkNotificationCallback Interface
      • 2.5.34 IDeckLinkEncoderInput Interface
      • 2.5.35 IDeckLinkEncoderInputCallback Interface
      • 2.5.36 IDeckLinkEncoderPacket Interface
      • 2.5.37 IDeckLinkEncoderVideoPacket Interface
      • 2.5.38 IDeckLinkEncoderAudioPacket Interface
      • 2.5.39 IDeckLinkH265NALPacket Interface
      • 2.5.40 IDeckLinkEncoderConfiguration Interface
      • 2.5.41 IDeckLinkStatus Interface
      • 2.5.42 IDeckLinkVideoFrameMetadataExtensions Interface
      • 2.5.43 IDeckLinkVideoConversion Interface
      • 2.5.44 IDeckLinkHDMIInputEDID Interface
      • 2.5.45 IDeckLinkProfileManager Interface
      • 2.5.46 IDeckLinkProfileIterator Interface
      • 2.5.47 IDeckLinkProfile Interface
      • 2.5.48 IDeckLinkProfileCallback Interface
      • 2.5.49 IDeckLinkMetalScreenPreviewHelper Interface
      • 2.5.50 IDeckLinkWPFDX9ScreenPreviewHelper Interface
      • 2.5.51 IDeckLinkMacOutput Interface
      • 2.5.52 IDeckLinkMacVideoBuffer Interface
      • 2.5.53 IDeckLinkVideoBuffer Interface
      • 2.5.54 IDeckLinkVideoBufferAllocatorProvider Interface
      • 2.5.55 IDeckLinkVideoBufferAllocator Interface
      • 2.5.56 IDeckLinkVideoFrameMutableMetadataExtensions Interface
      • 2.5.57 IDeckLinkIPExtensions Interface
      • 2.5.58 IDeckLinkIPFlowIterator Interface
      • 2.5.59 IDeckLinkIPFlow Interface
      • 2.5.60 IDeckLinkIPFlowAttributes Interface
      • 2.5.61 IDeckLinkIPFlowStatus Interface
      • 2.5.62 IDeckLinkIPFlowSetting Interface
    • 2.6 Streaming Interface Reference
  • 3 Common Data Types
  • Docs »
  • 2 DeckLink API »
  • 2.5 Interface Reference »
  • 2.5.2 IDeckLink Interface
  • ← 2.5.1 IDeckLinkIterator Interface
  • 2.5.3 IDeckLinkOutput Interface →

2.5.2 IDeckLink Interface¶

class IDeckLink¶

The IDeckLink interface represents a physical DeckLink device attached to the host computer.

IDeckLink interfaces are obtained from either IDeckLinkIterator::Next() or IDeckLinkDeviceNotificationCallback::DeckLinkDeviceArrived() callback.

Related Interfaces¶

Interface

Interface ID

Description

IDeckLinkIterator

IID_IDeckLinkIterator

IDeckLinkIterator::Next() outputs an IDeckLink object interface

IDeckLinkOutput

IID_IDeckLinkOutput

An IDeckLinkOutput object interface may be obtained from IDeckLink using QueryInterface

IDeckLinkInput

IID_IDeckLinkInput

An IDeckLinkInput object interface may be obtained from IDeckLink using QueryInterface

IDeckLinkConfiguration

IID_IDeckLinkConfiguration

An IDeckLinkConfiguration object interface may be obtained from IDeckLink using QueryInterface

IDeckLinkProfile

IID_IDeckLinkProfile

An IDeckLinkProfile object interface may be obtained from IDeckLink using QueryInterface

IDeckLinkProfile

IID_IDeckLinkProfile

IDeckLinkProfile::GetDevice() outputs an IDeckLink object interface

IDeckLinkProfileAttributes

IID_IDeckLinkProfileAttributes

An IDeckLinkProfileAttributes object interface may be obtained from IDeckLink using QueryInterface

IDeckLinkProfileManager

IID_IDeckLinkProfileManager

An IDeckLinkProfileManager object interface may be obtained from IDeckLink using QueryInterface

IDeckLinkNotification

IID_IDeckLinkNotification

An IDeckLinkNotification object interface may be obtained from IDeckLink using QueryInterface

IDeckLinkKeyer

IID_IDeckLinkKeyer

An IDeckLinkKeyer object interface may be obtained from IDeckLink using QueryInterface

IDeckLinkStatus

IID_IDeckLinkStatus

An IDeckLinkStatus object interface may be obtained from IDeckLink using QueryInterface

IDeckLinkDeckControl

IID_IDeckLinkDeckControl

An IDeckLinkDeckControl object interface may be obtained from IDeckLink using QueryInterface

IDeckLinkHDMIInputEDID

IID_IDeckLinkHDMIInputEDID

An IDeckLinkHDMIInputEDID object interface may be obtained from IDeckLink using QueryInterface

IDeckLinkEncoderInput

IID_IDeckLinkEncoderInput

An IDeckLinkEncoderInput object interface may be obtained from IDeckLink using QueryInterface

IBMDStreamingDeviceInput

IID_IBMDStreamingDeviceInput

An IBMDStreamingDeviceInput object interface may be obtained from IDeckLink using QueryInterface

IDeckLinkIPExtensions

IID_IDeckLinkIPExtensions

An IDeckLinkIPExtensions object interface may be obtained from IDeckLink using QueryInterface

IDeckLinkDeviceNotificationCallback

IID_IDeckLinkDeviceNotificationCallback

An IDeckLink object interface is passed to IDeckLinkDeviceNotificationCallback::DeckLinkDeviceRemoved()

2.5.2.1 IDeckLink::GetModelName method¶

HRESULT IDeckLink::GetModelName(string *modelName);¶

The GetModelName method can be used to get DeckLink device model name.

Parameters:

modelName – Hardware model name. This allocated string must be freed by the caller when no longer required.

Return values:
  • E_FAIL – Failure

  • S_OK – Success

2.5.2.2 IDeckLink::GetDisplayName method¶

HRESULT IDeckLink::GetDisplayName(string *displayName);¶

The GetDisplayName method returns a string suitable for display in a user interface. If the device has a custom label specified (see bmdDeckLinkConfigDeviceInformationLabel), the label will be used as the display name for the device.

Otherwise, the string is made of the model name (as returned by GetModelName) followed by an increasing number (starting from 1) if more than one instance of a device is present in the system. If not, the returned string is simply the model name.

Parameters:

displayName – The device’s display name. This allocated string must be freed by caller when no longer required

Return values:
  • E_FAIL – Failure

  • S_OK – Success

  • ← 2.5.1 IDeckLinkIterator Interface
  • 2.5.3 IDeckLinkOutput Interface →
Desktop Video 15.0 SDK
© Copyright 2003-2025 Blackmagic Design. All rights reserved.