WIC-Enabled Kod Çözücü Uygulama
Windows Görüntüleme Bileşeni (WIC) kod çözücüsü uygulamak için iki sınıf yazılması gerekir. Bu sınıflardaki arabirimler, Windows Imaging Bileşeni Nasıl Çalışır Bölümü'nün Kod Çözme kısmında özetlenen kod çözücü sorumluluklarına doğrudan karşılık gelir.
Sınıflardan biri kapsayıcı düzeyinde hizmetler sağlar ve IWICBitmapDecoder arabirimini uygular. Görüntü biçiminiz kapsayıcı düzeyinde meta verileri destekliyorsa, bu sınıfta IWICMetadataBlockReader arabirimini de uygulamanız gerekir. Daha iyi bir kullanıcı deneyimini desteklemek için hem kod çözücüde hem de kodlayıcıda IWICBitmapCodecProgressNotification arabirimini desteklemeniz önerilir.
Uygulayacağınız diğer sınıf, çerçeve düzeyinde hizmetler sağlar ve kapsayıcıdaki her çerçeve için görüntü bitlerinin gerçek kodunu çözme işlemini yapar. Bu sınıf, IWICBitmapFrameDecode arabirimini ve IWICMetadataBlockReader arabirimini uygular. Ham biçim için kod çözücü yazıyorsanız, bu sınıfta IWICDevelopRaw arabirimini de uygularsınız. Gerekli arabirimlere ek olarak, görüntü biçiminiz için mümkün olan en iyi performansı sağlamak için bu sınıfta IWICBitmapSourceTransform arabirimini uygulamanız kesinlikle önerilir.
WIC'in sağladığı nesnelerden biri ImagingFactory. Çeşitli bileşenler oluşturmak için bu nesnedeki IWICComponentFactory arabirimini sık sık kullanırsınız. Sık kullanıldığından, hem kod çözücü hem de kodlayıcı sınıflarınızda bir üye özelliği olarak referans saklamanız gerekir.
IWICImagingFactory* m_pImagingFactory = NULL;
IWICComponentFactory* m_pComponentFactory = NULL;
HRESULT hr;
hr = CoCreateInstance(CLSID_WICImagingFactory, NULL,
CLSCTX_INPROC_SERVER, IID_IWICImagingFactory,
(LPVOID*) m_pImagingFactory);
hr = m_pImagingFactory->QueryInterface(
IID_IWICComponentFactory, (void**)&m_pComponentFactory);
İlgili konular
-
kavramsal
-
windows görüntüleme bileşeni nasıl çalışır
-
WIC-Enabled CODEC Nasıl Yazılır