(Windows 图像处理组件) 编码

编码器作者必须执行以下操作:

  • 实现 IWICBitmapEncoderIWICBitmapFrameEncode 接口。
  • 在帧编码器上实现 IWICMetadataBlockWriter 。 如果编解码器支持容器级元数据,则必须在容器级编码器和帧编码器上实现此接口。
  • 如果容器格式隐式包含任何必需的元数据块,请实例化每个此类块的元数据编写器。 例如,TIFF 格式要求接口设备 (每个帧的 IFD) ,因此必须始终公开 IFD 编写器。
  • 实现对管理元数据编写器集合的支持。 块编写器管理对可编码的元数据块类型的任何顺序要求或容器限制。 块编写器必须验证是否可以在容器格式中嵌入任何新的元数据编写器。
  • 对图像流进行编码时,请调用 WICSerializeMetadataContent ,将每个元数据编写器的内容序列化到流中。 如果元数据块包含“关键”元数据,则编码器必须在要求元数据编写器序列化内容之前设置关键元数据项。
  • 检查是否存在任何未知的元数据处理程序,以确保不存在冗余元数据块。 这一点很重要,因为在解码或编码方案中保留元数据时,未知块可能是强制元数据块的重复项。

概念性

Windows 映像组件概述

相机原始图像格式的 WIC 指南

如何编写WIC-Enabled编解码器