다음을 통해 공유


MFCreateDeviceSource 함수(mfidl.h)

하드웨어 캡처 디바이스에 대한 미디어 원본을 만듭니다.

구문

HRESULT MFCreateDeviceSource(
  [in]  IMFAttributes  *pAttributes,
  [out] IMFMediaSource **ppSource
);

매개 변수

[in] pAttributes

디바이스를 선택하는 데 사용되는 특성 저장소의 IMFAttributes 인터페이스에 대한 포인터입니다. 설명 부분을 참조하세요.

[out] ppSource

미디어 원본의 IMFMediaSource 인터페이스에 대한 포인터를 받습니다. 호출자는 인터페이스를 해제해야 합니다.

반환 값

이 함수가 성공하면 S_OK 반환합니다. 그러지 않으면 HRESULT 오류 코드를 반환합니다.

설명

중요 캡처 디바이스가 더 이상 필요하지 않은 경우 MFCreateDeviceSource를 호출하여 가져온 IMFMediaSource 개체에서 Shutdown을 호출하여 디바이스를 종료해야 합니다. 시스템이 Shutdown이 호출될 때까지 IMFMediaSource 리소스에 대한 참조를 유지할 수 있으므로 종료를 호출하지 않으면 메모리 링크가 발생할 수 있습니다.
 
pAttributes 매개 변수는 특성 저장소를 지정합니다. 특성 저장소를 만들려면 MFCreateAttributes 함수를 호출합니다 . 디바이스 유형(오디오 또는 비디오)을 지정하는 MF_DEVSOURCE_ATTRIBUTE_SOURCE_TYPE 특성을 설정해야 합니다.

오디오 캡처 디바이스의 경우 필요에 따라 다음 특성 중 하나를 설정합니다.

attribute Description
MF_DEVSOURCE_ATTRIBUTE_SOURCE_TYPE_AUDCAP_ENDPOINT_ID 오디오 캡처 디바이스의 오디오 엔드포인트 ID를 지정합니다.
MF_DEVSOURCE_ATTRIBUTE_SOURCE_TYPE_AUDCAP_ROLE 디바이스 역할을 지정합니다. 이 특성이 설정된 경우 함수는 해당 디바이스 역할에 대한 기본 오디오 캡처 디바이스를 사용합니다.

이 특성을 MF_DEVSOURCE_ATTRIBUTE_SOURCE_TYPE_AUDCAP_ENDPOINT_ID 특성과 결합하지 마세요.

 

두 특성을 모두 지정하지 않으면 함수는 eCommunications 역할에 대한 기본 오디오 캡처 디바이스를 선택합니다.

비디오 캡처 디바이스의 경우 다음 특성을 설정해야 합니다.

attribute Description
MF_DEVSOURCE_ATTRIBUTE_SOURCE_TYPE_VIDCAP_SYMBOLIC_LINK 디바이스에 대한 기호 링크를 지정합니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 7 [데스크톱 앱만 해당]
지원되는 최소 서버 Windows Server 2008 R2 [데스크톱 앱만 해당]
대상 플랫폼 Windows
헤더 mfidl.h
라이브러리 Mf.lib
DLL Mf.dll

추가 정보

Media Foundation의 오디오/비디오 캡처

디바이스 특성 캡처

MFCreateDeviceSourceActivate

미디어 파운데이션 함수