다음을 통해 공유


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::SetSizeIWICBitmapFrameEncode::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

추가 정보

인코딩 개요

IWICBitmapEncoder::CreateNewFrame

IWICPlanarBitmapFrameEncode