Метод IMFDeviceTransform::P rocessOutput (mftransform.h)
Метод ProcessOutput получает обработанные выходные данные из потоков вывода MFT устройства.
Синтаксис
HRESULT ProcessOutput(
[in] DWORD dwFlags,
[in] DWORD cOutputBufferCount,
[in] MFT_OUTPUT_DATA_BUFFER *pOutputSample,
[in] DWORD *pdwStatus
);
Параметры
[in] dwFlags
Побитовое ИЛИ с нулевым или более флагами из перечисления _MFT_PROCESS_OUTPUT_FLAGS .
[in] cOutputBufferCount
Количество элементов в массиве pOutputSamples . Значение должно быть не менее 1.
[in] pOutputSample
Указатель на массив MFT_OUTPUT_DATA_BUFFER структур, выделенных вызывающим объектом. MFT использует этот массив для возврата выходных данных вызывающей объекту.
[in] pdwStatus
Получает побитовое ИЛИ, равное нулю или более флагам, из перечисления _MFT_PROCESS_OUTPUT_STATUS .
Возвращаемое значение
Метод возвращает HRESULT. Возможные значения включают, помимо прочего, значения, указанные в следующей таблице.
Код возврата | Описание |
---|---|
|
Метод успешно выполнен. |
|
Передан недопустимый аргумент. |
|
В настоящее время MFT-устройство не поддерживает запрос. |
|
Передан недопустимый идентификатор потока. |
|
Запрошенный переход потока невозможен. |
|
Тип входного носителя не задан. |
Комментарии
В большинстве случаев при успешном выполнении метода преобразование Media Foundation (MFT) сохраняет образец и содержит счетчик ссылок на указатель IMFSample . Когда MFT выполняется с помощью примера, он должен освободить его, чтобы избежать утечек памяти.
После того как диспетчер преобразования устройств (DTM) настроит допустимые типы мультимедиа для всех потоков, MFT всегда должен иметь возможность принимать больше входных данных и создавать дополнительные выходные данные.
Если MFT обнаруживает неустранимую ошибку во входных данных, он может просто удалить данные и попытаться восстановить, когда получит больше входных данных. Если MFT удаляет какие-либо данные, он должен задать атрибут MFSampleExtension_Discontinuity в следующем примере выходных данных, чтобы уведомить вызывающую сторону о наличии пробела в потоке данных.
Требования
Минимальная версия клиента | Windows 10 версии 1703 |
Целевая платформа | Windows |
Header | mftransform.h |