ReceiveConnection
[Fitur yang terkait dengan halaman ini, DirectShow, adalah fitur warisan. Ini telah digantikan oleh MediaPlayer, IMFMediaEngine, dan Pengambilan 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 Pengambilan Audio/Video 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.]
Mekanisme ini memungkinkan pin output untuk mengusulkan perubahan format ke peer hilirnya, ketika format baru memerlukan buffer yang lebih besar. Pin output melakukan hal berikut:
- Panggilan IPin::ReceiveConnection pada pin input hilir.
- Jika
ReceiveConnection
berhasil, panggilan IMemInputPin::NotifyAllocator pada pin input.
Selain itu, pin output mungkin perlu memanggil IMemAllocator::SetProperties lalu menonaktifkan dan memasukkan ulang alokator untuk mengubah ukuran buffer. Pastikan untuk mengirimkan semua sampel yang tertunda dalam format lama sebelum mengubah ukuran buffer.
Beberapa dekode MPEG-2 menggunakan mekanisme ini untuk beralih antara output MPEG-1 dan MPEG-2 atau jika ukuran video berubah.