JPEG XR 코덱 개요
네이티브 JPEG XR 코덱은 WIC(Windows 이미징 구성 요소)를 통해 사용할 수 있습니다. 코덱이 지원하는 JPEG XR 형식은 소비자 및 전문 디지털 사진을 위해 설계되었습니다.
JPEG XR 형식은 덜 눈에 띄는 압축 아티팩트와 함께 원래 JPEG 형식의 압축 효율성을 최대 두 배로 높일 수 있습니다. JPEG XR의 기능은 다음과 같습니다.
- 단색, RGB, CMYK 및 n 채널 이미지 지원
- 8비트, 16비트 및 32비트 정수 형식
- 고정 소수점 또는 부동 소수점 색 값을 사용하는 높은 동적 범위, 넓은 영역 형식
- 점진적 디코딩
- 동일한 압축 알고리즘을 사용하는 손실 또는 무손실 인코딩
- 큰 이미지에 관심 있는 지역의 디코딩 지원
JPEG XR 형식은 다음 표준 문서에 정의되어 있습니다.
- ITU-T T.832: 정보 기술 – JPEG XR 이미지 코딩 시스템 – 이미지 코딩 사양
- ISO/IEC 29199-2:2010: 정보 기술 - JPEG XR 이미지 코딩 시스템 - 2부: 이미지 코딩 사양
JPEG XR 표준은 주로 HD Photo 형식을 기반으로 하지만 두 형식 간에는 몇 가지 차이점이 있습니다. Windows 8에서는 JPEG XR을 지원하도록 HD 사진 코덱이 업데이트되었습니다. 이제 인코더는 항상 JPEG XR 규격 비트 스트림을 출력합니다. 디코더는 JPEG XR 및 HD 사진 이미지를 모두 디코딩할 수 있습니다.
HD Photo 코덱과 관련하여 JPEG XR 코덱의 성능이 크게 향상되었습니다. 예를 들어 썸네일 생성과 같은 하위 해상도 이미지 디코딩은 저해상도 이미지 디코딩뿐만 아니라 개선되었습니다. HD 사진 형식 대신 JPEG XR 형식을 사용하는 것이 좋습니다.
구성 요소 | 설명 |
---|---|
파일 이름 확장명 | "jxr" 및 "wdp" |
컨테이너 GUID | GUID_ContainerFormatWmp |
디코더 GUID | CLSID_WICWmpDecoder |
인코더 GUID | CLSID_WICWmpEncoder |
프로필 지원 | 인코더 및 디코더는 기본 프로필 및 수준 128까지 지원합니다. |
JPEG XR은 부동 소수점 또는 고정점 색을 사용하여 높은 동적 범위 이미지를 지원합니다. 이러한 색 형식에서는 픽셀의 숫자 범위가 표시되는 범위보다 크므로 중간 처리 단계에서 표시되는 범위 위 또는 아래의 색을 조정할 수 있습니다.
- 고정 소수점: 고정 소수점 표현에서 0은 검은색을 나타내고 1.0은 최대 채도를 나타냅니다. JPEG XR 코덱은 16비트 및 32비트 고정 소수점 형식을 모두 지원합니다. 16비트, 1.0 = 0x2000h의 경우 표시되는 범위 [0...1]에 대해 13비트입니다. 총 범위는 –4.0에서 +3.999까지이며 선형으로 매핑됩니다. 32비트, 1.0 = 0x01000000h의 경우 표시되는 범위는 24비트이고 총 범위는 –128 ~+127.999입니다.
- 부동 소수점: 부동 소수점 표현에서 0은 검은색을 나타내고 1.0은 최대 채도를 나타냅니다. JPEG XR 코덱은 16비트 및 32비트 부동 소수점 형식을 모두 지원합니다.
프레임은 타일이라는 사각형 하위 영역으로 분할할 수 있습니다. 타일은 매크로 블록의 사각형 배열을 포함하는 이미지의 영역입니다. 타일을 사용하면 전체 이미지를 처리하지 않고 이미지 영역을 디코딩할 수 있습니다.
인코딩하는 동안 HorizontalTileSlices 및 VerticalTileSlices 속성을 설정하여 타일 수를 선택합니다. 최소 타일 크기는 16개 × 16픽셀입니다. 인코더는 이 제한을 유지하기 위해 타일 수를 조정합니다. 각 타일과 연결된 스토리지 및 처리 오버헤드가 있으므로 특정 시나리오에 필요한 타일 수를 고려해야 합니다.
JPEG-XR 표준은 JPEG-XR 파일의 두 부분을 정의합니다.
- 표준 본문에 정의된 이미지 비트 스트림입니다.
- 이미지 컨테이너입니다. 파일에는 Exif 및 XMP 메타데이터가 포함되어 있으며 표준의 부속서 A에 정의되어 있습니다.
표준에서 이미지 스트림을 다른 형식의 파일 컨테이너 내에 포함할 수 있으며 허용됩니다. 인코더는 이미지 컨테이너 없이 원시 이미지 비트 스트림을 출력하는 스트림 전용 모드를 지원합니다. 애플리케이션은 비트 스트림을 다른 컨테이너 형식으로 저장할 수 있습니다.
스트림 전용 모드를 사용하도록 설정하려면 StreamOnly 속성을 설정합니다.
여러 코덱 속성은 인코더에서 출력 이미지의 품질을 제어합니다.
- ImageQuality 는 WIC 코덱에서 공통되는 속성입니다. 이미지 품질을 0.0~1.0의 단일 부동 소수점 값으로 지정합니다.
- 품질, 겹침 및 하위 샘플링 속성을 사용하면 품질 설정을 더 자세히 제어할 수 있습니다.
품질, 겹침 및 하위 샘플링 속성을 사용하려면 UseCodecOptions 속성을 VARIANT_TRUE 설정합니다.
UseCodecOptions가 VARIANT_FALSE 경우(기본값은 VARIANT_FALSE) 인코더는 ImageQuality 속성을 사용합니다. 인코더는 조회 테이블을 통해 ImageQuality 값을 품질, 겹침 및 하위 샘플링 에 매핑합니다.
인코더는 CompressionQuality 속성을 지원하지 않습니다.
JPEG XR 코덱은 압축된 데이터를 실제로 디코딩하고 다시 인코딩하지 않고 특정 이미지 변환을 수행할 수 있습니다. 압축된 도메인 작업은 매우 효율적이며 손실 압축 이미지를 디코딩하고 다시 인코딩할 때 일반적인 추가 품질 손실을 방지합니다.
다음과 같은 압축된 도메인 작업이 지원됩니다.
- 이미지 영역을 자르세요.
- 이미지를 회전하거나 대칭 이동합니다.
- 빈도 데이터를 삭제하여 더 작은 이미지 파일을 만듭니다.
- 공간 순서와 빈도 순서 간에 이미지를 다시 구성합니다.
JPEG XR 인코더는 원본 이미지가 JPEG XR 이미지인 경우 가능하면 압축된 도메인 트랜스코딩을 사용합니다. 인코더가 압축된 도메인 작업을 수행하는 경우 AlphaQuality, ImageQuality, InterleavedAlpha, 손실 없는겹침 및 품질과 같은 코덱 속성을 무시 합니다. HorizontalTileSlices 및 VerticalTileSlices 속성이 있는 경우 0으로 설정해야 합니다. 압축된 도메인 트랜스코드의 일부로 이미지의 타일 크기를 변경할 수 없습니다.
다음 목록에서는 이미지 변환을 수행하는 방법을 설명합니다.
- 이미지를 자르려면 WriteSource 메서드의 WICRect 매개 변수에서 원하는 지역을 설정합니다.
- 이미지를 회전하거나 대칭 이동하려면 BitmapTransform 속성을 설정합니다.
- 이미지에서 빈도 데이터를 삭제하려면 ImageDataDiscard 속성을 설정합니다. 알파 채널에서 빈도 데이터를 삭제하려면 AlphaDataDiscard 속성을 설정합니다. 빈도 데이터를 삭제하면 인코딩된 파일 크기가 줄어들고 해상도가 감소할 수 있습니다.
- 빈도와 공간 순서 사이의 이미지 organization 변경하려면 FrequencyOrdering 속성을 설정합니다.
압축된 도메인 트랜스코딩을 사용하지 않도록 설정하고 인코더가 이미지를 다시 인코딩하도록 하려면 UseCodecOptions 를 VARIANT_TRUE 설정하고 CompressedDomainTranscode 를 VARIANT_FALSE 설정합니다.
인코딩 속성을 설정하려면 IPropertyBag2 인터페이스를 사용합니다. 자세한 내용은 인코딩 개요를 참조하세요.
다음 목록에서는 인코더 옵션을 지정합니다.
- AlphaDataDiscard
- AlphaQuality
- BitmapTransform
- CompressedDomainTranscode
- FrequencyOrder
- HorizontalTileSlices
- IgnoreOverlap
- ImageDataDiscard
- ImageQuality
- InterleavedAlpha
- 무손실
- 겹치는
- ProgressiveMode
- 품질
- StreamOnly
- Subsampling
- UseCodecOptions
- VerticalTileSlices
압축된 도메인 코드 변환 중에 삭제할 알파 빈도 데이터의 양을 설정합니다.
데이터 형식 | VARTYPE | 범위 | 기본값 |
---|---|---|---|
UCHAR | VT_UI1 | 0–4 | 없음 |
이 속성은 CompressedDomainTranscode 속성이 VARIANT_TRUE 설정되고 이미지에 평면 알파 채널 또는 인터리브 알파 채널이 포함된 경우에만 적용됩니다. 그렇지 않으면 무시됩니다.
평면 알파 채널이 포함된 이미지의 경우 다음 값이 유효합니다.
값 | 설명 |
---|---|
0 | 이미지 빈도 데이터가 삭제되지 않습니다. |
1 | flexbits는 삭제됩니다. 이렇게 하면 변환된 이미지에 대한 평면 알파 채널의 품질이 임의로 줄어듭니다. - 유효 해결을 변경하지 않습니다. 파일 크기와 품질이 정확히 감소하는 것은 다양한 요인에 따라 달라지며 정확히 지정할 수 없습니다. |
2 | 고가용성 빈도 데이터 밴드는 flexbits를 포함하여 삭제됩니다. 이렇게 하면 평면 알파 채널의 해상도가 두 차원 모두에서 4단계로 효과적으로 감소합니다. 코드 변환된 이미지의 실제 크기는 동일하게 유지되지만 이미지는 알파 채널 픽셀의 각 4x4 블록에서 모든 세부 정보를 잃게 됩니다. 일반적으로 ImageDataDiscard 속성의 값이 같은 경우에만 이 값을 설정해야 합니다. |
3 | 하이 패스 및 로우 패스 빈도 데이터 밴드는 모두 flexbits를 포함하여 삭제됩니다. 이렇게 하면 평면 알파 채널의 해상도가 두 차원 모두에서 16단계로 줄어듭니다. 코드 변환된 이미지의 실제 크기는 동일하게 유지되지만, 이미지는 알파 채널 픽셀의 각 16x16 매크로 블록에서 모든 세부 정보를 손실합니다. 일반적으로 ImageDataDiscard 속성의 값이 같은 경우에만 이 값을 설정해야 합니다. |
4 | 알파 채널이 완전히 삭제됩니다. 트랜스코딩된 이미지의 픽셀 형식은 알파 채널의 제거를 반영하도록 변경됩니다. |
인터리브 알파 채널이 포함된 이미지의 경우 다음 값이 유효합니다.
값 | Description |
---|---|
4 | 알파 채널이 완전히 삭제됩니다. 트랜스코딩된 이미지의 픽셀 형식은 알파 채널의 제거를 반영하도록 변경됩니다. |
인터리브 알파의 경우 이 속성이 4로 설정되지 않는 한 알파 채널은 ImageDataDiscard 속성 값에 따라 이미지 데이터와 동일하게 처리됩니다.
평면 알파 채널 이미지의 압축 품질을 설정합니다.
데이터 형식 | VARTYPE | 범위 | 기본값 |
---|---|---|---|
UCHAR | VT_UI1 | 1–255 | 1 |
이 속성은 이미지에 알파 채널이 있고 InterleavedAlpha 속성이 VARIANT_FALSE 경우에 적용됩니다. 값 1은 무손실 모드를 나타냅니다. 값을 늘리면 압축 비율이 높아지고 이미지 품질이 낮아질 수 있습니다.
디코딩할 때 이미지가 회전 또는 대칭 이동되는지 여부를 지정합니다.
데이터 형식 | VARTYPE | 범위 | 기본값 |
---|---|---|---|
UCHAR | VT_UI1 | WICBitmapTransformOptions | WICBitmapTransformRotate0 |
압축된 도메인 코드 변환을 사용하거나 사용하지 않도록 설정합니다.
데이터 형식 | VARTYPE | 기본값 |
---|---|---|
VARIANT_BOOL | VT_BOOL | VARIANT_TRUE |
압축된 도메인 작업을 사용하지 않도록 설정하려면 이 속성을 VARIANT_FALSE.
빈도 순서로 인코딩을 사용하도록 설정합니다. JPEG XR 인코더의 디바이스 구현은 인코딩하는 동안 필요한 메모리를 줄이기 위해 파일을 공간 순서대로 구성할 수 있습니다.
데이터 형식 | VARTYPE | 기본값 |
---|---|---|
VARIANT_BOOL | VT_BOOL | VARIANT_TRUE |
- VARIANT_TRUE: 빈도 순서입니다. 가장 낮은 빈도 데이터가 파일에 먼저 나타나고 이미지 콘텐츠는 공간 방향이 아닌 빈도로 그룹화됩니다. 빈도 순서로 파일을 구성하면 모든 빈도 기반 디코딩에 최상의 성능을 제공합니다.
- VARIANT_FALSE: 공간 순서입니다. 공간 순서는 인코딩하는 동안 필요한 메모리를 줄입니다.
공간 순서를 사용해야 하는 성능 또는 애플리케이션별 이유가 없는 한 빈도 순서를 사용하는 것이 좋습니다.
가로 타일 수를 설정합니다.
데이터 형식 | VARTYPE | 범위 | 기본값 |
---|---|---|---|
Ushort | VT_UI2 | 0–4095 | (이미지 너비 – 1) >> 8 |
값은 가로 세분화의 수입니다. 즉, 가로 타일 수 – 1입니다.
압축된 도메인 코드 변환 중에 인코더가 타일 경계를 처리하는 방법을 지정합니다.
데이터 형식 | VARTYPE | 기본값 |
---|---|---|
VARIANT_BOOL | VT_BOOL | VARIANT_FALSE |
이 속성은 CompressedDomainTranscode 속성이 VARIANT_TRUE 설정되고 정확히 하나 이상의 타일의 하위 지역 코드가 수행되는 경우에만 적용됩니다.
지역 코드 변환의 기본 작업은 요청된 영역을 확장하여 영역 가장자리의 겹치는 디코딩에 필요한 주변 픽셀을 포함하는 것입니다. 이 속성이 VARIANT_TRUE 설정되면 코덱은 주변 픽셀을 무시하고 선택한 타일 또는 타일만 추출됩니다. 원본 이미지가 바둑판식으로 표시되지 않거나 요청된 지역에 부분 타일이 포함된 경우 이 매개 변수는 무시됩니다.
압축된 도메인 코드 변환 중에 삭제할 이미지 빈도 데이터의 양을 설정합니다.
데이터 형식 | VARTYPE | 범위 | 기본값 |
---|---|---|---|
UCHAR | VT_UI1 | 0–3 | 0 |
이 속성은 CompressedDomainTranscode 속성이 VARIANT_TRUE 설정된 경우에만 적용됩니다. 그렇지 않으면 무시됩니다.
값 | 설명 |
---|---|
0 | 이미지 빈도 데이터가 삭제되지 않습니다. |
1 | flexbits는 삭제됩니다. 이렇게 하면 이미지의 유효 해상도를 변경하지 않고도 코드 변환된 이미지의 품질이 임의로 줄어듭니다. 파일 크기와 품질이 정확히 감소하는 것은 다양한 요인에 따라 달라지며 정확히 지정할 수 없습니다. 이 값은 인터리브 알파 채널에 대해 지정된 오류를 반환합니다. |
2 | 고가용성 빈도 데이터 밴드는 flexbits를 포함하여 삭제됩니다. 이렇게 하면 두 차원 모두에서 코드 변환된 이미지의 해상도가 4단계로 줄어듭니다. 코드 변환된 이미지의 실제 크기는 동일하게 유지되지만 이미지는 각 4x4 픽셀 블록에서 모든 세부 정보를 잃게 됩니다. 따라서 코드 변환된 이미지는 디코딩될 때마다 적절하게 다운샘플링되어야 합니다. |
3 | 하이 패스 및 로우 패스 빈도 데이터 밴드는 모두 flexbits를 포함하여 삭제됩니다. 이렇게 하면 두 차원 모두에서 코드 변환된 이미지의 해상도가 16포인트 감소합니다. 코드 변환된 이미지의 실제 크기는 동일하게 유지되지만 이미지는 픽셀의 각 16x16 매크로 블록에서 모든 세부 정보를 잃게 됩니다. 따라서 코드 변환된 이미지는 디코딩될 때마다 적절하게 다운샘플링되어야 합니다. |
이미지에 인터리브 알파 채널이 포함된 경우 AlphaDataDiscard 속성이 4로 설정되지 않는 한 ImageDataDiscard 값이 알파 채널에 적용됩니다. 이 경우 알파 채널은 삭제됩니다.
평면 알파의 경우 삭제되는 빈도 데이터는 AlphaDataDiscard 속성에 의해 제어됩니다.
이미지 품질을 설정합니다.
데이터 형식 | VARTYPE | 범위 | 기본값 |
---|---|---|---|
FLOAT | VT_R4 | 0–1.0 | 0.9 |
수준 1.0은 수학적으로 무손실 압축을 제공합니다.
수준 0.0은 가장 낮은 품질 설정입니다.
인터리브된 알파 또는 평면 알파를 인코딩할지 여부를 지정합니다.
데이터 형식 | VARTYPE | 기본값 |
---|---|---|
VARIANT_BOOL | VT_BOOL | VARIANT_FALSE |
- VARIANT_TRUE: 인터리브 알파. 알파 채널 정보는 이미지 콘텐츠 채널과 상관 관계가 없는 추가 인터리브 채널로 인코딩됩니다. 이 모드는 이미지가 스트리밍되는 경우 이미지와 알파를 동시에 디코딩하는 데 유용합니다.
- VARIANT_FALSE: 평면 알파. 평면 알파 채널은 별도의 이미지로 인코딩됩니다. 이미지 데이터와 알파 채널은 독립적으로 디코딩됩니다. 필요에 따라 AlphaQuality 속성을 설정하여 알파 채널의 품질 수준을 설정할 수 있습니다.
인터리브 알파는 특정 RGB 픽셀 형식에 대해서만 지원됩니다. 평면 알파는 알파 채널을 정의하는 모든 이미지 형식에 대해 지원됩니다.
손실 압축을 사용하도록 설정합니다.
데이터 형식 | VARTYPE | 기본값 |
---|---|---|
VARIANT_BOOL | VT_BOOL | VARIANT_FALSE |
값이 VARIANT_TRUE 인코더는 무손실 압축을 사용합니다. VARIANT_TRUE 설정하면 이 속성은 ImageQuality 속성을 재정의합니다.
겹침 필터링 수준을 설정합니다. 겹침 필터링을 사용하면 변환 계수가 블록 및 매크로 블록 경계에 적용됩니다. 이렇게 하면 차단 아티팩트가 감소할 수 있습니다.
데이터 형식 | VARTYPE | 범위 | 기본값 |
---|---|---|---|
UCHAR | VT_UI1 | 0–4 | 1 |
값 | 설명 |
---|---|
0 | 겹치지 않습니다. |
1 | 겹치는 부드러운 타일링의 한 수준. 이 속성의 기본값입니다. |
2 | 겹치는 부드러운 타일링의 두 수준입니다. |
3 | 한 수준의 겹침, 하드 타일링 |
4 | 겹치는 하드 타일링의 두 가지 수준입니다. |
정의:
- 겹침의 한 수준: 4x4 블록의 인코딩된 값은 인접 블록에 따라 수정됩니다.
- 겹침의 두 수준: 첫 번째 겹침 수준이 적용됩니다. 또한 16x16 매크로 블록의 인코딩된 값은 인접한 매크로 블록에 따라 수정됩니다.
- 소프트 타일링: 겹침 필터링은 타일 경계에 적용됩니다.
- 하드 타일링: 겹침 필터링은 타일 경계에 적용되지 않습니다. 하드 타일은 타일 경계를 따라 일부 시각적 아티팩트가 도입할 수 있습니다.
이 속성을 설정하는 경우 UseCodecOptions 도 VARIANT_TRUE 설정합니다.
점진적 인코딩을 사용하거나 사용하지 않도록 설정합니다.
데이터 형식 | VARTYPE | 기본값 |
---|---|---|
VARIANT_BOOL | VT_BOOL | VARIANT_FALSE |
값 | 설명 |
---|---|
VARIANT_TRUE | 순차 모드(기본값). |
VARIANT_FALSE | 프로그레시브 모드. |
압축 품질을 설정합니다.
데이터 형식 | VARTYPE | 범위 | 기본값 |
---|---|---|---|
UCHAR | VT_UI1 | 1–255 | 1 |
값 1은 무손실 모드를 나타냅니다. 값을 늘리면 압축 비율이 높아지고 이미지 품질이 낮아질 수 있습니다.
이 속성을 설정하는 경우 UseCodecOptions 도 VARIANT_TRUE 설정합니다.
스트림 전용 모드를 사용하거나 사용하지 않도록 설정합니다.
데이터 형식 | VARTYPE | 기본값 |
---|---|---|
VARIANT_BOOL | VT_BOOL | VARIANT_FALSE |
값 | 설명 |
---|---|
VARIANT_TRUE | 인코더는 메타데이터 없이 원시 이미지 스트림을 출력합니다. |
VARIANT_FALSE | 인코더는 컨테이너 형식(이미지 스트림 및 메타데이터)을 출력합니다. |
크로마 하위 샘플링을 설정합니다. 이 속성은 RGB 이미지에만 적용됩니다.
데이터 형식 | VARTYPE | 범위 | 기본값 |
---|---|---|---|
UCHAR | VT_UI1 | 0–3 | ImageQuality> 0.8인 경우 3, 그렇지 않으면 1 |
값 | 설명 |
---|---|
3 | 4:4:4 인코딩. 전체 크로마 해상도를 유지합니다. |
2 | 4:2:2 인코딩. 크로마 해상도는 광도 해상도의 1/2입니다. |
1 | 4:2:0 인코딩. 크로마 해상도는 광도 해상도의 1/4입니다. |
0 | 4:0:0 인코딩입니다. 모든 크로마 값을 삭제하고 광도만 유지합니다.
참고: 코덱은 약간 수정된 광도 정의를 사용하여 성능을 향상시키기 때문에 이 모드는 권장되지 않습니다. 대신 인코딩하기 전에 이미지를 흑백으로 변환하는 것이 좋습니다. |
4:2:2 및 4:2:0은 색상 세부 정보를 희생하여 광도 세부 정보를 유지합니다.
이 속성을 설정하는 경우 UseCodecOptions 도 VARIANT_TRUE 설정합니다.
일반 ImageQuality 속성 대신 품질, 겹침 및 하위 샘플링 속성을 사용할지 여부를 지정합니다.
데이터 형식 | VARTYPE | 기본값 |
---|---|---|
VARIANT_BOOL | VT_BOOL | VARIANT_FALSE |
가로 타일 수를 설정합니다.
데이터 형식 | VARTYPE | 범위 | 기본값 |
---|---|---|---|
Ushort | VT_UI2 | 0–4095 | (이미지 높이 – 1) >> 8 |
값은 세로 세로의 수입니다. 즉, 세로 타일 수 - 1입니다.
이러한 형식에 대한 자세한 내용은 네이티브 픽셀 형식을 참조하세요.
-
정수 RGB 형식
- GUID_WICPixelFormat24bppRGB
- GUID_WICPixelFormat24bppBGR
- GUID_WICPixelFormat32bppBGR
- GUID_WICPixelFormat48bppRGB
- GUID_WICPixelFormat32bppBGRA
- GUID_WICPixelFormat64bppRGBA
- GUID_WICPixelFormat32bppPBGRA
- GUID_WICPixelFormat64bppPRGBA
-
고정 소수점 RGB 형식
- GUID_WICPixelFormat48bppRGBFixedPoint
- GUID_WICPixelFormat64bppRGBFixedPoint
- GUID_WICPixelFormat96bppRGBFixedPoint
- GUID_WICPixelFormat128bppRGBFixedPoint
- GUID_WICPixelFormat128bppRGBAFixedPoint
-
부동 소수점 RGB 형식
- GUID_WICPixelFormat48bppRGBHalf
- GUID_WICPixelFormat64bppRGBHalf
- GUID_WICPixelFormat128bppRGBFloat
- GUID_WICPixelFormat64bppRGBAFixedPoint
- GUID_WICPixelFormat64bppRGBAHalf
- GUID_WICPixelFormat128bppRGBAFloat
- GUID_WICPixelFormat128bppPRGBAFloat
-
회색조 형식
- GUID_WICPixelFormat8bppGray
- GUID_WICPixelFormat16bppGray
- GUID_WICPixelFormat16bppGrayFixedPoint
- GUID_WICPixelFormat16bppGrayHalf
- GUID_WICPixelFormat32bppGrayFixedPoint
- GUID_WICPixelFormat32bppGrayFloat
-
압축된 형식
- GUID_WICPixelFormat16bppBGR555
- GUID_WICPixelFormat16bppBGR565
- GUID_WICPixelFormat32bppBGR101010
- GUID_WICPixelFormat32bppRGBE
-
CMYK 형식
- GUID_WICPixelFormat40bppCMYKAlpha
- GUID_WICPixelFormat64bppCMYK
- GUID_WICPixelFormat80bppCMYKAlpha
-
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