Untuk Menghitung Format Codec

[Fitur yang terkait dengan halaman ini, Windows Media Format 11 SDK, adalah fitur warisan. Ini telah digantikan oleh Pembaca Sumber dan Penulis Sink. Pembaca Sumber dan Penulis Sink telah dioptimalkan untuk Windows 10 dan Windows 11. Microsoft sangat menyarankan agar kode baru menggunakan Pembaca Sumber dan Penulis Sink alih-alih Windows Media Format 11 SDK, jika memungkinkan. Microsoft menyarankan agar kode yang ada yang menggunakan API warisan ditulis ulang untuk menggunakan API baru jika memungkinkan.]

Format codec adalah objek konfigurasi aliran yang diisi dengan data dari codec. Setiap format codec berisi konfigurasi media yang didukung oleh codec. Sebagian besar codec audio mendukung jumlah format terbatas, yang masing-masing dijumlahkan oleh codec dan dapat diakses menggunakan metode IWMCodecInfo. Codec video, di sisi lain, hanya menyediakan satu format. Ini karena aliran video memiliki variabel, seperti ukuran bingkai, yang lebih fleksibel daripada pengaturan aliran audio. Dengan streaming video, Anda harus mengisi beberapa nilai konfigurasi aliran; konfigurasi aliran audio hanya boleh diedit untuk menetapkan nama, nama koneksi, dan nomor aliran. Untuk informasi selengkapnya, lihat Konfigurasi Umum untuk Semua Aliran.

Format codec yang dijumlahkan bergantung pada pengaturan enumerasi codec saat ini, yang diatur menggunakan IWMCodecInfo3::SetCodecEnumerationSetting. Saat ini, hanya dua properti codec yang didukung: g_wszNumPasses, yang menentukan jumlah kode yang akan dilakukan codec, dan g_wszVBREnabled, yang menentukan apakah codec akan menggunakan pengodean laju bit variabel. Jumlah maksimum pass pengodean yang didukung oleh salah satu codec adalah dua, sehingga ada empat konfigurasi berbeda yang dapat Anda ambil codecnya, seperti yang ditunjukkan dalam tabel berikut.

  Aliran laju bit konstan (CBR) Aliran CBR 2-pass Aliran laju bit variabel berbasis kualitas (VBR) Aliran VBR berbasis laju bit (dibatasi atau tidak dibatasi)
g_wszVBREnabled SALAH SALAH TRUE TRUE
g_wszNumPasses 1 2 1 2

 

Untuk menghitung format yang didukung untuk codec, gunakan IWMCodecInfo::GetCodecFormatCount untuk menemukan jumlah codec yang didukung. Kemudian panggil IWMCodecInfo::GetCodecFormat untuk setiap format. Indeks format berkisar dari nol, hingga satu kurang dari jumlah total format yang didukung. Anda dapat mengambil deskripsi format dengan memanggil IWMCodecInfo2::GetCodecFormatDesc. Saat menggunakan GetCodecFormatDesc, Anda tidak perlu menggunakan GetCodecFormat, karena objek konfigurasi stream diambil oleh kedua metode. Format codec video tidak menyertakan deskripsi. Setiap codec video hanya memiliki satu format yang digunakan untuk semua aliran jenis tersebut.

Saat Anda mengambil format codec, Anda mendapatkan antarmuka IWMStreamConfig dari objek konfigurasi aliran yang berisi pengaturan format.

Mendapatkan Informasi Konfigurasi Aliran dari Codec