IWICPlanarBitmapFrameEncode::WriteSource 메서드(wincodec.h)
원본 평면에서 인코딩된 형식으로 줄을 씁니다.
구문
HRESULT WriteSource(
[in] IWICBitmapSource **ppPlanes,
UINT cPlanes,
WICRect *prcSource
);
매개 변수
[in] ppPlanes
형식: IWICBitmapSource**
이미지 평면을 나타내는 IWICBitmapSource 의 배열을 지정합니다.
cPlanes
형식: UINT
평면 매개 변수로 지정된 구성 요소 평면의 수입니다.
prcSource
형식: WICRect*
IWICBitmapSource 평면에서 인코딩할 픽셀의 원본 사각형입니다. Null은 전체 원본을 나타냅니다. 원본 사각형 너비는 SetSize를 통해 설정된 너비와 일치해야 합니다. 누적된 총 원본 사각형 높이가 SetSize를 통해 설정된 높이와 동일하면 반복적인 WriteSource 호출을 수행할 수 있습니다.
반환 값
형식: HRESULT
평면 및 원본 사각형이 요구 사항을 충족하지 않으면 이 메서드는 WINCODEC_ERR_IMAGESIZEOUTOFRANGE 실패합니다.
IWICBitmapSource 형식이 인코더 요구 사항을 충족하지 않으면 이 메서드는 WINCODEC_ERR_UNSUPPORTEDPIXELFORMAT 실패합니다.
설명
연속 적인 WriteSource 호출은 순차적으로 출력 이미지에 검사선을 추가한다고 가정합니다. IWICBitmapFrameEncode::Initialize, IWICBitmapFrameEncode::SetSize 및 IWICBitmapFrameEncode::SetPixelFormat 을 호출해야 이 메서드가 실패합니다.
IWICBitmapFrameEncode::SetPixelFormat을 통해 설정된 인터리브 픽셀 형식과 코덱 특정 인코딩 매개 변수는 지원되는 평면 형식을 결정합니다.
WIC JPEG 인코더: QueryInterface를 사용하여 WIC JPEG IWICBitmapFrameEncode 구현에서 이 인터페이스를 가져올 수 있습니다. 이 메서드를 사용하여 WIC JPEG 인코더로 Y'CbCr 데이터를 인코딩하는 경우 프레임을 만드는 동안 인코더 옵션으로 chroma 하위 샘플링을 구성할 수 있습니다. 자세한 내용은 인코딩 개요 및 IWICBitmapEncoder::CreateNewFrame 을 참조하세요.
구성된 chroma 하위 샘플링에 따라 lineCount 매개 변수에는 다음과 같은 제한이 있습니다.
크로마 하위 샘플링 | X Coordinate | Y Coordinate | 크로마 너비 | 크로마 높이 |
---|---|---|---|---|
4:2:0 | 2의 배수 | 2의 배수 | lumaWidth /2 가장 가까운 정수로 반올림되었습니다. | lumaHeight / 2 가장 가까운 정수로 반올림됩니다. |
4:2:2 | 2의 배수 | 모두 | lumaWidth /2 가장 가까운 정수로 반올림되었습니다. | 모두 |
4:4:4 | 모두 | 모두 | 모두 | 모두 |
4:4:0 | 모두 | 2의 배수 | lumaWidth | 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 |