Bagikan melalui


Kelas CSourceStream

[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.]

hierarki kelas csourcestream

Kelas CSourceStream menyediakan pin output untuk kelas filter CSource .

Untuk informasi tentang menggunakan kelas ini, lihat CSource. Kelas ini mewarisi kelas CAMThread , yang menyediakan utas pekerja untuk streaming data dari pin. Kelas CSourceStream mengimplementasikan metode pembantu berikut untuk mengirim permintaan ke utas:

Permintaan pertama ke utas harus Init. Permintaan Keluar mengakhiri utas. Dalam praktiknya, tidak perlu memanggil salah satu metode ini secara langsung, karena metode CSourceStream::Active dan CSourceStream::Inactive pin memanggilnya sesuai kebutuhan.

Kelas ini juga menyediakan beberapa metode "handler":

Ini tidak melakukan apa pun di kelas dasar, tetapi kelas turunan dapat menimpanya.

Variabel Anggota yang Dilindungi Deskripsi
m_pFilter Penunjuk ke filter yang berisi pin ini.
Metode yang Dilindungi Deskripsi
OnThreadCreate Dipanggil saat utas streaming diinisialisasi. Virtual.
OnThreadDestroy Dipanggil ketika utas streaming akan keluar. Virtual.
OnThreadStartPlay Dipanggil pada awal metode CSourceStream::D oBufferProcessingLoop . Virtual.
Aktif Memberi tahu pin bahwa filter sekarang aktif.
Tidak aktif Memberi tahu pin bahwa filter tidak lagi aktif.
GetRequest Menunggu permintaan utas berikutnya.
CheckRequest Memeriksa apakah ada permintaan utas, tanpa memblokir.
ThreadProc Prosedur utas. Virtual.
DoBufferProcessingLoop Menghasilkan data media dan mengirimkannya ke pin input hilir. Virtual.
CheckMediaType Menentukan apakah pin menerima jenis media tertentu. Virtual.
GetMediaType Mengambil jenis media pilihan. Virtual.
Metode Publik Deskripsi
CSourceStream Metode konstruktor.
~ CSourceStream Metode destruktor. Virtual.
Init Menginisialisasi utas streaming.
Keluar Memberi sinyal alur streaming untuk keluar.
jalankan Memberi sinyal alur streaming untuk dijalankan.
Pause Menandakan utas streaming menjadi aktif.
Hentikan Memberi sinyal alur streaming untuk berhenti.
Metode Virtual Murni Deskripsi
FillBuffer Mengisi sampel media dengan data.
Metode IPin Deskripsi
QueryId Mengambil pengidentifikasi untuk pin.

Persyaratan

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

Lihat juga

Menulis Filter Sumber