다음을 통해 공유


IMFMediaSource 인터페이스(mfidl.h)

미디어 원본 개체에 의해 구현됩니다.

미디어 원본은 미디어 데이터를 생성하는 개체입니다. 예를 들어 데이터는 비디오 파일, 네트워크 스트림 또는 하드웨어 디바이스(예: 카메라)에서 나올 수 있습니다. 각 미디어 원본에는 하나 이상의 스트림이 포함되며 각 스트림은 오디오 또는 비디오와 같은 한 가지 유형의 데이터를 제공합니다.

상속

IMFMediaSource 인터페이스는 IMFMediaEventGenerator에서 상속됩니다. IMFMediaSource 에는 다음과 같은 유형의 멤버도 있습니다.

메서드

IMFMediaSource 인터페이스에는 이러한 메서드가 있습니다.

 
IMFMediaSource::CreatePresentationDescriptor

미디어 원본의 프레젠테이션 설명자의 복사본을 검색합니다. 애플리케이션은 프레젠테이션 설명자를 사용하여 스트림을 선택하고 원본 콘텐츠에 대한 정보를 가져옵니다.
IMFMediaSource::GetCharacteristics

미디어 원본의 특성을 검색합니다.
IMFMediaSource::P ause

미디어 원본의 모든 활성 스트림을 일시 중지합니다.
IMFMediaSource::Shutdown

미디어 원본을 종료하고 사용 중인 리소스를 해제합니다.
IMFMediaSource::Start

재생을 시작할 위치를 지정하여 미디어 원본을 시작, 검색 또는 다시 시작합니다.
IMFMediaSource::Stop

미디어 원본의 모든 활성 스트림을 중지합니다.

비고

Windows 8에서 이 인터페이스는 IMFMediaSourceEx를 사용하여 확장됩니다.

카메라 또는 마이크와 같은 일부 디바이스 원본의 경우 IMFMediaSource 는 사용자 모드 애플리케이션에서 KSPROPERTY, KSEVENT 및 KSMETHOD 작업을 기본 디바이스 드라이버에 발급하는 데 사용할 수 있는 IKsControl 도 구현합니다.

비고

이 인터페이스는 선택 사항이며 사용할 수 없습니다. 이 인터페이스를 사용할 수 없는 경우 QueryInterface 는 E_NOINTERFACE 반환합니다.

IMFSourceResolver::CreateObjectFromByteStream, IMFSourceResolver::CreateObjectFromURL 또는 해당 메서드의 비동기 버전을 호출하여 IMFMediaSource 인스턴스를 가져옵니다.

다음 예제에서는 IMFSourceResolver를 사용하여 IMFByteStream에서 IMFMediaSource 인스턴스를 가져오는 방법을 보여 줍니다.

#include <wil.h>
#include <mfplat.h>
#include <mfidl.h>

HRESULT CreateMediaSourceFromStream(_In_ IMFByteStream* stream, _COM_Outptr_ IMFMediaSource** source)
{
    *source = nullptr;

    wil::com_ptr_nothrow<IMFSourceResolver> sourceResolver;
    RETURN_IF_FAILED(MFCreateSourceResolver(&sourceResolver));

    MF_OBJECT_TYPE objectType;
    wil::com_ptr_nothrow<IUnknown> sourceUnknown;
    RETURN_IF_FAILED(sourceResolver->CreateObjectFromByteStream(stream, nullptr, MF_RESOLUTION_MEDIASOURCE, nullptr, &objectType, &sourceUnknown));

    RETURN_IF_FAILED(sourceUnknown.copy_to(IID_PPV_ARGS(source)));
    return S_OK;
}

요구 사항

요구 사항 가치
지원되는 최소 클라이언트 Windows Vista [데스크톱 앱 | UWP 앱]
지원되는 최소 서버 Windows Server 2008 [데스크톱 앱 | UWP 앱]
대상 플랫폼 윈도우즈
Header mfidl.h

참고하십시오

IMFMediaEventGenerator

Media Foundation 인터페이스

미디어 원본