2.5.56 IDeckLinkVideoFrameMutableMetadataExtensions Interface¶
The IDeckLinkVideoFrameMutableMetadataExtensions interface allows setting frame metadata associated with an IDeckLinkVideoFrame.
If present, an IDeckLinkVideoFrameMutableMetadataExtensions interface may be queried from any other frame interface using QueryInterface.
Tip
CreateVideoFrame and CreateVideoFrameWithBuffer will always return a frame that has this interface.
Note
The IDeckLinkVideoFrameMutableMetadataExtensions interface can be used to attach custom metadata to the IDeckLinkVideoFrame, not just the metadata items defined by BMDDeckLinkFrameMetadataID.
Interface |
Interface ID |
Description |
|---|---|---|
IID_IDeckLinkVideoFrame |
An |
|
IID_IDeckLinkMutableVideoFrame |
An |
|
IID_IDeckLinkVideoFrameMetadataExtensions |
|
2.5.56.1 IDeckLinkVideoFrameMutableMetadataExtensions::SetInt method¶
-
HRESULT IDeckLinkVideoFrameMutableMetadataExtensions::SetInt(BMDDeckLinkFrameMetadataID metadataID, int64_t value);¶
The SetInt method sets the current integer value of a metadata item associated with the given
BMDDeckLinkFrameMetadataID.- Parameters:
metadataID – The ID of the metadata.
value – The integer value to set for the metadata.
- Return values:
E_INVALIDARG – There is no integer type metadata corresponding to the given BMDDeckLinkFrameMetadataID.
E_FAIL – Failure
S_OK – Success
2.5.56.2 IDeckLinkVideoFrameMutableMetadataExtensions::SetFloat method¶
-
HRESULT IDeckLinkVideoFrameMutableMetadataExtensions::SetFloat(BMDDeckLinkFrameMetadataID metadataID, double value);¶
The SetFloat method sets the current double value of a metadata item associated with the given
BMDDeckLinkFrameMetadataID.- Parameters:
metadataID – The ID of the metadata.
value – The double value to set for the metadata.
- Return values:
E_INVALIDARG – There is no float type metadata corresponding to the given BMDDeckLinkFrameMetadataID.
E_FAIL – Failure
S_OK – Success
2.5.56.3 IDeckLinkVideoFrameMutableMetadataExtensions::SetFlag method¶
-
HRESULT IDeckLinkVideoFrameMutableMetadataExtensions::SetFlag(BMDDeckLinkFrameMetadataID metadataID, Boolean value);¶
The SetFlag method sets the current boolean value of a metadata item associated with the given
BMDDeckLinkFrameMetadataID.- Parameters:
metadataID – The ID of the metadata.
value – The boolean value to set for the metadata.
- Return values:
E_INVALIDARG – There is no boolean type metadata corresponding to the given BMDDeckLinkFrameMetadataID.
E_FAIL – Failure
S_OK – Success
2.5.56.4 IDeckLinkVideoFrameMutableMetadataExtensions::SetString method¶
-
HRESULT IDeckLinkVideoFrameMutableMetadataExtensions::SetString(BMDDeckLinkFrameMetadataID metadataID, string value);¶
The SetString method sets the current string value of a metadata item associated with the given
BMDDeckLinkFrameMetadataID.- Parameters:
metadataID – The ID of the metadata.
value – The string to set for the metadata. The value of the string is copied, so the string remains in the ownership of the caller.
- Return values:
E_INVALIDARG – There is no string type metadata corresponding to the given BMDDeckLinkFrameMetadataID.
E_FAIL – Failure
S_OK – Success
2.5.56.5 IDeckLinkVideoFrameMutableMetadataExtensions::SetBytes method¶
-
HRESULT IDeckLinkVideoFrameMutableMetadataExtensions::SetBytes(BMDDeckLinkFrameMetadataID metadataID, void *buffer, uint32_t bufferSize);¶
The SetBytes method sets the current payload of a metadata item associated with the given
BMDDeckLinkFrameMetadataID.- Parameters:
metadataID – The ID of the metadata.
buffer – The buffer to set for the metadata. The buffer will be copied.
bufferSize – The size of the provided buffer.
- Return values:
E_INVALIDARG – There is no payload type configuration setting for this operation corresponding to the given BMDDeckLinkFrameMetadataID.
E_FAIL – Failure
S_OK – Success