Bagikan melalui


Fungsi MFCreateSequencerSegmentOffset (mfidl.h)

Membuat PROPVARIANT yang dapat digunakan untuk mencari dalam presentasi sumber pengurut.

Sintaks

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

Parameter

[in] dwId

Pengidentifikasi elemen sequencer. Nilai ini menentukan segmen untuk memulai pemutaran. Pengidentifikasi elemen dikembalikan dalam metode IMFSequencerSource::AppendTopology .

[in] hnsOffset

Posisi awal dalam segmen, dalam unit 100 nanodetik.

[out] pvarSegmentOffset

Penunjuk ke PROPVARIANT. Metode ini mengisi PROPVARIANT dengan informasi yang diperlukan untuk melakukan operasi pencarian. Pemanggil harus membebaskan PROPVARIANT dengan memanggil PropVariantClear.

Nilai kembali

Jika fungsi ini berhasil, fungsi akan mengembalikan S_OK. Jika tidak, kode kesalahan HRESULT akan dikembalikan.

Keterangan

PROPVARIANT yang dikembalikan dalam pvarSegmentOffset dapat digunakan untuk parameter pvarStartPosition dalam metode IMFMediaSession::Start. Gunakan MF_TIME_FORMAT_SEGMENT_OFFSET GUID format waktu.

Contoh

// 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;
}

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows Vista [hanya aplikasi desktop]
Server minimum yang didukung Windows Server 2008 [hanya aplikasi desktop]
Target Platform Windows
Header mfidl.h
Pustaka Mf.lib
DLL Mf.dll

Lihat juga

MFTIME

Fungsi Media Foundation

Sumber Pengurut

Menggunakan Sumber Pengurut