Bagikan melalui


Menggunakan Kompresi untuk Mengoptimalkan Performa Pencampuran

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

Penting

Pengoptimalan yang dijelaskan di bagian ini sangat bergantung pada perangkat keras yang mendasar. Kecuali Anda dapat menjamin jenis perangkat keras grafis apa yang akan digunakan dengan aplikasi, itu mungkin secara serius menurunkan tampilan gambar video.

 

HDTV membutuhkan banyak daya pemrosesan, yang pada sistem yang lebih baru disediakan sebagian besar oleh kartu grafis. Tetapi bahkan jika kartu grafis dan dekoder dapat mendukung resolusi 1920x1080, pengguna mungkin tidak selalu mengatur monitor mereka ke resolusi ini. Dalam hal ini, chip grafis diperlukan untuk membuat gambar 1920 x 1080, dan kemudian mengurangi resolusi sebelum mengirimkannya ke buffer bingkai.

Karena ini membuang-buang daya pemrosesan, VMR menyediakan cara untuk mendesimatisasi (mengurangi) gambar pada saat dirender ke permukaan DirectDraw. Ini menghilangkan salinan memori tambahan yang diperlukan jika gambar harus diubah ukurannya setelah dirender.

VMR-7: Untuk mengaktifkan pengurangan, panggil IVMRMixerControl::SetMixingPrefs dengan bendera MixerPref_DecimateOutput.

VMR-9: Untuk mengaktifkan pengurangan, panggil IVMRMixerControl9::SetMixingPrefs dengan bendera MixerPref9_DecimateOutput.

Metode SetMixingPrefs harus dipanggil sebelum VMR tersambung. Bendera preferensi pencampuran tidak dapat diubah setelah grafik berjalan.

Menggunakan Mode Pencampuran VMR