Share via


IMFDeviceTransform::GetStreamIDs 메서드(mftransform.h)

GetStreamIDs 메서드는 이 MFT(Media Foundation 변환)의 입력 및 출력 스트림에 대한 스트림 식별자를 가져옵니다.

구문

HRESULT GetStreamIDs(
  [in]  DWORD dwInputIDArraySize,
  [out] DWORD *pdwInputStreamIds,
  [out] DWORD dwOutputIDArraySize,
        DWORD *pdwOutputStreamIds
);

매개 변수

[in] dwInputIDArraySize

pdwInputStreamIDs의 요소 수

[out] pdwInputStreamIds

호출자가 할당한 배열에 대한 포인터입니다. 메서드는 입력 스트림 식별자로 배열을 채웁니다. 배열 크기는 적어도 입력 스트림 수와 같아야 합니다. 입력 스트림 수를 얻으려면 IMFDeviceTransform::GetStreamCount를 호출합니다.

호출자가 입력 스트림 수보다 큰 배열을 전달하는 경우 MFT는 값을 추가 배열 항목에 쓰지 않아야 합니다.

[out] dwOutputIDArraySize

pdwOutputStreamIDs의 요소 수입니다.

pdwOutputStreamIds

호출자가 할당한 배열에 대한 포인터입니다. 메서드는 출력 스트림 식별자로 배열을 채웁니다. 배열 크기는 출력 스트림 수와 적어도 같아야 합니다. 출력 스트림 수를 얻으려면 IMFDeviceTransform::GetStreamCount를 호출합니다.

반환 값

이 메서드는 HRESULT를 반환합니다. 가능한 값에는 다음 표에 제공된 값이 포함되지만 제한되지는 않습니다.

반환 코드 Description
S_OK
스트림 상태를 전환했습니다.
E_POINTER
잘못된 포인터가 전달되었습니다.
MF_E_BUFFERTOOSMALL
들어오는 버퍼에 스트림 ID를 채울 공간이 부족합니다.

설명

일부 MFT는 스트림을 추가하거나 제거할 수 있으므로 스트림 식별자가 필요하므로 스트림의 인덱스가 고유하지 않을 수 있습니다. 따라서 스트림에서 작동하는 IMFDeviceTransform 메서드는 스트림 식별자를 사용합니다.

모든 입력 스트림 식별자는 MFT 내에서 고유해야 하며 모든 출력 스트림 식별자는 고유해야 합니다. 그러나 입력 스트림과 출력 스트림은 동일한 식별자를 공유할 수 있습니다. I

클라이언트가 입력 스트림을 추가하는 경우 클라이언트는 식별자를 할당하므로 MFT는 고유한 경우 임의의 식별자를 허용해야 합니다. MFT가 출력 스트림을 만드는 경우 MFT는 식별자를 할당합니다.

규칙에 따라 MFT에 정확히 하나의 고정 입력 스트림과 하나의 고정 출력 스트림이 있는 경우 식별자 0을 두 스트림에 할당해야 합니다.

요구 사항

   
지원되는 최소 클라이언트 Windows 10, 버전 1703
대상 플랫폼 Windows
헤더 mftransform.h

참고 항목

IMFDeviceTransform