Bagikan melalui


Metode CSourceStream.GetMediaType (Source.h) - parameter iPosition dan pMediaType

[Fitur yang terkait dengan halaman ini, DirectShow, adalah fitur warisan. Ini telah digantikan oleh MediaPlayer, IMFMediaEngine, dan Pengambilan Audio/Video di Media Foundation. Fitur-fitur tersebut telah dioptimalkan untuk Windows 10 dan Windows 11. Microsoft sangat menyarankan agar kode baru menggunakan MediaPlayer, IMFMediaEngine , dan Pengambilan Audio/Video di Media Foundation alih-alih DirectShow, jika memungkinkan. Microsoft menyarankan agar kode yang ada yang menggunakan API warisan ditulis ulang untuk menggunakan API baru jika memungkinkan.]

Metode GetMediaType mengambil jenis media pilihan.

Sintaks

virtual HRESULT GetMediaType(
   int        iPosition,
   CMediaType *pMediaType
);

Parameter

iPosisi

Nilai indeks berbasis nol.

pMediaType

Penunjuk ke objek CMediaType yang menerima jenis media.

Nilai kembali

Mengembalikan salah satu nilai HRESULT yang diperlihatkan dalam tabel berikut ini.

Menampilkan kode Deskripsi
S_OK
Berhasil.
VFW_S_NO_MORE_ITEMS
Indeks di luar rentang.
E_INVALIDARG
Indeks kurang dari nol.
E_UNEXPECTED
Kesalahan tak terduga.

Keterangan

Ada dua versi metode ini. Satu versi mengambil alih metode CBasePin::GetMediaType dan mengambil nilai indeks sebagai parameter. Versi lain dirancang untuk mengambil satu jenis media, sehingga tidak memiliki parameter indeks.

Metode parameter tunggal mengembalikan E_UNEXPECTED. Metode dua parameter memverifikasi bahwa parameter iPosition adalah nol dan kemudian memanggil versi parameter tunggal. Bergantung pada jumlah jenis media yang didukung pin, Anda harus mengambil alih salah satu metode berikut:

  • Jika pin mendukung tepat satu jenis media, ganti versi parameter tunggal. Isi jenis media yang didukung pin.
  • Jika pin mendukung lebih dari satu jenis media, ganti versi dua parameter. Ganti juga metode CSourceStream::CheckMediaType .

Persyaratan

Persyaratan Nilai
Header Source.h (termasuk Streams.h)
Pustaka Strmbase.lib (build ritel); Strmbasd.lib (build debug)

Lihat juga

Kelas CSourceStream