Метод IMFDeviceTransform::SetInputStreamState (mftransform.h)
Метод SetInputStreamState задает состояние входного потока MFT устройства и тип носителя.
Синтаксис
HRESULT SetInputStreamState(
[in] DWORD dwStreamID,
[in] IMFMediaType *pMediaType,
[in] DeviceStreamState value,
[in] DWORD dwFlags
);
Параметры
[in] dwStreamID
Идентификатор потока входного потока, в котором необходимо изменить состояние и тип носителя.
[in] pMediaType
Предпочтительный тип носителя для входного потока передается через этот параметр. Устройство MFT должно изменять тип носителя только в том случае, если тип входящего носителя отличается от текущего типа мультимедиа.
[in] value
Указывает DeviceStreamState , на который должен перейти входной поток.
[in] dwFlags
Когда возвращается S_OK , выполните операцию изменения состояния. В противном случае он содержит ошибку, которая произошла при задании типа носителя в выходном контакте devproxy. В этом случае следует соответствующим образом распространить ошибку.
Возвращаемое значение
Метод возвращает HRESULT. Возможные значения включают, помимо прочего, значения, указанные в следующей таблице.
Код возврата | Описание |
---|---|
|
Инициализация выполнена успешно |
|
В настоящее время MFT-устройство не поддерживает запрос. |
|
Передан недопустимый идентификатор потока. |
|
Запрошенный переход потока невозможен. |
Комментарии
Эта функция интерфейса помогает перевести входной поток в указанное состояние с заданным типом носителя, заданным во входном потоке. Он будет использоваться диспетчером преобразования устройств (DTM), когда MFT устройства запрашивает изменение состояния и типа носителя определенного входного потока. Устройство MFT потребуется запросить такое изменение при изменении одного из выходных данных MFT устройства.
В качестве примера рассмотрим MFT-устройство с двумя входными и тремя потоками вывода. Пусть выходные данные 1 и выходные данные 2 будут источником из входных данных 1 и потоковой передачи в 720p. Теперь, если тип носителя output 2 изменится на 1080p, MFT устройства необходимо изменить тип носителя Input 1 на 1080p. Для этого устройство MFT должно запросить DTM для вызова этого метода с помощью сообщения METransformInputStreamStateChanged .
Требования
Минимальная версия клиента | Windows 10 версии 1703 |
Целевая платформа | Windows |
Header | mftransform.h |