voci del Registro di sistema Decoder-Specific
Oltre alle voci del Registro di sistema necessarie per tutti i codificatori e decodificatori, le voci del Registro di sistema seguenti sono necessarie in modo specifico per i decodificatori.
Queste voci registrano il decodificatore nella categoria dei decodificatori Windows Imaging Component (WIC). Il primo GUID in queste voci è l'identificatore di categoria (CATID) per WICBitmapDecoders.
HKEY_CLASSES_ROOT
CLSID
{7ED96837-96F0-4812-B211-F13C24117ED3}
Instance
{Decoder CLSID}
CLSID = {Decoder CLSID}
FriendlyName = {Name of Decoder}
Come indicato nella sezione Individuazione e arbitrato del funzionamento del componente Windows Imaging, il meccanismo che consente l'individuazione di un decodificatore appropriato per un'immagine specifica in fase di esecuzione si basa sulla corrispondenza di un modello di identificazione incorporato nel file di immagine con un modello specificato nella voce del Registro di sistema del decodificatore. Per abilitare l'individuazione in fase di esecuzione dei decodificatori, è necessario registrare il modello di identificazione univoco per il formato dell'immagine come indicato di seguito. Tutte queste voci del Registro di sistema sono necessarie, ad eccezione della voce EndOfStream , facoltativa, come descritto nella tabella seguente.
HKEY_CLASSES_ROOT
CLSID
{Decoder CLSID}
Patterns
{0}
Position = Offset in block
Length = Length of pattern
Pattern = Pattern to match
Mask = FF FF FF FF
EndOfStream = 0|1
Valore | Descrizione |
---|---|
Position | Offset nel file in cui è possibile trovare il modello. |
Length | Lunghezza del motivo. |
Modello | Bit effettivi che costituiscono il modello. Questi sono i bit corrispondenti al modello di identificazione in un file di immagine durante l'individuazione. |
Mask | Consente i valori con caratteri jolly nei modelli. La maschera viene applicata eseguendo un'operazione AND logica sul pattern e sulla maschera. Qualsiasi bit nel criterio che corrisponde a un bit nella maschera con un valore pari a 0 viene ignorato. |
EndOfStream | L'offset del modello di identificazione deve essere calcolato dalla fine del flusso, anziché dall'inizio. Alcuni formati di immagine posizionano il modello di identificazione in corrispondenza o vicino alla fine del file. Poiché l'impostazione predefinita consiste nel cercare dall'inizio, a meno che il modello non si trovi alla fine del file, è possibile omettere questa voce. |
Un codec può supportare più modelli di identificazione. In tal caso, si ripeterebbero tutte le chiavi in HKEY_CLASSES_ROOT\CLSID\{Decoder CLSID}\Patternse si userà la chiave numerica (0 nell'esempio) per distinguere tra i diversi modelli. È necessario includere ognuno dei quattro valori sotto la chiave per ogni criterio.
Registrazione di un formato di contenitore con lettori di metadati
Se si crea un nuovo formato di contenitore per il codec, è necessario creare anche voci del Registro di sistema per supportare l'individuazione dei lettori di metadati per i blocchi di metadati nelle immagini, esattamente come per i writer di metadati. Le voci seguenti devono essere create con l'identificatore di classe (CLSID) del lettore di metadati per ogni formato di metadati supportato dal formato del contenitore. Si noti che, se il codec usa un contenitore TIFF (Tagged Image File Format), queste informazioni sono già presenti nel Registro di sistema.
HKEY_CLASSES_ROOT
CLSID
{Metadata Reader CLSID}
Containers
{Container Format GUID}
Position = Offset relative to its container
Pattern = Pattern used for metadata header
Mask = FF FF FF FF
DataOffset = Offset from beginning of header
Poiché le voci per i lettori di metadati vengono usate anche per l'individuazione, sono molto simili alle voci per i decodificatori. Queste voci vengono usate dalla factory dei componenti per trovare i lettori di metadati supportati dal contenitore e selezionare quella appropriata quando l'implementazione IWICMetadataBlockReader richiede un lettore di metadati.
Valore | Descrizione |
---|---|
Position | Offset nel contenitore del blocco di metadati in cui è possibile trovare l'intestazione dei metadati. Per i blocchi di metadati di primo livello, si tratta dell'offset nel flusso di file. Per i blocchi di metadati annidati in altri blocchi di metadati, si tratta dell'offset relativo al blocco di metadati contenitore. |
Modello | Bit effettivi che costituiscono il modello. Questi sono i bit corrispondenti al modello di identificazione in un file di immagine durante l'individuazione. |
Mask | L'intestazione dei metadati è in genere definita dal gestore di metadati. È consigliabile usare l'intestazione dei metadati standard per ogni lettore, a meno che, per qualche motivo, il modello abbia un formato diverso nel contenitore. |
DataOffset | Offset dall'inizio dell'intestazione dei metadati in corrispondenza del quale iniziano i dati effettivi. Nei casi in cui i metadati non si trovano in corrispondenza di un offset specifico dall'intestazione, questa voce può essere omessa. |
Argomenti correlati
-
Informazioni concettuali