IMFMediaSession::Start 메서드(mfidl.h)

미디어 세션을 시작합니다.

구문

HRESULT Start(
  [in] const GUID        *pguidTimeFormat,
  [in] const PROPVARIANT *pvarStartPosition
);

매개 변수

[in] pguidTimeFormat

pvarStartPosition 매개 변수의 시간 형식을 지정하는 GUID에 대한 포인터입니다. 이 매개 변수는 NULL일 수 있습니다. NULL 값은 GUID_NULL 전달하는 것과 같습니다.

GUID는 다음과 같은 시간 형식으로 정의됩니다.

의미
GUID_NULL
프레젠테이션 시간. pvarStartPosition 매개 변수에는 다음 PROPVARIANT 형식 중 하나가 있어야 합니다.
  • VT_I8: pvarStartPosition 매개 변수는 프레젠테이션의 시작을 기준으로 100나노초 단위의 시작 위치를 포함합니다.
  • VT_EMPTY: 재생은 현재 위치에서 시작됩니다.
모든 미디어 원본은 이 시간 형식을 지원합니다.
MF_TIME_FORMAT_SEGMENT_OFFSET
세그먼트 오프셋입니다. 이 시간 형식은 Sequencer 원본에서 지원됩니다. 시작 시간은 세그먼트 내의 오프셋입니다.

MFCreateSequencerSegmentOffset 함수를 호출하여 pvarStartPosition 매개 변수에 대한 PROPVARIANT 값을 만듭니다.

MF_TIME_FORMAT_ENTRY_RELATIVE
참고 Windows 7 이상이 필요합니다.
 
재생 목록 항목으로 건너뜁니다. pvarStartPosition 매개 변수는 현재 항목을 기준으로 재생 목록 항목의 인덱스를 지정합니다. 예를 들어 값 2는 두 항목을 앞으로 건너뜁니다. 뒤로 건너뛰려면 음수 값을 전달합니다. PROPVARIANT 형식이 VT_I4.

미디어 원본이 이 시간 형식을 지원하는 경우 IMFMediaSource::GetCharacteristics 메서드는 다음 플래그 중 하나 또는 둘 다를 반환합니다.

  • MFMEDIASOURCE_CAN_SKIPFORWARD
  • MFMEDIASOURCE_CAN_SKIPBACKWARD

[in] pvarStartPosition

재생의 시작 위치를 지정하는 PROPVARIANT 에 대한 포인터입니다. 이 매개 변수의 의미와 데이터 형식은 pguidTimeFormat 매개 변수로 표시됩니다.

반환 값

이 메서드는 HRESULT를 반환합니다. 가능한 값에는 다음 표에 있는 값이 포함되지만, 이에 국한되는 것은 아닙니다.

반환 코드 Description
S_OK
메서드가 성공했습니다.
MF_E_INVALIDREQUEST
미디어 세션의 현재 상태에서는 작업을 수행할 수 없습니다.
MF_E_SHUTDOWN
미디어 세션이 종료되었습니다.

설명

이 메서드가 호출되면 미디어 세션이 프레젠테이션 시계를 시작하고 미디어 샘플을 처리하기 시작합니다.

이 메서드는 비동기적이며, 메서드가 완료되면 미디어 세션에서 MESessionStarted 이벤트를 보냅니다.

요구 사항

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

추가 정보

IMFMediaSession