Share via


MFCreateSequencerSegmentOffset 함수(mfidl.h)

시퀀서 원본 프레젠테이션 내에서 검색하는 데 사용할 수 있는 PROPVARIANT 를 만듭니다.

구문

HRESULT MFCreateSequencerSegmentOffset(
  [in]  MFSequencerElementId dwId,
  [in]  MFTIME               hnsOffset,
  [out] PROPVARIANT          *pvarSegmentOffset
);

매개 변수

[in] dwId

Sequencer 요소 식별자입니다. 이 값은 재생을 시작할 세그먼트를 지정합니다. 요소 식별자는 IMFSequencerSource::AppendTopology 메서드에 반환됩니다.

[in] hnsOffset

세그먼트 내의 시작 위치(100나노초 단위)입니다.

[out] pvarSegmentOffset

PROPVARIANT에 대한 포인터입니다. 메서드는 PROPVARIANT 를 검색 작업을 수행하는 데 필요한 정보로 채웁니다. 호출자는 PropVariantClear를 호출하여 PROPVARIANT를 해제해야 합니다.

반환 값

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

설명

pvarSegmentOffset에 반환된 PROPVARIANTIMFMediaSession::Start 메서드의 pvarStartPosition 매개 변수에 사용할 수 있습니다. GUID MF_TIME_FORMAT_SEGMENT_OFFSET 시간 형식을 사용합니다.

예제

// Skips to the specified segment in the sequencer source

HRESULT CPlaylist::SkipTo(DWORD index)
{
    if (index >= m_count)
    {
        return E_INVALIDARG;
    }

    MFSequencerElementId ID = m_segments[index].SegmentID;

    PROPVARIANT var;

    HRESULT hr = MFCreateSequencerSegmentOffset(ID, NULL, &var);
    
    if (SUCCEEDED(hr))
    {
        hr = m_pSession->Start(&MF_TIME_FORMAT_SEGMENT_OFFSET, &var);
        PropVariantClear(&var);
    }
    return hr;
}

요구 사항

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

추가 정보

MFTIME

미디어 파운데이션 함수

Sequencer 원본

Sequencer 원본 사용