Antarmuka ICodecAPI (strmif.h)
[Penggunaan fitur CodecAPI dengan DirectShow tidak lagi direkomendasikan. Penggunaan DirectShow telah digantikan oleh MediaPlayer, IMFMediaEngine, dan Pengambilan Audio/Video di Media Foundation. Fitur-fitur tersebut telah dioptimalkan untuk Windows 11 dan Windows 10. Alih-alih DirectShow, Microsoft sangat merekomendasikan jika memungkinkan kode baru menggunakan MediaPlayer, IMFMediaEngine, dan Pengambilan Audio/Video di Media Foundation. Microsoft menyarankan agar kode yang ada yang menggunakan API warisan ditulis ulang untuk menggunakan API baru jika memungkinkan.]
Antarmuka ICodecAPI dan mengambil pengaturan pada filter encoder atau decoder.
Nota
API yang dinyatakan dalam strmif.h tidak didukung untuk aplikasi Universal Windows Platform (UWP). Untuk menggunakan ICodecAPI dalam aplikasi UWP, gunakan versi yang dideklarasikan dalam icodecapi.h.
Warisan
Antarmuka ICodecAPI mewarisi dari antarmuka IUnknown. ICodecAPI juga memiliki jenis anggota ini:
Metode
Antarmuka ICodecAPI memiliki metode ini.
ICodecAPI::GetAllSettings Metode GetAllSettings mendapatkan properti codec saat ini dan menulisnya ke aliran. (ICodecAPI.GetAllSettings) |
ICodecAPI::GetDefaultValue Metode GetDefaultValue mendapatkan nilai default properti codec. (ICodecAPI.GetDefaultValue) |
ICodecAPI::GetParameterRange Metode GetParameterRange mendapatkan rentang nilai untuk properti codec. (ICodecAPI.GetParameterRange) |
ICodecAPI::GetParameterValues Metode GetParameterValues mendapatkan daftar nilai yang mungkin untuk properti codec. (ICodecAPI.GetParameterValues) |
ICodecAPI::GetValue Metode GetValue mendapatkan nilai properti codec saat ini. |
ICodecAPI::IsModifiable Metode IsModifiable meminta apakah properti codec dapat diubah, mengingat konfigurasi codec saat ini. (ICodecAPI.IsModifiable) |
ICodecAPI::IsSupported Metode IsSupported mengkueri apakah codec mendukung properti tertentu. (ICodecAPI.IsSupported) |
ICodecAPI::RegisterForEvent Metode RegisterForEvent mendaftarkan aplikasi untuk menerima peristiwa dari codec. (ICodecAPI.RegisterForEvent) |
ICodecAPI::SetAllDefaults Metode SetAllDefaults mengatur ulang semua properti codec ke nilai defaultnya. (ICodecAPI.SetAllDefaults) |
ICodecAPI::SetAllDefaultsWithNotify Metode SetAllDefaultsWithNotify mengatur ulang semua properti codec ke nilai defaultnya, dan mengembalikan daftar properti yang berubah. (ICodecAPI.SetAllDefaultsWithNotify) |
ICodecAPI::SetAllSettings Metode SetAllSettings membaca properti codec dari aliran dan mengaturnya pada codec. (ICodecAPI.SetAllSettings) |
ICodecAPI::SetAllSettingsWithNotify Metode SetAllSettingsWithNotify membaca properti codec dari aliran, mengaturnya pada codec, dan mengembalikan daftar properti yang berubah. (ICodecAPI.SetAllSettingsWithNotify) |
ICodecAPI::SetValue Metode SetValue menetapkan nilai properti codec. (ICodecAPI.SetValue) |
ICodecAPI::SetValueWithNotify Metode SetValueWithNotify mengatur properti pada codec dan mengembalikan daftar properti lain yang berubah sebagai hasilnya. (ICodecAPI.SetValueWithNotify) |
ICodecAPI::UnregisterForEvent Metode UnregisterForEvent membatalkan pendaftaran aplikasi untuk peristiwa encoder tertentu. (ICodecAPI.UnregisterForEvent) |
Komentar
Antarmuka ini mendefinisikan mekanisme generik untuk mengatur properti pada codec (encoder atau decoder). Properti codec adalah pasangan kunci/nilai, di mana kuncinya adalah GUID dan nilainya adalah VARIAN . Interpretasi data VARIAN bergantung pada GUID properti. Untuk daftar GUID properti codec, lihat properti API Codec .
Profil Codec
Codec dapat menyimpan informasi profil dan kemampuan secara opsional di registri sistem. Informasi ini memungkinkan aplikasi untuk mengkueri perangkat selama enumerasi perangkat. Profil default disimpan dalam kunci registri berikut:HKEY_LOCAL_MACHINE Software Classes CLSID Category ProfilesSetiap profil adalah kunci registri yang string defaultnya adalah deskripsi teks profil. Setiap nilai memiliki nama GUID, diikuti dengan nilai string yang berisi nilai GUID numerik. Misalnya:
C++ |
---|
HLKM\Software\Classes\CLSID\<category>\Profiles\DVD default "HQ DVD" REG_SZ {...} = "0" REG_SZ {...} = "1234" |
Kemampuan codec default disimpan di bawah HLKM\Software\Classes\CLSID< kategori>\Instance< Filter CLSID>\Capabilities. Setiap nilai memiliki nama GUID, diikuti dengan nilai string yang berisi nilai GUID numerik. Misalnya:
C++ |
---|
HLKM\Software\Classes\CLSID\<category>\Instance\<My DVD encoder>\Capabilities default "My DVD encoder" REG_SZ_MULTI {...} |
Persyaratan
Syarat | Nilai |
---|---|
klien minimum yang didukung | Windows XP dengan SP2 [aplikasi desktop | Aplikasi UWP] |
server minimum yang didukung | Windows Server 2003 R2 [aplikasi desktop | Aplikasi UWP] |
Platform Target | Windows |
Header | strmif.h (termasuk Dshow.h) |