IWICPlanarBitmapFrameEncode::WritePixels 메서드(wincodec.h)
소스 평면의 줄을 인코딩된 형식으로 씁니다.
구문
HRESULT WritePixels(
UINT lineCount,
[in] WICBitmapPlane *pPlanes,
UINT cPlanes
);
매개 변수
lineCount
형식: UINT
인코딩할 줄 수입니다. WIC Jpeg 특정 줄 수 제한은 주의 섹션을 참조하세요.
[in] pPlanes
형식: WICBitmapPlane*
인코딩된 각 구성 요소 평면의 원본 버퍼를 지정합니다.
cPlanes
형식: UINT
pPlanes 매개 변수로 지정된 구성 요소 평면의 수입니다.
반환 값
형식: HRESULT
평면 및 원본 사각형이 요구 사항을 충족하지 않으면 이 메서드는 WINCODEC_ERR_IMAGESIZEOUTOFRANGE 실패합니다.
IWICBitmapSource 형식이 인코더 요구 사항을 충족하지 않으면 WINCODEC_ERR_UNSUPPORTEDPIXELFORMAT 이 메서드가 실패합니다.
설명
연속 적인 WritePixels 호출은 순차적으로 출력 이미지에 스캔라인을 추가하는 것으로 간주됩니다. IWICBitmapFrameEncode::Initialize, IWICBitmapFrameEncode::SetSize 및 IWICBitmapFrameEncode::SetPixelFormat 을 호출해야 이 메서드가 실패합니다.
IWICBitmapFrameEncode::SetPixelFormat을 통해 설정된 인터리브된 픽셀 형식과 코덱별 인코딩 매개 변수는 지원되는 평면 형식을 결정합니다.
WIC JPEG 인코더: QueryInterface를 사용하여 WIC JPEG IWICBitmapFrameEncode 구현에서 이 인터페이스를 가져올 수 있습니다. 이 메서드를 사용하여 WIC JPEG 인코더로 Y'CbCr 데이터를 인코딩하는 경우 프레임을 만드는 동안 인코더 옵션을 사용하여 chroma 하위 샘플링을 구성할 수 있습니다. 자세한 내용은 인코딩 개요 및 IWICBitmapEncoder::CreateNewFrame 을 참조하세요.
구성된 크로마 하위 샘플링에 따라 lineCount 매개 변수에는 다음과 같은 제한 사항이 있습니다.
Chroma 하위 샘플링 | 줄 수 제한 | 크로마 평면 너비 | 크로마 평면 높이 |
---|---|---|---|
4:2:0 | 호출이 이미지의 마지막 스캔라인을 커버하지 않는 한 2의 배수 | lumaWidth /2 가장 가까운 정수로 반올림됩니다. | lumaHeight / 2 가장 가까운 정수로 반올림되었습니다. |
4:2:2 | 모두 | lumaWidth /2 가장 가까운 정수로 반올림됩니다. | 모두 |
4:4:4 | 모두 | 모두 | 모두 |
4:4:0 | 호출이 이미지의 마지막 스캔라인을 커버하지 않는 한 2의 배수 | 모두 | llumaHeight / 2 가장 가까운 정수로 반올림됩니다. |
전체 스캔라인 너비를 인코딩해야 하며 비트맵 원본의 너비는 평면 구성과 일치해야 합니다.
또한 픽셀 형식이 IWICBitmapFrameEncode::SetPixelFormat을 통해 설정된 경우 GUID_WICPixelFormat24bppBGR 합니다.
이 메서드에 전달된 비트맵 소스의 지원되는 픽셀 형식은 다음과 같습니다.
평면 수 | 평면 1 | 평면 2 | 평면 3 |
---|---|---|---|
3 | GUID_WICPixelFormat8bppY | GUID_WICPixelFormat8bppCb | GUID_WICPixelFormat8bppCr |
2 | GUID_WICPixelFormat8bppY | GUID_WICPixelFormat16bppCbCr | 해당 없음 |
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows 8.1 [데스크톱 앱 | UWP 앱] |
지원되는 최소 서버 | Windows Server 2012 R2 [데스크톱 앱 | UWP 앱] |
대상 플랫폼 | Windows |
헤더 | wincodec.h |
라이브러리 | Windowscodecs.lib |
DLL | Windowscodecs.dll |