Метод IKsInterfaceHandler::KsCompleteIo (ksproxy.h)

Метод KsCompleteIo очищает расширенные заголовки и освобождает примеры мультимедиа после завершения ввода-вывода.

Синтаксис

HRESULT KsCompleteIo(
  [in, out] PKSSTREAM_SEGMENT StreamSegment
);

Параметры

[in, out] StreamSegment

Указатель на структуру KSSTREAM_SEGMENT , содержащую сведения о заголовке для завершения сегмента потока.

Возвращаемое значение

В случае успешного выполнения возвращает значение NOERROR; в противном случае возвращает код ошибки.

Комментарии

Метод KsCompleteIo удаляет выделенную память, обновляет примеры мультимедиа и уменьшает количество элементов ожидания для прокси-сервера.

Метод KsCompleteIo должен определить тип операции ввода-вывода, выполненной методом IKsInterfaceHandler::KsProcessMediaSamples из элемента IoOperation структуры KSSTREAM_SEGMENT. Если операция ввода-вывода считывала данные из потока (KsIoOperation_Read перечисленного типа KSIOOPERATION), KsCompleteIo выполняет следующие действия для доставки примера из выходного контакта в подключенный входной контакт:

  • Отражает сведения о заголовке потока в интерфейсе IMediaSample .
  • Вызывает метод IKsPin::KsDeliver выходного закрепления для доставки примера. KsDeliver освобождает пример, чтобы при постановке буферов в очередь на устройство можно было получить пример, если он является последним. После этого входной контакт завершает ввод-вывод и можно безопасно освободить образец.
Дополнительные сведения об IMediaSample см. в документации по Microsoft Windows SDK.

Требования

Требование Значение
Целевая платформа Персональный компьютер
Верхняя часть ksproxy.h (включая Ksproxy.h)

См. также раздел

IKsInterfaceHandler::KsProcessMediaSamples

IKsPin::KsDeliver

KSSTREAM_SEGMENT