Uwaga
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Natywny koder XR JPEG jest dostępny za pośrednictwem składnika Windows Imaging (WIC). Format JPEG XR, który obsługuje koder, jest przeznaczony do fotografii konsumenckiej i profesjonalnej cyfrowej.
Format JPEG XR może osiągnąć do dwóch razy większą wydajność kompresji oryginalnego formatu JPEG, z mniej zauważalnymi artefaktami kompresji. Funkcje jpeg XR obejmują:
- Obsługa obrazów monochromatycznych, RGB, CMYK i n-kanałowych
- Formaty 8-, 16-bitowe i 32-bitowe liczby całkowite
- Duży zakres dynamiczny, formaty szerokiej gamy z użyciem wartości kolorów stałoprzecinkowych lub zmiennoprzecinkowych
- Dekodowanie progresywne
- Kodowanie stratowe lub bezstratne przy użyciu tego samego algorytmu kompresji
- Obsługa dekodowania regionów zainteresowania dużymi obrazami
Format JPEG XR jest zdefiniowany w następujących dokumentach standardów:
- ITU-T T.832: technologia informacyjna — system kodowania obrazów JPEG XR — specyfikacja kodowania obrazów
- ISO/IEC 29199-2:2010: Technologia informacyjna — SYSTEM kodowania obrazów JPEG XR — Część 2: Specyfikacja kodowania obrazów
Standard JPEG XR jest w dużej mierze oparty na formacie HD Photo, ale istnieją pewne różnice między dwoma formatami. W systemie Windows 8 koder zdjęć HD został zaktualizowany w celu obsługi formatu JPEG XR. Koder zawsze generuje strumień bitowy zgodny ze standardem JPEG XR. Dekoder może dekodować obrazy JPEG XR i HD Photo.
Znaczne ulepszenia wydajności, w odniesieniu do kodeka HD Photo, zostały wprowadzone do kodeka JPEG XR. Na przykład dekodowanie obrazu o rozdzielczości podrzędnej, takie jak generowanie miniatur, zostało ulepszone, a także dekodowanie obrazu o niskiej rozdzielczości. Zaleca się użycie formatu JPEG XR zamiast formatu HD Photo.
Informacje kodeka
Składnik | Opis |
---|---|
Rozszerzenie nazwy pliku | "jxr" i "wdp" |
Identyfikator GUID kontenera | GUID_ContainerFormatWmp |
Identyfikator GUID dekodera | CLSID_WICWmpDecoder |
Identyfikator GUID kodera | CLSID_WICWmpEncoder |
Obsługa profilu | Koder i dekoder obsługują maksymalnie profil główny i poziom 128. |
Funkcje kodera
Wysoki zakres dynamiczny
Plik JPEG XR obsługuje obrazy o wysokim zakresie dynamicznym przy użyciu kolorów zmiennoprzecinkowych lub stałoprzecinkowych. W tych formatach kolorów zakres liczbowy piksela jest większy niż widoczny zakres, dzięki czemu można dostosować kolory powyżej lub poniżej widocznego zakresu podczas etapów przetwarzania pośredniego.
- Stały punkt: W reprezentacji o stałym punkcie 0 reprezentuje kolor, a 1,0 reprezentuje maksymalne nasycenie. Koder XR JPEG obsługuje zarówno formaty 16-bitowe, jak i 32-bitowe o stałym punkcie. W przypadku 16-bitowej wartości 1,0 = 0x2000h, co daje 13 bitów dla widocznego zakresu [0...1]. Łączny zakres wynosi od –4,0 do +3,999 i jest mapowany liniowo. W przypadku 32-bitowej wartości 1,0 = 0x010000000h widoczny zakres to 24 bity, a łączny zakres to od –128 do +127,999.
- Zmiennoprzecinkowy: W reprezentacji zmiennoprzecinkowej 0 reprezentuje czarne, a 1,0 reprezentuje maksymalne nasycenie. Koder XR JPEG obsługuje formaty zmiennoprzecinkowe 16-bitowe i 32-bitowe.
Płytki
Ramkę można podzielić na prostokątne podregiony zwane kafelkami. Kafelek to obszar obrazu, który zawiera prostokątne tablice makrobloków. Kafelki umożliwiają dekodowanie regionów obrazu bez przetwarzania całego obrazu.
Podczas kodowania wybierz liczbę kafelków, ustawiając właściwości HorizontalTileSlices i VerticalTileSlices. Minimalny rozmiar kafelka to 16 × 16 pikseli. Koder dostosowuje liczbę kafelków, aby zachować to ograniczenie. Istnieje obciążenie związane z przechowywaniem i przetwarzaniem skojarzonym z każdym segmentem, dlatego należy wziąć pod uwagę liczbę segmentów, które są potrzebne w określonych scenariuszach.
Dane wyjściowe strumienia obrazu
Standard JPEG-XR definiuje dwie części pliku JPEG-XR:
- Strumień bitowy obrazu zdefiniowany w treści standardu.
- Kontener obrazu. Plik zawiera metadane Exif i XMP i jest zdefiniowany w załączniku A standardu.
Możliwe jest i dozwolone przez standard, aby osadzić strumień obrazu wewnątrz innego typu kontenera plików. Koder obsługuje tryb wyłącznie strumieniowy, który wytwarza nieprzetworzony strumień bitów obrazu bez kontenera obrazu. Aplikacja może przechowywać strumień bitów w innym formacie kontenera.
Aby włączyć tryb tylko do przesyłania strumieniowego, ustaw właściwość StreamOnly.
Ustawienia jakości obrazu
Niektóre właściwości kodeka wpływają na jakość obrazu wyjściowego z enkodera.
- ImageQuality jest właściwością wspólną dla koderów WIC. Określa jakość obrazu jako pojedynczą wartość zmiennoprzecinkową z zakresu od 0.0 do 1.0,
- Właściwości Quality, Overlapi Subsampling zapewniają większą kontrolę nad ustawieniami jakości.
Aby skorzystać z właściwości Quality, Overlapi Subsampling, ustaw właściwość UseCodecOptions na VARIANT_TRUE.
Jeśli UseCodecOptions jest VARIANT_FALSE (VARIANT_FALSE jest wartością domyślną), koder używa właściwości ImageQuality. Koder mapuje wartość właściwości ImageQuality na Quality, Nakładające sięi podprzykładowe za pośrednictwem tabeli odnośników.
Koder nie obsługuje właściwości CompressionQuality.
Transkodowanie skompresowanej domeny
Koder XR JPEG może wykonywać pewne przekształcenia obrazów bez dekodowania skompresowanych danych i ponownego kodowania. Operacje w domenie skompresowanej są bardzo wydajne i unikają wszelkiej dodatkowej utraty jakości, która jest typowa podczas dekodowania i ponownego kodowania obrazu skompresowanego stratnie.
Obsługiwane są następujące skompresowane operacje domeny:
- Przytnij obszar obrazu.
- Obracanie lub przerzucanie obrazu.
- Odrzuć dane częstotliwości, aby utworzyć mniejszy plik obrazu.
- Zreorganizować obraz w porządku przestrzennym i częstotliwościowym.
Koder JPEG XR używa skompresowanego transkodowania domeny, jeśli to możliwe, gdy obraz źródłowy jest obrazem JPEG XR. Gdy koder wykonuje operację w skompresowanej domenie, ignoruje następujące właściwości koderów: AlphaQuality, ImageQuality, InterleavedAlpha, LosslessOverlapi Quality. Jeśli właściwości HorizontalTileSlices i VerticalTileSlices są obecne, należy ustawić je na zero. Nie można zmienić rozmiaru kafelka obrazu podczas transkodowania w skompresowanej domenie.
Poniższa lista zawiera opis sposobu wykonywania przekształceń obrazów.
- Aby przyciąć obraz, ustaw żądany region w parametrze WICRect metody WriteSource.
- Aby obrócić lub przerzucić obraz, ustaw właściwość BitmapTransform.
- Aby odrzucić dane częstotliwości na obrazie, ustaw właściwość ImageDataDiscard. Aby odrzucić dane częstotliwości w kanale alfa, ustaw właściwość AlphaDataDiscard. Odrzucanie danych częstotliwości zmniejsza rozmiar zakodowanego pliku i może zmniejszyć rozdzielczość.
- Aby zmienić organizację obrazu między częstotliwością i kolejnością przestrzenną, ustaw właściwość FrequencyOrdering.
Aby wyłączyć transkodowanie skompresowanej domeny i wymusić ponowne kodowanie obrazu, ustaw UseCodecOptions na VARIANT_TRUE i ustaw CompressedDomainTranscode na VARIANT_FALSE.
Opcje kodera
Aby ustawić właściwości kodowania, użyj interfejsu IPropertyBag2. Aby uzyskać więcej informacji, zobacz omówienie kodowania .
Poniższa lista określa opcje kodera.
- AlphaDataDiscard
- AlphaQuality
- BitmapTransform
- TranskodowanieSkładnikówSprężonych
- CzęstośćUłożenia
- Poziome Płytki Kafelkowe
- Ignoruj nakładanie się
- ImageDataDiscard (DyskardowanieDanychObrazu)
- JakośćObrazu
- InterleavedAlpha
- bez strat
- nakładające się
- progressiveMode
- Jakość
- StreamOnly
- Podpróbkowanie
- UżyjOpcjiKodeków
- Pionowe Kawałki Kafelek
AlphaDataDiscard
Ustawia ilość danych o częstotliwości alfa do odrzucenia podczas transkodowania skompresowanej domeny.
Typ danych | VARTYPE | Zakres | Domyślny |
---|---|---|---|
UCHAR | VT_UI1 | 0–4 | Żaden |
Ta właściwość ma zastosowanie tylko wtedy, gdy właściwość CompressedDomainTranscode jest ustawiona na VARIANT_TRUE, a obraz zawiera planarny kanał alfa lub przeplatany kanał alfa; w przeciwnym razie jest ignorowany.
W przypadku obrazów zawierających planarny kanał alfa są prawidłowe następujące wartości.
Wartość | Opis |
---|---|
0 | Żadne dane częstotliwości obrazów nie są odrzucane. |
1 | Flexbits są odrzucane. To arbitralnie zmniejsza jakość planarnego kanału alfa dla transkodowanego obrazu. , bez zmiany efektywnej rozdzielczości. Dokładne zmniejszenie rozmiaru i jakości pliku zależy od wielu czynników i nie można ich dokładnie określić. |
2 | Pasmo danych o wysokiej częstotliwości jest odrzucane, w tym również flexbits. Skutecznie zmniejsza to rozdzielczość kanału alfa planarnego o współczynnik 4 w obu wymiarach. Rzeczywiste wymiary transkodowanego obrazu pozostają takie same, ale obraz traci wszystkie szczegóły w każdym bloku 4x4 pikseli kanału alfa. Zazwyczaj tę wartość należy ustawić tylko wtedy, gdy właściwość ImageDataDiscard ma tę samą wartość. |
3 | Oba pasma danych o wysokiej passie i niskiej częstotliwości są odrzucane, w tym flexbity. Efektywnie zmniejsza rozdzielczość kanału alfa w trybie planar o współczynnik 16 w obu wymiarach. Rzeczywiste wymiary transkodowanego obrazu pozostają takie same, ale obraz traci wszystkie szczegóły w każdym makrobloku 16x16 pikseli kanału alfa. Zazwyczaj tę wartość należy ustawić tylko wtedy, gdy właściwość ImageDataDiscard ma tę samą wartość. |
4 | Kanał alfa jest całkowicie odrzucany. Format pikseli transkodowanego obrazu jest zmieniany w celu odzwierciedlenia usunięcia kanału alfa. |
W przypadku obrazów zawierających przeplatany kanał alfa jest prawidłowa następująca wartość.
Wartość | Opis |
---|---|
4 | Kanał alfa jest całkowicie odrzucany. Format pikseli transkodowanego obrazu jest zmieniany w celu odzwierciedlenia usunięcia kanału alfa. |
W przypadku przeplotu alfa, chyba że ta właściwość jest ustawiona na 4, kanał alfa jest przetwarzany tak samo jak dane obrazu, zgodnie z wartością właściwości ImageDataDiscard.
AlphaQuality
Ustawia jakość kompresji obrazu kanału alfa planar.
Typ danych | VARTYPE | Zakres | Domyślny |
---|---|---|---|
UCHAR | VT_UI1 | 1–255 | 1 |
Ta właściwość ma zastosowanie, gdy obraz ma kanał alfa, a właściwość InterleavedAlpha jest VARIANT_FALSE. Wartość 1 wskazuje tryb bezstratny. Zwiększenie wartości powoduje zwiększenie współczynników kompresji i niższą jakość obrazu.
BitmapTransform
Określa, czy obraz jest obracany, czy przerzucany podczas dekodowania.
Typ danych | VARTYPE | Zakres | Domyślny |
---|---|---|---|
UCHAR | VT_UI1 | WICBitmapTransformOptions | WICBitmapTransformRotate0 |
Transkodowanie w Domenie Skompresowanej
Włącza lub wyłącza transkodowanie skompresowanej domeny.
Typ danych | VARTYPE | Domyślny |
---|---|---|
VARIANT_BOOL | VT_BOOL | VARIANT_TRUE |
Aby wyłączyć skompresowane operacje domeny, ustaw tę właściwość na VARIANT_FALSE.
Kolejność częstotliwości
Włącza kodowanie w kolejności częstotliwości. Implementacje urządzeń koderów JPEG XR mogą organizować plik w przestrzeni przestrzennej, aby zmniejszyć ilość pamięci wymaganej podczas kodowania.
Typ danych | VARTYPE | Domyślny |
---|---|---|
VARIANT_BOOL | VT_BOOL | VARIANT_TRUE |
- VARIANT_TRUE: kolejność częstotliwości. Dane o najniższej częstotliwości są wyświetlane jako pierwsze w pliku, a zawartość obrazu jest pogrupowana według jego częstotliwości, a nie orientacji przestrzennej. Organizowanie pliku według kolejności częstotliwości zapewnia najlepszą wydajność dla dekodowania opartego na częstotliwości.
- VARIANT_FALSE: kolejność przestrzenna. Kolejność przestrzenna zmniejsza ilość pamięci wymaganej podczas kodowania
Kolejność częstotliwości jest zalecana, chyba że masz powody dotyczące wydajności lub aplikacji, aby użyć kolejności przestrzennej.
TyleSlicy poziome
Ustawia liczbę poziomych kafelków.
Typ danych | VARTYPE | Zakres | Domyślny |
---|---|---|---|
USHORT | VT_UI2 | 0–4095 | (szerokość obrazu – 1) >> 8 |
Wartość jest liczbą podziałów poziomych; oznacza to, że liczba poziomych kafelków – 1.
Ignoruj nakładanie się
Określa sposób, w jaki enkoder obsługuje granice kafelków podczas transkodowania w domenie skompresowanej.
Typ danych | VARTYPE | Domyślny |
---|---|---|
VARIANT_BOOL | VT_BOOL | VARIANT_FALSE |
Ta właściwość jest stosowana tylko wtedy, gdy właściwość CompressedDomainTranscode jest ustawiona na VARIANT_TRUE i wykonywane jest transkodowanie podregionu obejmujące dokładnie jeden lub więcej kafelków.
Domyślną operacją transkodowania regionu jest rozszerzenie żądanego regionu, aby uwzględnić otaczające piksele niezbędne do dekodowania nakładających się krawędzi regionu. Jeśli ta właściwość jest ustawiona na VARIANT_TRUE, koder ignoruje otaczające piksele i wyodrębnia tylko wybrany kafelek lub kafelki. Jeśli obraz źródłowy nie posiada układu kafelkowego lub żądany region zawiera fragmenty kafelków, ten parametr jest ignorowany.
ImageDataDiscard
Ustawia ilość danych częstotliwości obrazów do odrzucenia podczas transkodowania skompresowanej domeny.
Typ danych | VARTYPE | Zakres | Domyślny |
---|---|---|---|
UCHAR | VT_UI1 | 0–3 | 0 |
Ta właściwość ma zastosowanie tylko wtedy, gdy właściwość CompressedDomainTranscode jest ustawiona na VARIANT_TRUE; w przeciwnym razie jest ignorowana.
Wartość | Opis |
---|---|
0 | Żadne dane częstotliwości obrazów nie są odrzucane. |
1 | Flexbits są odrzucane. To arbitralnie zmniejsza jakość transkodowanego obrazu bez zmieniania efektywnej rozdzielczości obrazu. Dokładne zmniejszenie rozmiaru i jakości pliku zależy od wielu czynników i nie można ich dokładnie określić. Ta wartość zwraca błąd określony dla interpolowanego kanału alfa. |
2 | Pasmo danych o wysokiej częstotliwości jest odrzucane, w tym również flexbits. Zmniejsza to rozdzielczość transkodowanego obrazu przez współczynnik 4 w obu wymiarach. Rzeczywiste wymiary transkodowanego obrazu pozostają takie same, ale obraz traci wszystkie szczegóły w każdym bloku 4x4 pikseli. Dlatego transkodowany obraz powinien być zmniejszany za każdym razem, gdy jest dekodowany. |
3 | Oba pasma danych o wysokiej passie i niskiej częstotliwości są odrzucane, w tym flexbity. Zmniejsza to rozdzielczość transkodowanego obrazu przez współczynnik 16 w obu wymiarach. Rzeczywiste wymiary transkodowanego obrazu pozostają takie same, ale obraz traci wszystkie szczegóły w każdym makrze 16x16 pikseli. Dlatego transkodowany obraz powinien być zmniejszany za każdym razem, gdy jest dekodowany. |
Jeśli obraz zawiera przeplatany kanał alfa, wartość ImageDataDiscard jest stosowana do kanału alfa, chyba że właściwość AlphaDataDiscard jest ustawiona na 4, w tym przypadku kanał alfa zostanie odrzucony.
W przypadku planar alfa odrzucone dane częstotliwości są kontrolowane przez właściwość AlphaDataDiscard.
ImageQuality
Ustawia jakość obrazu.
Typ danych | VARTYPE | Zakres | Domyślny |
---|---|---|---|
UNOSZENIE | VT_R4 | 0–1.0 | 0,9 |
Poziom 1.0 zapewnia matematycznie bezstratną kompresję.
Poziom 0.0 jest ustawieniem najniższej jakości.
InterleavedAlpha
Określa, czy kodować przeplatane alfa lub planar alfa.
Typ danych | VARTYPE | Domyślny |
---|---|---|
VARIANT_BOOL | VT_BOOL | VARIANT_FALSE |
- VARIANT_TRUE: Przeplatane alfa. Informacje o kanale alfa są kodowane jako dodatkowy kanał przeplatany bez korelacji z kanałami zawartości obrazu. Ten tryb jest przydatny do jednoczesnego dekodowania kanału alfa i obrazu, kiedy obraz jest przesyłany strumieniowo.
- VARIANT_FALSE: Planar alpha. Planarny kanał alfa jest zakodowany jako oddzielny obraz. Dane obrazu i kanał alfa są dekodowane niezależnie. Opcjonalnie możesz ustawić poziom jakości kanału alfa, ustawiając właściwość AlphaQuality.
Alfa z przeplotem jest obsługiwana tylko w przypadku niektórych formatów pikseli RGB. Planar alpha jest obsługiwany dla dowolnego formatu obrazu, który definiuje kanał alpha.
Bezstratny
Umożliwia kompresję strat.
Typ danych | VARTYPE | Domyślny |
---|---|---|
VARIANT_BOOL | VT_BOOL | FAŁSZ_VARIANT |
Jeśli wartość jest VARIANT_TRUE, koder używa kompresji bezstratnej. Po ustawieniu wartości VARIANT_TRUEta właściwość zastępuje właściwość ImageQuality.
Nakładanie się
Ustawia poziom nakładającego się filtrowania. Przy filtrowaniu nakładającym się współczynniki przekształcania są stosowane przez granice bloków i makrobloków. Może to zmniejszyć liczbę artefaktów blokujących.
Typ danych | VARTYPE | Zakres | Domyślny |
---|---|---|---|
UCHAR | VT_UI1 | 0–4 | 1 |
Wartość | Opis |
---|---|
0 | Nie nakładają się na siebie. |
1 | Jeden poziom nakładających się, miękkich płytek. (Wartość domyślna) |
2 | Dwa poziomy nakładających się, miękkich tilingów. |
3 | Jeden poziom nakładających się, twardych kafelków |
4 | Dwa poziomy nakładających się, twardych płytek. |
Definicje:
- Jeden poziom nakładania się: zakodowane wartości 4x4 bloków są modyfikowane na podstawie sąsiednich bloków.
- Dwa poziomy nakładania się: pierwszy poziom nakładania się jest stosowany. Ponadto zakodowane wartości 16x16 makrobloków są modyfikowane na podstawie sąsiednich makrobloków.
- Miękkie układanie: Filtrowanie nakładające się jest stosowane w granicach kafelków.
- Twarde kafelkowanie: Filtrowanie nakładające się nie jest stosowane przez granice kafelków. Twarde kafelki mogą wprowadzać niektóre artefakty wizualne wzdłuż granic kafelków.
Jeśli ustawisz tę właściwość, ustaw również UseCodecOptions na VARIANT_TRUE.
ProgressiveMode
Włącza lub wyłącza kodowanie progresywne.
Typ danych | VARTYPE | Domyślny |
---|---|---|
VARIANT_BOOL | VT_BOOL | VARIANT_FALSE |
Wartość | Opis |
---|---|
VARIANT_TRUE | Tryb sekwencyjny (wartość domyślna). |
VARIANT_FALSE | Tryb progresywny. |
Jakość
Ustawia jakość kompresji.
Typ danych | VARTYPE | Zakres | Domyślny |
---|---|---|---|
UCHAR | VT_UI1 | 1–255 | 1 |
Wartość 1 wskazuje tryb bezstratny. Zwiększenie wartości powoduje zwiększenie współczynników kompresji i niższą jakość obrazu.
Jeśli ustawisz tę właściwość, ustaw również UseCodecOptions na VARIANT_TRUE.
StreamOnly
Włącza lub wyłącza tryb wyłącznie strumieniowy.
Typ danych | VARTYPE | Domyślny |
---|---|---|
VARIANT_BOOL | VT_BOOL | VARIANT_FALSE |
Wartość | Opis |
---|---|
VARIANT_TRUE | Koder generuje nieprzetworzone strumienie obrazu bez metadanych. |
VARIANT_FALSE | Koder generuje format kontenera (strumień obrazu i metadane). |
Podpróbkowanie
Ustawia podpróbkowanie chrominancji. Ta właściwość ma zastosowanie tylko do obrazów RGB.
Typ danych | VARTYPE | Zakres | Domyślny |
---|---|---|---|
UCHAR | VT_UI1 | 0–3 | 3, jeśli ImageQuality> 0,8; w przeciwnym razie 1 |
Wartość | Opis |
---|---|
3 | Kodowanie 4:4:4. Zachowuje pełną rozdzielczość kolorów. |
2 | Kodowanie 4:2:2. Rozdzielczość chrominancji wynosi ½ rozdzielczości luminancji. |
1 | Kodowanie 4:2:0. Rozdzielczość chrominancji jest 1/4 rozdzielczości luminancji. |
0 | Kodowanie 4:0:0. Odrzuca wszystkie wartości chroma i zachowuje tylko lumincję.
Uwaga: Ten tryb nie jest zalecany, ponieważ koder używa nieco zmodyfikowanej definicji luminacji w celu zwiększenia wydajności. Zamiast tego lepiej jest przekonwertować obraz na monochromatyczny przed kodowaniem. |
4:2:2 i 4:2:0 zachowują szczegóły luminancji kosztem detalu kolorów.
Jeśli ustawisz tę właściwość, ustaw również UseCodecOptions na VARIANT_TRUE.
Użyj opcji kodeka
Określa, czy należy używać właściwości Quality, Nakładanie sięi Podpróbkowanie zamiast ogólnej właściwości jakość obrazu.
Typ danych | VARTYPE | Domyślny |
---|---|---|
VARIANT_BOOL | VT_BOOL | VARIANT_FALSE |
Pionowe kafelki
Ustawia liczbę poziomych kafelków.
Typ danych | VARTYPE | Zakres | Domyślny |
---|---|---|---|
USHORT | VT_UI2 | 0–4095 | (wysokość obrazu – 1) >> 8 |
Wartość jest liczbą podziałów pionowych; oznacza to, że liczba kafelków pionowych – 1.
Obsługiwane formaty kolorów
Aby uzyskać więcej informacji na temat tych formatów, zobacz Native Pixel Formats.
- formaty Integer RGB
- GUID_WICPixelFormat24bppRGB
- GUID_WICPixelFormat24bppBGR
- GUID_WICPixelFormat32bppBGR
- GUID_WICPixelFormat48bppRGB
- GUID_WICPixelFormat32bppBGRA
- GUID_WICPixelFormat64bppRGBA
- GUID_WICPixelFormat32bppPBGRA
- GUID_WICPixelFormat64bppPRGBA
-
formaty RGB o stałym punkcie
- GUID_WICPixelFormat48bppRGBFixedPoint
- GUID_WICPixelFormat64bppRGBFixedPoint
- GUID_WICPixelFormat96bppRGBFixedPoint
- GUID_WICPixelFormat128bppRGBFixedPoint
- Format piksela 128bpp RGBA z ustalonym punktem GUID_WICPixelFormat128bppRGBAFixedPoint
-
formaty RGB zmiennoprzecinkowe
- GUID_WICPixelFormat48bppRGBHalf
- GUID_WICPixelFormat64bppRGBHalf
- GUID_WICPixelFormat128bppRGBFloat
- GUID_WICPixelFormat64bppRGBAFixedPoint
- GUID_WICPixelFormat64bppRGBAHalf
- GUID_WICFormatPikseli128bppRGBAFloat (format pikseli 128bpp RGBA zmiennoprzecinkowy)
- GUID_WICPixelFormat128bppPRGBAFloat
-
formaty skali szarości
- GUID_WICPixelFormat8bppGray
- GUID_WICPixelFormat16bppGray
- GUID_WICPixelFormat16bppSzaryPunktStały
- GUID_WICPixelFormat16bppGrayHalf (Format piksela 16-bitowego w skali szarości)
- GUID_WICPixelFormat32bppGrayFixedPoint
- GUID_WICPixelFormat32bppGrayFloat
-
Spakowane formaty
- GUID_WICPixelFormat16bppBGR555
- GUID_WICPixelFormat16bppBGR565
- GUID_WICPixelFormat32bppBGR101010
- GUID_WICPixelFormat32bppRGBE
-
formaty CMYK
- GUID_WICPixelFormat40bppCMYKAlpha
- GUID_WICPixelFormat64bppCMYK
- GUID_WICPixelFormat80bppCMYKAlpha
-
formaty kanałów N
- GUID_WICPixelFormat32bpp4Channels
- GUID_WICPixelFormat40bpp5Channels
- GUID_WICPixelFormat48bpp6Channels
- GUID_WICPixelFormat56bpp7Channels
- GUID_WICPixelFormat64bpp8Channels
- GUID_WICPixelFormat32bpp3ChannelsAlpha
- GUID_WICPixelFormat40bpp4ChannelsAlpha
- GUID_WICPixelFormat48bpp5ChannelsAlpha
- GUID_WICPixelFormat56bpp6ChannelsAlpha
- GUID_WICPixelFormat64bpp7ChannelsAlpha
- GUID_WICPixelFormat72bpp8ChannelsAlpha
- GUID_WICPixelFormat48bpp3Channels
- GUID_WICPixelFormat64bpp4Channels
- GUID_WICPixelFormat80bpp5Channels
- GUID_WICPixelFormat96bpp6Channels
- GUID_WICPixelFormat128bpp8Channels
- GUID_WICPixelFormat64bpp3ChannelsAlpha
- GUID_WICPixelFormat80bpp4ChannelsAlpha
- GUID_WICPixelFormat96bpp5ChannelsAlpha
- GUID_WICPixelFormat112bpp6ChannelsAlpha
- GUID_WICPixelFormat128bpp7ChannelsAlpha
- GUID_WICPixelFormat144bpp8ChannelsAlpha