Untuk Mengonfigurasi Quality-Based VBR

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

Anda dapat menggunakan pengodean laju bit variabel berbasis kualitas (VBR) pada aliran untuk menentukan tingkat kualitas yang akan dipertahankan untuk seluruh aliran, terlepas dari persyaratan laju bit yang dihasilkan.

Untuk streaming video VBR berbasis kualitas, Anda harus menentukan tingkat kualitas dari 1 hingga 100, dengan 100 mewakili kualitas tertinggi. Saat ini hanya ada 30 pengaturan kualitas diskrit. Tingkat kualitas berikut sama dengan pengaturan kualitas diskrit: 1, 4, 8, 11, 15, 18, 22, 25, 29, 33, 36, 40, 43, 47, 50, 54, 58, 61, 65, 68, 72, 75, 79, 83, 86, 90, 93, 97, 100. Angka antara dua nilai berturut-turut dalam daftar sebelumnya sama dengan pengaturan kualitas yang sama dengan angka yang lebih rendah. Misalnya, 1 dan 4 tercantum, jadi 2 dan 3 keduanya menghasilkan pengaturan kualitas yang sama dengan 1.

Untuk aliran audio, Anda dapat menghitung mode yang tersedia dan mengambil objek konfigurasi streaming. Untuk informasi selengkapnya, lihat Menghitung Format Codec.

Saat menggunakan video VBR berbasis kualitas, Anda harus mengatur anggota dwBitrate dari struktur WMVIDEOINFOHEADER ke nilai positif. Nilai ini tidak digunakan oleh penulis, tetapi melewati nol atau angka negatif dapat menyebabkan kesalahan saat menulis.

Untuk mengonfigurasi aliran di profil yang akan dikodekan dengan VBR berbasis kualitas, lakukan langkah-langkah berikut.

  1. Buat objek manajer profil dengan memanggil fungsi WMCreateProfileManager .
  2. Buka profil yang sudah ada yang ingin Anda tambahkan dukungan VBR. Untuk informasi selengkapnya tentang membuka profil, lihat Bekerja dengan Profil.
  3. Dapatkan objek konfigurasi aliran untuk aliran yang ingin Anda gunakan dengan memanggil IWMProfile::GetStream atau IWMProfile::GetStreamByNumber.
  4. Dapatkan penunjuk ke antarmuka IWMPropertyVault dari objek konfigurasi aliran dengan memanggil IWMStreamConfig::QueryInterface.
  5. Aktifkan VBR untuk aliran dengan memanggil IWMPropertyVault::SetProperty untuk properti g_wszVBREnabled .
  6. Atur tingkat kualitas untuk aliran VBR dengan memanggil IWMPropertyVault::SetProperty untuk properti g_wszVBRQuality .
  7. Atur g_wszVBRBitrateMax dan g_wszVBRBufferWindowMax keduanya ke nol dengan IWMPropertyVault::SetProperty.
  8. Simpan perubahan yang dilakukan pada aliran dengan memanggil IWMProfile::ReconfigStream.
  9. Simpan profil, atau teruskan ke objek penulis dan mulai menulis.

Mengonfigurasi Aliran VBR