2.5.8 IDeckLinkVideoFrame3DExtensions Interface¶
The IDeckLinkVideoFrame3DExtensions
interface allows linking of video frames in left eye / right eye pairs, to support 3D capture and playback.
Note
This interface is applicable only to DeckLink devices which support 3D features, such the DeckLink 4K Extreme.
All frames belonging to a 3D stream can be queried for an IDeckLinkVideoFrame3DExtensions
interface, which indicates whether this frame is a left or right-eye frame and allows access to the right eye frame if this frame is a left eye frame.
Note
For playback, the user must implement the IDeckLinkVideoFrame3DExtensions
interface that is queried from a frame. These frames can be made by calling CreateVideoFrame or CreateVideoFrameWithBuffer, and then use IDeckLinkMutableVideoFrame::SetInterfaceProvider()
to provide a user-implemented IDeckLinkVideoFrame3DExtensions
interface. Alternatively the user can make a custom frame object that implements at least IDeckLinkVideoFrame
, IDeckLinkVideoBuffer
and IDeckLinkVideoFrame3DExtensions
interfaces.
Interface |
Interface ID |
Description |
---|---|---|
IID_IDeckLinkVideoFrame |
An |
2.5.8.1 IDeckLinkVideoFrame3DExtensions::Get3DPackingFormat method¶
-
BMDVideo3DPackingFormat IDeckLinkVideoFrame3DExtensions::Get3DPackingFormat();¶
The Get3DPackingFormat method indicates whether the video frame belongs to the left eye or right eye stream.
- Returns:
Either
bmdVideo3DPackingRightOnly
orbmdVideo3DPackingLeftOnly
. SeeBMDVideo3DPackingFormat
for more details.
2.5.8.2 IDeckLinkVideoFrame3DExtensions::GetFrameForRightEye method¶
-
HRESULT IDeckLinkVideoFrame3DExtensions::GetFrameForRightEye(IDeckLinkVideoFrame **rightEyeFrame);¶
The GetFrameForRightEye method accesses the right eye frame of a 3D pair.
- Parameters:
rightEyeFrame – The right eye frame. This object must be released by the caller when no longer required.
- Return values:
E_INVALIDARG – The parameter is invalid.
S_FALSE – This frame is the right eye frame.
S_OK – Success