Метод 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) |