다음을 통해 공유


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