2.6.6 IBMDStreamingDeviceInput Interface¶
The IBMDStreamingDeviceInput
interface represents a physical streaming video encoder device.
Interface |
Interface ID |
Description |
---|---|---|
IID_IDeckLink |
An |
|
IID_IDeckLinkDisplayModeIterator |
|
|
IID_IBMDStreamingVideoEncodingMode |
|
|
IID_IBMDStreamingVideoEncodingMode |
|
|
IID_IBMDStreamingVideoEncodingModePresetIterator |
|
2.6.6.1 IBMDStreamingDeviceInput::DoesSupportVideoInputMode method¶
-
HRESULT IBMDStreamingDeviceInput::DoesSupportVideoInputMode(BMDDisplayMode inputMode, Boolean *result);¶
The DoesSupportVideoInputMode method indicates whether a given video input mode is supported on the device.
- Parameters:
inputMode –
BMDDisplayMode
to test for input support.result – Boolean value indicating whether the mode is supported.
- Return values:
E_POINTER – The result parameter is invalid.
E_INVALIDARG – The inputMode parameter is invalid
S_OK – Success
2.6.6.2 IBMDStreamingDeviceInput::GetVideoInputModeIterator method¶
-
HRESULT IBMDStreamingDeviceInput::GetVideoInputModeIterator(IDeckLinkDisplayModeIterator **iterator);¶
The GetVideoInputModeIterator method returns an iterator which enumerates the available video input modes.
- Parameters:
iterator – Display mode iterator
- Return values:
E_POINTER – The iterator parameter is invalid.
E_FAIL – Failure
S_OK – Success
2.6.6.3 IBMDStreamingDeviceInput::SetVideoInputMode method¶
-
HRESULT IBMDStreamingDeviceInput::SetVideoInputMode(BMDDisplayMode inputMode);¶
The SetVideoInputMode method configures the device to use the specified video display mode for input.
- Parameters:
inputMode – Display mode to set as the input display mode
- Return values:
E_INVALIDARG – The inputMode parameter is invalid
E_FAIL – Failure
S_OK – Success
2.6.6.4 IBMDStreamingDeviceInput::GetCurrentDetectedVideoInputMode method¶
-
HRESULT IBMDStreamingDeviceInput::GetCurrentDetectedVideoInputMode(BMDDisplayMode *detectedMode);¶
The GetCurrentDetectedVideoInputMode method returns the current video input display mode as detected by the device.
- Parameters:
detectedMode – Display mode the device detected for video input
- Return values:
E_INVALIDARG – The detectedMode parameter is invalid
E_FAIL – Failure
S_OK – Success
2.6.6.5 IBMDStreamingDeviceInput::GetVideoEncodingMode method¶
-
HRESULT IBMDStreamingDeviceInput::GetVideoEncodingMode(IBMDStreamingVideoEncodingMode **encodingMode);¶
The GetVideoEncodingMode method returns the currently configured video encoding mode.
- Parameters:
encodingMode – Current video encoding mode
- Return values:
E_INVALIDARG – The encodingMode parameter is invalid
E_FAIL – Failure
S_OK – Success
2.6.6.6 IBMDStreamingDeviceInput::GetVideoEncodingModePresetIterator method¶
-
HRESULT IBMDStreamingDeviceInput::GetVideoEncodingModePresetIterator(BMDDisplayMode inputMode, IBMDStreamingVideoEncodingModePresetIterator **iterator);¶
The GetVideoEncodingModePresetIterator method returns an iterator which enumerates the available video encoding mode presets.
Different video display modes may have different encoding mode presets.
- Parameters:
inputMode – The DisplayMode to iterate encoding mode presets for
iterator – Video encoding mode preset iterator
- Return values:
E_INVALIDARG – The iterator parameter is invalid
E_FAIL – Failure
S_OK – Success
2.6.6.7 IBMDStreamingDeviceInput::DoesSupportVideoEncodingMode method¶
-
HRESULT IBMDStreamingDeviceInput::DoesSupportVideoEncodingMode(BMDDisplayMode inputMode, IBMDStreamingVideoEncodingMode *encodingMode, BMDStreamingEncodingSupport *result, IBMDStreamingVideoEncodingMode **changedEncodingMode);¶
The DoesSupportVideoEncodingMode method indicates whether a given video encoding mode is support by the device for the given input display mode.
Modes may be supported, not supported or supported with changes. If a mode is supported with changes, the changed mode will be returned by the changedEncodingMode parameter.
- Parameters:
inputMode – Display mode to be used with the video encoding mode
encodingMode – Video encoding mode to be tested for support
result – Indicates whether the mode is supported, not supported or supported with changes
changedEncodingMode – Changed encoding mode when the mode is supported with changes
- Return values:
E_POINTER – One or more out parameters are invalid
E_INVALIDARG – The encodingMode parameter is invalid
E_FAIL – Failure
S_OK – Success
2.6.6.8 IBMDStreamingDeviceInput::SetVideoEncodingMode method¶
-
HRESULT IBMDStreamingDeviceInput::SetVideoEncodingMode(IBMDStreamingVideoEncodingMode *encodingMode);¶
The SetVideoEncodingMode method sets the given video encoding mode as the device’s current video encoding mode. It is necessary to set a video encoding mode before calling the StartCapture method.
- Parameters:
encodingMode – Video encoding mode to be used by the device.
- Return values:
E_INVALIDARG – The encodingMode parameter is invalid
E_FAIL – Failure
S_OK – Success
2.6.6.9 IBMDStreamingDeviceInput::StartCapture method¶
-
HRESULT IBMDStreamingDeviceInput::StartCapture();¶
The StartCapture method starts a capture on the device using the current video encoding mode.
If a callback implementing the
IBMDStreamingH264InputCallback
interface has been set by the SetCallback method, calls will be made as new compressed video and audio packets are made available by the device.- Return values:
E_FAIL – Failure
S_OK – Success
2.6.6.10 IBMDStreamingDeviceInput::StopCapture method¶
-
HRESULT IBMDStreamingDeviceInput::StopCapture();¶
The StopCapture method stops a capture if a capture is currently in progress.
- Return values:
E_FAIL – Failure
S_OK – Success
2.6.6.11 IBMDStreamingDeviceInput::SetCallback method¶
-
HRESULT IBMDStreamingDeviceInput::SetCallback(IUnknown *theCallback);¶
The SetCallback method configures a callback which will be called for new input from the device or when the device input changes.
An object shall be passed implementing the
IBMDStreamingH264InputCallback
interface as the callback to receive callbacks An existing callback can be removed by passing NULL in the callback parameter.- Parameters:
theCallback – Callback object implementing the
IUnknown
interface- Return values:
E_FAIL – Failure
S_OK – Success