Sampel Filter Asinkron

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

Deskripsi

Sampel Filter Asinkron adalah filter pembaca file yang mendukung unduhan progresif. Filter sampel ini mengimplementasikan antarmuka IAsyncReader dan IFileSourceFilter . Ini mendukung file MPEG, tetapi bukan file AVI.

Penggunaan

Sampel ini mencakup aplikasi baris perintah kecil, Memfile.exe, yang menunjukkan filter. Argumen baris perintah menentukan file media dan laju bit, dalam kilobyte per detik. Aplikasi membaca file ke dalam memori pada laju yang ditentukan dan memutar file. Untuk melakukannya, ia membuat instans filter, menambahkan filter ke grafik filter, dan merender pin output filter.

Pada baris perintah, ketik:

Laju Bit Nama File Memfile

Filter sampel Asinkron tidak mendukung file AVI, karena tidak dapat tersambung ke filter Pemisah AVI . Pin output filter Asinkron mengusulkan MEDIATYPE_Stream dan MEDIASUBTYPE_NULL untuk jenis media. Pin input pada filter Pemisah AVI tidak menerima MEDIASUBTYPE_NULL, dan tidak mengusulkan jenis apa pun sendiri. Oleh karena itu, koneksi pin gagal. Filter Asinkron dapat ditingkatkan untuk menawarkan MEDIASUBTYPE_Avi jika sesuai. Misalnya, ini dapat memeriksa format file, atau menggunakan ekstensi file.

Mengunduh Sampel

Untuk mengunduh sampel DirectShow SDK, instal versi terbaru Windows SDK.

Sampel ini diinstal di bawah jalur berikut: [SDK Root]\Samples\Multimedia\DirectShow\Filters\Async.

Sampel DirectShow