Метод IKsPin::KsDeliver (ksproxy.h)

Метод KsDeliver доставляет образец мультимедиа из выходного контакта во входной контакт, продолжает операцию ввода-вывода, извлекая следующий буфер из распределителя, и отправляет буфер на связанное устройство.

Синтаксис

HRESULT KsDeliver(
  [in] IMediaSample *Sample,
  [in] ULONG        Flags
);

Параметры

[in] Sample

Указатель на интерфейс IMediaSample для связанного примера мультимедиа.

[in] Flags

Указывает битовую маску, перечисляющую сведения о заголовке потока примера мультимедиа. Возможно побитовое сочетание или следующих флагов:

KSSTREAM_HEADER_OPTIONSF_SPLICEPOINT

KSSTREAM_HEADER_OPTIONSF_PREROLL

KSSTREAM_HEADER_OPTIONSF_DATADISCONTINUITY

KSSTREAM_HEADER_OPTIONSF_TYPECHANGED

KSSTREAM_HEADER_OPTIONSF_TIMEVALID

KSSTREAM_HEADER_OPTIONSF_TIMEDISCONTINUITY

KSSTREAM_HEADER_OPTIONSF_FLUSHONPAUSE

KSSTREAM_HEADER_OPTIONSF_DURATIONVALID

KSSTREAM_HEADER_OPTIONSF_ENDOFSTREAM

KSSTREAM_HEADER_OPTIONSF_LOOPEDDATA

Эти флаги определяются в элементе OptionsFlags описания структуры KSSTREAM_HEADER .

Закрепленное подключение проверяет флаг конца потока (KSSTREAM_HEADER_OPTIONSF_ENDOFSTREAM), чтобы определить, нужно ли доставить событие конца потока после завершения примера.

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

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

Комментарии

Обработчик интерфейса (IKsInterfaceHandler) вызывает KsDeliver в выходном контакте фильтра, чтобы доставить образец мультимедиа во входной контакт другого фильтра. Эти входные и выходные контакты подключены.

Для входного контакта KsDeliver является недопустимой точкой входа и возвращает EFAIL.

Дополнительные сведения об IMediaSample см. в документации по Microsoft Windows SDK.

Требования

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

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

IKsInterfaceHandler

IKsInterfaceHandler::KsCompleteIo