Pembaca Sumber

Pembaca Sumber adalah alternatif untuk menggunakan Sesi Media dan alur Microsoft Media Foundation untuk memproses data media.

Mengapa Menggunakan Pembaca Sumber?

Media Foundation menyediakan alur yang dioptimalkan untuk pemutaran. Alur bersifat end-to-end, yang berarti menangani aliran data dari sumber (seperti file video) hingga ke tujuan (seperti tampilan grafik). Namun, jika Anda ingin membaca atau memodifikasi data saat melalui alur, Anda harus menulis plug-in kustom. Itu membutuhkan pengetahuan yang cukup mendalam tentang alur Media Foundation. Untuk tugas tertentu, membuat plug-in baru terlalu banyak overhead. Pembaca sumber dirancang untuk jenis situasi ini, ketika Anda ingin mendapatkan data mentah dari sumber tanpa overhead seluruh alur.

Secara internal, pembaca sumber memegang pointer ke sumber media. Sumber media adalah objek Media Foundation yang menghasilkan data media dari sumber eksternal, seperti file media atau perangkat penangkapan video. Pembaca sumber mengelola semua panggilan metode ke sumber media. (Untuk informasi selengkapnya tentang sumber media, lihat Sumber Media.)

Jika sumber media mengirimkan data terkompresi, Anda dapat menggunakan pembaca sumber untuk mendekode data. Dalam hal ini, pembaca sumber akan memuat dekoder yang benar dan mengelola aliran data antara sumber media dan dekoder. Pembaca sumber juga dapat melakukan beberapa pemrosesan video terbatas: konversi warna dari YUV ke RGB-32, dan deinterlacing perangkat lunak, meskipun operasi ini tidak direkomendasikan untuk penyajian video real-time. Gambar berikut mengilustrasikan proses ini.

diagram pembaca sumber

Pembaca sumber tidak mengirim data ke tujuan; terserah aplikasi untuk mengonsumsi data. Misalnya, pembaca sumber dapat membaca file video, tetapi tidak akan merender video ke layar. Selain itu, pembaca sumber tidak mengelola jam presentasi, menangani masalah waktu, atau menyinkronkan video dengan audio.

Pertimbangkan untuk menggunakan pembaca sumber saat:

  • Anda ingin mendapatkan data dari file media tanpa khawatir tentang struktur file yang mendasar.
  • Anda ingin mendapatkan data dari perangkat pengambilan audio atau video.
  • Tugas pemrosesan data Anda tidak sensitif terhadap waktu, atau Anda tidak memerlukan jam presentasi.
  • Anda sudah memiliki alur media yang tidak didasarkan pada Media Foundation, dan Anda ingin memasukkan sumber media Media Foundation ke dalam alur Anda sendiri.

Pembaca sumber tidak disarankan dalam situasi berikut:

  • Untuk konten yang dilindungi. Pembaca sumber tidak mendukung manajemen hak digital (DRM).
  • Jika Anda peduli dengan detail struktur file yang mendasar. Pembaca sumber menyembunyikan jenis detail tersebut.

Di bagian ini

Topik Deskripsi
Menggunakan Pembaca Sumber untuk Memproses Data Media
Topik ini menjelaskan cara menggunakan Pembaca Sumber untuk memproses data media.
Menggunakan Pembaca Sumber dalam Mode Asinkron
Topik ini menjelaskan cara menggunakan Pembaca Sumber dalam mode asinkron.
Tutorial: Mendekode Audio
Tutorial ini menunjukkan cara menggunakan Pembaca Sumber untuk mendekode audio dari file media dan menulis audio ke file WAVE.

 

Arsitektur Media Foundation

Panduan Pemrograman Media Foundation

IMFSourceReader