Bagikan melalui


Menerapkan Encoder WIC-Enabled

Perkenalan

Menerapkan encoder Windows Imaging Component (WIC) memerlukan penulisan dua kelas, seperti yang juga berlaku untuk menerapkan dekoder WIC. Antarmuka pada kelas ini sesuai langsung dengan tanggung jawab encoder yang diuraikan di bagian Pengkodean dari Bagaimana Cara Kerja Komponen Pencitraan Windows.

Salah satu kelas menyediakan layanan tingkat kontainer dan mengelola serialisasi bingkai gambar individual dalam kontainer. Kelas ini mengimplementasikan antarmukaIWICBitmapEncoder. Jika format gambar Anda mendukung metadata tingkat kontainer, Anda juga harus mengimplementasikan antarmukaIWICMetadataBlockWriter pada kelas ini.

Kelas lainnya menyediakan layanan tingkat bingkai dan melakukan pengodean aktual bit gambar untuk setiap bingkai dalam kontainer. Ini juga melakukan iterasi pada blok metadata untuk setiap frame dan meminta penulis metadata yang sesuai untuk men-serialize blok tersebut. Kelas ini mengimplementasikan antarmuka IWICBitmapFrameEncode dan antarmuka IWICMetadataBlockWriter. Kelas ini harus memiliki anggota IStream yang diinisialisasi oleh kelas tingkat kontainer saat pembuatan instans, ke mana metode Commit akan men-serialisasi data frame.

Dalam beberapa kasus, seperti format mentah, penulis codec mungkin tidak ingin aplikasi dapat mengodekan atau mengodekan ulang ke format mentah, karena tujuan file mentah adalah untuk berisi data sensor persis seperti yang berasal dari kamera. Dalam kasus di mana penulis codec tidak ingin mengaktifkan pengodean, masih perlu untuk menerapkan encoder dasar hanya untuk mengaktifkan penambahan metadata. Dalam hal ini, encoder hanya perlu mendukung metode yang diperlukan untuk menulis metadata, dan dapat menyalin bit gambar yang tidak tersentuh dari dekoder.

Referensi

IWICBitmapEncoder

Konseptual

Menerapkan IWICDevelopRaw

Antarmuka Encoder

Cara Menulis WIC-Enabled CODEC

Gambaran Umum Komponen Pencitraan Windows