Metode IVMRFilterConfig::SetNumberOfStreams (strmif.h)

[Fitur yang terkait dengan halaman ini, DirectShow, adalah fitur warisan. Ini telah digantikan oleh MediaPlayer, IMFMediaEngine, dan Tangkapan 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 Audio/Video Capture 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 ini SetNumberOfStreams mengatur jumlah aliran yang akan dicampur dan menginstruksikan VMR untuk masuk ke mode mixer.

Sintaks

HRESULT SetNumberOfStreams(
  [in] DWORD dwMaxStreams
);

Parameter

[in] dwMaxStreams

Kata ganda yang berisi jumlah maksimum aliran input yang akan diperlukan VMR untuk dicampur. Tidak boleh lebih besar dari MAX_MIXER_STREAMS (16).

Mengembalikan nilai

Jika metode berhasil, metode akan mengembalikan S_OK. Jika gagal, kode kesalahan akan ditampilkan.

Menampilkan kode Deskripsi
E_FAIL
Mixer sudah dikonfigurasi.
E_INVALIDARG
Upaya dilakukan untuk mengonfigurasi mixer untuk lebih dari 16 aliran input.
E_OUTOFMEMORY
Memori untuk mengelola aliran tidak dapat dialokasikan.

Keterangan

dwMaxStreams harus sama dengan jumlah pin input yang diperlukan. Pin tidak dapat ditambahkan atau dihapus setelah VMR tersambung. Jika Anda tidak tahu terlebih dahulu berapa banyak aliran input yang akan diperlukan, atur dxMaxStreams ke jumlah maksimum yang mungkin diperlukan. Nilai 1 valid untuk dwMaxStreams. Nilai ini tidak menyebabkan pin tambahan dibuat, tetapi memaksa VMR masuk ke "mode mixer." Oleh karena itu, setelah metode ini dipanggil, Anda tidak dapat memanggil SetRenderingMode untuk mengatur mode ke VMRMode_Renderless

VMR membuat pin input sebanyak yang ditentukan tanpa mencoba menentukan apakah ada cukup memori video untuk mendukung semuanya. Ini karena tidak memiliki cara untuk mengetahui jenis media atau dimensi persegi panjang saat ini. Kemudian, ketika filter upstram mencoba menyambungkan ke pin, pada saat itu jenis media diketahui dan VMR akan memeriksa memori video dan gagal koneksi jika tidak ada cukup untuk memproses aliran.

Catatan Meskipun VMR mendukung beberapa aliran, semuanya berbagi satu jam, dan oleh karena itu Anda tidak dapat mencari satu aliran secara independen dari yang lain. Jika Anda perlu mencari aliran input secara independen, Anda harus menggunakan teknik yang berbeda. Lihat sampel VMRMulti untuk informasi selengkapnya.
 

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows XP dengan SP1 [hanya aplikasi desktop]
Server minimum yang didukung Windows Server 2003 [hanya aplikasi desktop]
Target Platform Windows
Header strmif.h (termasuk Dshow.h)
Pustaka Strmiids.lib

Lihat juga

Kode Kesalahan dan Keberhasilan

Antarmuka IVMRFilterConfig

IVMRFilterConfig::GetNumberOfStreams

Menggunakan Video Mixing Renderer