Поделиться через


Функция KsStreamPointerAdvanceOffsets (ks.h)

Функция KsStreamPointerAdvanceOffsets перемещает смещения StreamPointer.

Синтаксис

KSDDKAPI NTSTATUS KsStreamPointerAdvanceOffsets(
  [in] PKSSTREAM_POINTER StreamPointer,
  [in] ULONG             InUsed,
  [in] ULONG             OutUsed,
  [in] BOOLEAN           Eject
);

Параметры

[in] StreamPointer

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

[in] InUsed

Число байтов для продвижения входного указателя этого указателя потока.

(StreamPointer —> OffsetIn)

[in] OutUsed

Число байтов для продвижения указателя вывода этого указателя потока

(StreamPointer —> OffsetOut)

[in] Eject

Этот параметр указывает, должен ли указатель потока быть расширен до следующего кадра данных, если для этого параметра задано значение TRUE, AVStream перемещает указатель потока независимо от того, следует ли продвигать смещения, чтобы указатель потока указывал на конец кадра.

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

KsStreamPointerAdvanceOffsets возвращает STATUS_SUCCESS при успешном выполнении. Возвращает STATUS_DEVICE_NOT_READY, если StreamPointer не заблокирован во время вызова или что указатель потока не может быть заблокирован после улучшения.

Замечания

AVStream обновляет указатели данных и другие связанные поля по запрошенным значениям. Если продвижение смещения приводит к нулю байтов, оставшихся в текущем кадре, AVStream перемещает указатель потока на следующий кадр данных и переблокирует его.

Это ответственность мини-driver, чтобы убедиться, что StreamPointer заблокирован перед вызовом KsStreamPointerAdvanceOffsets. Кроме того, одно улучшение не может продвинуть указатель потока дальше, чем начало следующего кадра в очереди. Таким образом, мини-drivers не должны пытаться продвинуть смещение по значению больше, чем StreamPointer -> Offset*. Оставшиеся.

См. также указатели потока.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Доступно в Microsoft Windows XP и более поздних операционных системах и версиях DirectX 8.0 и более поздних версий DirectX.
целевая платформа Всеобщий
заголовка ks.h (include Ks.h)
библиотеки Ks.lib
IRQL <=DISPATCH_LEVEL

См. также

KsStreamPointerAdvance

KsStreamPointerAdvanceOffsetsAndUnlock

KsStreamPointerLock

KsStreamPointerUnlock