IMFPMediaPlayer::CreateMediaItemFromObject 메서드(mfplay.h)
개체에서 미디어 항목을 만듭니다.
구문
HRESULT CreateMediaItemFromObject(
[in] IUnknown *pIUnknownObj,
[in] BOOL fSync,
[in] DWORD_PTR dwUserData,
[out] IMFPMediaItem **ppMediaItem
);
매개 변수
[in] pIUnknownObj
개체의 IUnknown 인터페이스에 대한 포인터입니다. 설명 부분을 참조하세요.
[in] fSync
TRUE이면 메서드가 완료될 때까지 차단됩니다. FALSE이면 메서드가 차단되지 않고 비동기적으로 완료됩니다.
[in] dwUserData
미디어 항목에 저장할 애플리케이션 정의 값입니다. 미디어 항목에서 이 값을 검색하려면 IMFPMediaItem::GetUserData를 호출합니다.
[out] ppMediaItem
IMFPMediaItem 인터페이스에 대한 포인터를 받습니다. 호출자는 인터페이스를 해제해야 합니다. fSync가 TRUE이면 이 매개 변수가 유효한 포인터여야 합니다. bSync가 FALSE이면 이 매개 변수는 NULL이어야 합니다.
반환 값
이 메서드는 HRESULT를 반환합니다. 가능한 값에는 다음 표에 있는 값이 포함되지만, 이에 국한되는 것은 아닙니다.
반환 코드 | 설명 |
---|---|
|
메서드가 성공했습니다. |
|
인수가 잘못되었습니다. |
|
잘못된 요청입니다. 이 오류는 fSync 가 FALSE 이고 애플리케이션이 콜백 인터페이스를 제공하지 않은 경우에 발생할 수 있습니다. 설명 부분을 참조하세요. |
|
개체의 Shutdown 메서드가 호출되었습니다. |
설명
pIUnknownObj 매개 변수는 다음 중 하나를 지정해야 합니다.
- 미디어 원본에 대한 포인터입니다. 미디어 원본은 IMFMediaSource 인터페이스를 노출합니다. 미디어 소스에서 IMFMediaSource::Shutdown 을 호출하는 것은 호출자의 책임입니다.
- 바이트 스트림에 대한 포인터입니다. 바이트 스트림은 IMFByteStream 인터페이스를 노출합니다. 내부적으로 메서드는 IMFSourceResolver::CreateObjectFromByteStream 메서드를 호출하여 바이트 스트림에서 미디어 원본을 만듭니다. 따라서 바이트 스트림 처리기를 바이트 스트림에 등록해야 합니다. 바이트 스트림 처리기에 대한 자세한 내용은 체계 처리기 및 Byte-Stream 처리기를 참조하세요.
CreateMediaItemFromObject 메서드를 동기적으로 또는 비동기적으로 호출할 수 있습니다.
- fSync가 TRUE이면 메서드가 동기적으로 완료됩니다. IMFPMediaItem 포인터는 ppMediaItem 매개 변수에 반환됩니다.
- fSync가 FALSE이면 메서드가 비동기적으로 완료됩니다. 작업이 완료되면 애플리케이션의 IMFPMediaPlayerCallback::OnMediaPlayerEvent 콜백 메서드가 호출됩니다. 이벤트 유형이 MFP_EVENT_TYPE_MEDIAITEM_CREATED. 이벤트 데이터에는 새 미디어 항목에 대한 IMFPMediaItem 포인터가 포함됩니다.
CreateMediaItemFromObject를 여러 번 비동기 호출하는 경우 동일한 순서로 완료할 수 없습니다. dwUserData 매개 변수를 사용하여 생성된 미디어 항목을 보류 중인 요청과 일치시킬 수 있습니다.
원본 구성
pIUnknownObj가 바이트 스트림을 가리키는 경우 다음 단계를 수행하여 미디어 원본을 구성할 수 있습니다.- IMFPMediaPlayer 포인터에서 QueryInterface를 호출하여 IPropertyStore 인터페이스를 가져옵니다.
- IPropertyStore::SetValue를 호출하여 미디어 원본에 대한 속성을 설정합니다. 구성 속성 목록은 미디어 원본 구성을 참조하세요. 타사 미디어 원본은 사용자 지정 속성을 정의할 수 있습니다.
- CreateMediaItemFromObject 메서드를 호출하여 미디어 항목을 만듭니다.
요구 사항
지원되는 최소 클라이언트 | Windows 7 [데스크톱 앱만 해당] |
지원되는 최소 서버 | Windows Server 2008 R2 [데스크톱 앱만 해당] |
대상 플랫폼 | Windows |
헤더 | mfplay.h |
참고 항목
피드백
https://aka.ms/ContentUserFeedback
출시 예정: 2024년 내내 콘텐츠에 대한 피드백 메커니즘으로 GitHub 문제를 단계적으로 폐지하고 이를 새로운 피드백 시스템으로 바꿀 예정입니다. 자세한 내용은 다음을 참조하세요.다음에 대한 사용자 의견 제출 및 보기