METODE IMFASFSplitter::GetSelectedStreams (wmcontainer.h)
Mendapatkan daftar aliran yang saat ini dipilih.
Sintaks
HRESULT GetSelectedStreams(
[out] WORD *pwStreamNumbers,
[in, out] WORD *pwNumStreams
);
Parameter
[out] pwStreamNumbers
Alamat array WORD. Array ini menerima nomor aliran dari aliran yang dipilih. Parameter ini bisa NULL.
[in, out] pwNumStreams
Pada input, arahkan ke variabel yang berisi jumlah elemen dalam array pwStreamNumbers . Atur variabel ke nol jika pwStreamNumbers adalah NULL.
Pada output, menerima jumlah elemen yang disalin ke dalam pwStreamNumbers. Setiap elemen adalah pengidentifikasi aliran yang dipilih.
Mengembalikan nilai
Metode mengembalikan HRESULT. Nilai yang mungkin termasuk, tetapi tidak terbatas pada, yang ada dalam tabel berikut.
Menampilkan kode | Deskripsi |
---|---|
|
Metode berhasil. |
|
Argumen tidak valid. |
|
Array pwStreamNumbers lebih kecil dari jumlah aliran yang dipilih. Lihat Keterangan. |
Keterangan
Untuk mendapatkan jumlah aliran yang dipilih, atur pwStreamNumbers ke NULL. Metode ini akan mengembalikan MF_E_BUFFERTOSMALL tetapi juga akan mengatur nilai *pwNumStreams
yang sama dengan jumlah aliran yang dipilih. Kemudian alokasikan array dari ukuran itu dan panggil metode lagi, melewati array dalam parameter pwStreamNumbers .
Kode berikut menunjukkan langkah-langkah ini:
HRESULT DisplaySelectedStreams(IMFASFSplitter *pSplitter)
{
WORD count = 0;
HRESULT hr = pSplitter->GetSelectedStreams(NULL, &count);
if (hr == MF_E_BUFFERTOOSMALL)
{
WORD *pStreamIds = new (std::nothrow) WORD[count];
if (pStreamIds)
{
hr = pSplitter->GetSelectedStreams(pStreamIds, &count);
if (SUCCEEDED(hr))
{
for (WORD i = 0; i < count; i++)
{
printf("Selected stream ID: %d\n", pStreamIds[i]);
}
}
delete [] pStreamIds;
}
else
{
hr = E_OUTOFMEMORY;
}
}
return hr;
}
Atau, Anda dapat mengalokasikan array yang sama dengan jumlah total aliran dan meneruskan ke pwStreamNumbers.
Sebelum memanggil metode ini, inisialisasi *pwNumStreams
ke jumlah elemen dalam pwStreamNumbers. Jika pwStreamNumbersadalah NULL, atur *pwNumStreams
ke nol.
Secara default, tidak ada aliran yang dipilih oleh pemisah. Pilih aliran dengan memanggil metode IMFASFSplitter::SelectStreams .
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 | wmcontainer.h |
Pustaka | Mfuuid.lib |
Lihat juga
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk