一般登錄專案

解碼器和編碼器都必須另外建立下列登錄專案:

HKEY_CLASSES_ROOT
   CLSID
      {Your Encoder/Decoder CLSID}
         Author = Author's Name
         Description = Your Codec Description
         DeviceManufacturer = Manufacturer's Name
         DeviceModels = Device,Device
         FriendlyName = Codec Friendly Name
         Date = mm-dd-yyyy
         Vendor = {GUID_Vendor}
         ContainerFormat = {GUID_ContainerFormat}
         Version = Major.Minor.Build.Number
         SpecVersion = Major.Minor.Build.Number
         MimeTypes = Your Mime Type
         SupportAnimation = 0|1
         SupportChromakey = 0|1
         SupportLossless = 0|1
         SupportMultiframe = 0|1
         Formats
            {Supported PixelFormat GUID 1}
            {Supported PixelFormat GUID ...}
            {Supported PixelFormat GUID N}
         ArbitrationPriority  = 0-10

需要 FriendlyName、VendorGUID、ContainerFormat、MimeTypes、FileExtensions 和 Formats 專案。 所有其他專案都是選擇性的。

請注意,DeviceManufacturer 和 DeviceModels 專案專屬於原始編解碼器,並參考編解碼器適用的相機製造商和相機型號。 規格版本是編解碼器符合的映射格式規格版本。 [格式] 專案會指定編解碼器支援的像素格式。 編解碼器可能支援多個像素格式。 在此情況下,您會在 HKEY_CLASSES_ROOT\CLSID\{Encoder/Decoder CLSID}\Formats 底下輸入多個索引鍵。

ArbitrationPriority

從 Windows 8 開始,ArbitrationPriority 是新的登錄專案。 有效值為 0 到 10。 當 ArbitrationPriority 索引鍵存在時,此機碼的值會指示 WIC 優先處理任何其他編解碼器後面具有較低的 ArbitrationPriority 值。 這項評估會在現有 WIC 編解碼器仲裁發生之前發生,並確保相關聯的編解碼器優先于任何競爭編解碼器,即使其功能相同或更高。 登錄中未定義明確 ArbitrationPriority 值的任何編解碼器都會預設為 Priority 0。

概念

CODEC 安裝和註冊

編碼器特定的登錄專案

如何撰寫WIC-Enabled CODEC

Windows 映像處理元件概觀

Windows 映像處理元件的運作方式:編解碼器探索和仲裁