Kelas CBaseVideoRenderer
[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.]
Kelas CBaseVideoRenderer
dasar digunakan untuk membangun filter perender video.
Anggota Data terproteksi | Deskripsi |
---|---|
m_bDrawLateFrames | Bendera untuk memberi sinyal bahwa tidak ada bingkai yang akan dihilangkan. Debug saja. Ini menghancurkan sinkronisasi. |
m_bSupplierHandlingQuality | TRUE menunjukkan pesan kontrol kualitas sedang ditangani. Ini memungkinkan perender tahu untuk menunggu sampai selambat mungkin untuk menjatuhkan bingkai itu sendiri, dan untuk menampilkan bingkai berikutnya sangat awal setelah pemasok menjatuhkan bingkai. |
m_cFramesDrawn | Jumlah total bingkai yang telah digambar sejak streaming dimulai. |
m_cFramesDropped | Bingkai kumulatif yang telah dihilangkan di perender sejak streaming dimulai. Bingkai juga dapat dihilangkan di hulu tanpa perender mengenalinya. |
m_idDecision | MSR_id untuk kode keputusan ShouldDrawSampleNow. |
m_idDuration | MSR_id selama durasi bingkai. |
m_idFrameAccuracy | Pengidentifikasi log performa untuk waktu dalam milidetik bahwa bingkai terlambat. |
m_idFrameAvg | Pengidentifikasi log performa untuk jangka waktu rata-rata yang digunakan untuk sinkronisasi dan kontrol kualitas. |
m_idQualityRate | MSR_id untuk tingkat kualitas yang diminta. |
m_idQualityTime | MSR_id untuk waktu kualitas yang diminta. |
m_idRenderAvg | Pengidentifikasi log performa untuk waktu perender rata-rata yang direkam. |
m_idSchLateTime | MSR_id seberapa terlambat bingkai ketika dijadwalkan. |
m_idSendQuality | MSR_id untuk mengatur waktu pemberitahuan (tidak digunakan). |
m_idTimeStamp | MSR_id untuk stempel waktu kerangka kerja. |
m_idWait | Pengidentifikasi log performa untuk waktu tunggu yang direkam (tidak digunakan). |
m_idWaitReal | Pengidentifikasi log performa untuk waktu tunggu yang sebenarnya. |
m_iSumFrameTime | Jumlah waktu interframe; diperlukan untuk halaman properti. |
m_iSumSqAcc | Jumlah kuadrat akurasi (dalam milidetik) yang diperlukan untuk halaman properti. |
m_iSumSqFrameTime | Jumlah kuadrat waktu interframe; diperlukan untuk halaman properti. |
m_iTotAcc | Jumlah akurasi (dalam milidetik) yang diperlukan untuk halaman properti. |
m_nNormal | Jumlah bingkai berturut-turut yang digambar pada waktu yang dijadwalkan. Angka negatif menunjukkan bahwa bingkai baru saja dihilangkan oleh perender. |
m_trDuration | Durasi bingkai terakhir (perbedaan antara waktu mulai dan berakhir). |
m_trEarliness | Seberapa awal bingkai diizinkan untuk dimainkan ketika bingkai baru saja dihilangkan. |
m_trFrame | Waktu yang terakhir direkam antar bingkai. Digunakan dalam pengukuran statistik. |
m_trFrameAvg | Waktu interframe rata-rata dalam unit waktu referensi. |
m_trLastDraw | Waktu bingkai sebelumnya. Digunakan untuk referensi waktu interframe. |
m_trLate | Jumlah waktu bingkai saat ini terlambat. Digunakan dalam pengukuran statistik. |
m_trRenderAvg | Waktu yang diperlukan bingkai untuk melakukan transfer blok bit. |
m_trRenderLast | Waktu untuk transfer blok bit bingkai terakhir. |
m_trRenderStart | Waktu transfer blok bit dimulai. Digunakan untuk mendapatkan m_trRenderLast. |
m_trThrottle | Periode untuk disisipkan setelah merender setiap bingkai, biasanya digunakan ketika kualitas audio telah ditingkatkan dan performa video harus dikurangi untuk memungkinkan hal ini. |
m_trWaitAvg | Waktu tunggu rata-rata dalam unit waktu referensi. |
m_tStreamingStart | Digunakan untuk statistik halaman properti. Mewakili waktu mulai proses streaming saat ini atau proses streaming sebelumnya jika saat ini tidak streaming. |
Fungsi Anggota | Deskripsi |
CBaseVideoRenderer | Membuat objek CBaseVideoRenderer . |
GetStdDev | Memperkirakan simpangan baku dalam milidetik antara ketika setiap bingkai jatuh tempo dan kapan benar-benar dirender, untuk statistik per bingkai. |
PreparePerformanceData | Mengatur nilai m_trLate dan m_trFrame bingkai saat ini. |
PembatasanWait | Menyisipkan periode tunggu setelah setiap bingkai. |
Fungsi Anggota yang Dapat Diganti | Deskripsi |
JoinFilterGraph | Mengirim peristiwa EC_WINDOW_DESTROYED saat filter dihapus dari grafik filter. |
OnDirectRender | Mengumpulkan informasi waktu yang mengontrol sinkronisasi dan kontrol kualitas. |
OnRenderEnd | Merekam informasi untuk kontrol kualitas dan sinkronisasi. |
Mulai OnRender | Merekam informasi untuk kontrol kualitas dan sinkronisasi. |
OnStartStreaming | Mengatur ulang sepanjang waktu yang mengontrol streaming. |
OnStopStreaming | Dipanggil di akhir streaming untuk memperbaiki waktu untuk laporan halaman properti. |
OnWaitEnd | Dipanggil ketika waktu tunggu berakhir. Hanya pengelogan performa. |
OnWaitStart | Updates waktu yang dihabiskan untuk menunggu dan tidak menunggu. Hanya pengelogan performa. |
RecordFrameLateness | Merekam seberapa tepat waktu penyajian terjadi dan mengumpulkan statistik untuk halaman properti. |
ResetStreamingTimes | Mengatur ulang setiap saat yang mengontrol streaming. |
ScheduleSample | Menyiapkan tautan saran dengan jam. |
SendQuality | Mengirim pesan berkualitas untuk menunjukkan apa yang harus dilakukan pemasok tentang kualitas. |
ShouldDrawSampleNow | Menentukan apakah video harus digambar saat jatuh tempo, tanpa mengatur tautan saran timer dengan jam. |
Metode IQualProp | Deskripsi |
Get_Avg FrameRate | Mengambil kecepatan bingkai rata-rata sejak streaming dimulai dalam bingkai per 100 detik. |
get_AvgSyncOffset | Mengambil rata-rata waktu dalam milidetik antara ketika setiap bingkai jatuh tempo dan kapan benar-benar dirender. Ini berlaku untuk semua bingkai sejak streaming dimulai. |
get_DevSyncOffset | Mengambil simpangan baku waktu dalam milidetik antara ketika setiap bingkai jatuh tempo dan kapan benar-benar dirender untuk semua bingkai sejak streaming dimulai. |
get_FramesDrawn | Mengambil jumlah bingkai yang digambar sejak streaming dimulai. |
get_FramesDroppedInRenderer | Mengambil jumlah bingkai yang dijatuhkan oleh perender. Bingkai juga dapat dihilangkan di hulu. |
get_Jitter | Mengambil simpantan standar waktu dalam milidetik antara setiap bingkai dan bingkai berikutnya. Ini berlaku untuk semua bingkai sejak streaming dimulai. |
Metode IQualityControl | Deskripsi |
Beri tahu | Memberi tahu penerima bahwa perubahan kualitas diminta. |
SetSink | Mengatur objek IQualityControl yang akan menerima pesan berkualitas. |