다음을 통해 공유


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 반환합니다. 호출 시 StreamPointer 잠기지 않았거나 진행 후 스트림 포인터를 잠글 수 없는 경우 STATUS_DEVICE_NOT_READY 반환합니다.

발언

AVStream은 요청된 값으로 인/아웃 데이터 포인터 및 기타 관련 필드를 업데이트합니다. 오프셋을 진행하면 현재 프레임에 0바이트가 남게 되며, AVStream은 스트림 포인터를 다음 데이터 프레임으로 이동하고 다시 차단합니다.

KsStreamPointerAdvanceOffsets호출하기 전에 StreamPointer 잠겨 있는지 확인하는 것은 미니 드라이버의 책임입니다. 또한 단일 고급은 큐에서 다음 프레임의 시작 부분보다 더 멀리 스트림 포인터를 진행할 수 없습니다. 따라서 미니 드라이버는 StreamPointer -> Offset*보다 큰 값으로 오프셋을 진행하려고 시도해서는 안 됩니다. 남은.

또한 Stream 포인터참조하세요.

요구 사항

요구
지원되는 최소 클라이언트 Microsoft Windows XP 이상 운영 체제 및 DirectX 8.0 이상 DirectX 버전에서 사용할 수 있습니다.
대상 플랫폼 보편적
헤더 ks.h(Ks.h 포함)
라이브러리 Ks.lib
IRQL <=DISPATCH_LEVEL

참고 항목

KsStreamPointerAdvance

KsStreamPointerAdvanceOffsetsAndUnlock

KsStreamPointerLock

KsStreamPointerUnlock