2.5.42 IDeckLinkVideoFrameMetadataExtensions Interface

The IDeckLinkVideoFrameMetadataExtensions interface provides frame metadata associated with an IDeckLinkVideoFrame.

If present, an IDeckLinkVideoFrameMetadataExtensions interface may be queried from any other frame interface using QueryInterface if the frame implements this optional interface.

Tip

CreateVideoFrame and CreateVideoFrameWithBuffer will always return a frame that has this interface.

Related Interfaces

Interface

Interface ID

Description

IDeckLinkVideoFrame

IID_IDeckLinkVideoFrame

An IDeckLinkVideoFrameMetadataExtensions object interface may be obtained from IDeckLinkVideoFrame using QueryInterface

IDeckLinkVideoFrameMutableMetadataExtensions

IID_IDeckLinkVideoFrameMutableMetadataExtensions

IDeckLinkVideoFrameMutableMetadataExtensions subclasses IDeckLinkVideoFrameMetadataExtensions

2.5.42.1 IDeckLinkVideoFrameMetadataExtensions::GetInt method

HRESULT IDeckLinkVideoFrameMetadataExtensions::GetInt(BMDDeckLinkFrameMetadataID metadataID, int64_t *value);

The GetInt method gets the current integer value of a metadata item associated with the given BMDDeckLinkFrameMetadataID.

Parameters:
  • metadataID – The BMDDeckLinkFrameMetadataID of the metadata information item.

  • value – The 64-bit signed integer value corresponding to the metadataID.

Return values:
  • E_INVALIDARG – There is no integer type metadata item corresponding to the given BMDDeckLinkFrameMetadataID.

  • E_FAIL – Failure

  • S_OK – Success

2.5.42.2 IDeckLinkVideoFrameMetadataExtensions::GetFloat method

HRESULT IDeckLinkVideoFrameMetadataExtensions::GetFloat(BMDDeckLinkFrameMetadataID metadataID, double *value);

The GetFloat method gets the current double value of a metadata item associated with the given BMDDeckLinkFrameMetadataID.

Parameters:
  • metadataID – The BMDDeckLinkFrameMetadataID of the metadata information item.

  • value – The double value corresponding to the metadataID.

Return values:
  • E_INVALIDARG – There is no float type metadata item corresponding to the given BMDDeckLinkFrameMetadataID.

  • E_FAIL – Failure

  • S_OK – Success

2.5.42.3 IDeckLinkVideoFrameMetadataExtensions::GetFlag method

HRESULT IDeckLinkVideoFrameMetadataExtensions::GetFlag(BMDDeckLinkFrameMetadataID metadataID, Boolean *value);

The GetFlag method gets the current boolean value of a metadata item associated with the given BMDDeckLinkFrameMetadataID.

Parameters:
  • metadataID – The BMDDeckLinkFrameMetadataID of the metadata information item.

  • value – The boolean value corresponding to the metadataID.

Return values:
  • E_INVALIDARG – There is no flag type metadata item corresponding to the given BMDDeckLinkFrameMetadataID.

  • E_FAIL – Failure

  • S_OK – Success

2.5.42.4 IDeckLinkVideoFrameMetadataExtensions::GetString method

HRESULT IDeckLinkVideoFrameMetadataExtensions::GetString(BMDDeckLinkFrameMetadataID metadataID, string *value);

The GetString method gets the current string value of a metadata item associated with the given BMDDeckLinkFrameMetadataID.

Parameters:
  • metadataID – The BMDDeckLinkFrameMetadataID of the metadata information item.

  • value – The string value corresponding to the metadataID. This allocated string must be freed by the caller when no longer required.

Return values:
  • E_INVALIDARG – There is no string type metadata item corresponding to the given BMDDeckLinkFrameMetadataID.

  • E_FAIL – Failure

  • S_OK – Success

2.5.42.5 IDeckLinkVideoFrameMetadataExtensions::GetBytes method

HRESULT IDeckLinkVideoFrameMetadataExtensions::GetBytes(BMDDeckLinkFrameMetadataID metadataID, void *buffer, uint32_t *bufferSize);

The GetBytes method gets a pointer to data of a metadata item associated with the given BMDDeckLinkFrameMetadataID. To determine the size of the buffer required, call GetBytes by initially passing buffer as NULL. GetBytes will return S_OK and bufferSize will be updated to the required size.

Parameters:
  • metadataID – The BMDDeckLinkFrameMetadataID of the metadata information item.

  • buffer – The buffer in which to return the metadata data, or NULL to determine the required buffer size.

  • bufferSize – The size of the provided buffer. Will be updated to the number of bytes returned.

Return values:
  • E_INVALIDARG – Parameter bufferSize variable is NULL.

  • E_OUTOFMEMORY – The provided buffer is too small.

  • E_UNEXPECTED – There is no byte data type metadata item corresponding to the given BMDDeckLinkFrameMetadataID.

  • E_FAIL – Failure

  • S_OK – Success