Compartir a través de


Método IWICPlanarBitmapFrameEncode::WritePixels (wincodec.h)

Escribe líneas de los planos de origen en el formato codificado.

Sintaxis

HRESULT WritePixels(
       UINT           lineCount,
  [in] WICBitmapPlane *pPlanes,
       UINT           cPlanes
);

Parámetros

lineCount

Tipo: UINT

Número de líneas que se van a codificar. Consulte la sección Comentarios para las restricciones de recuento de líneas específicas de WIC Jpeg.

[in] pPlanes

Tipo: WICBitmapPlane*

Especifica los búferes de origen para cada plano de componente codificado.

cPlanes

Tipo: UINT

Número de planos de componente especificados por el parámetro pPlanes .

Valor devuelto

Tipo: HRESULT

Si los planos y el rectángulo de origen no cumplen los requisitos, este método produce un error WINCODEC_ERR_IMAGESIZEOUTOFRANGE.

Si el formato IWICBitmapSource no cumple los requisitos del codificador, este método produce un error WINCODEC_ERR_UNSUPPORTEDPIXELFORMAT.

Comentarios

Se supone que las llamadas de WritePixels sucesivas agregan secuencialmente líneas de examen a la imagen de salida. IWICBitmapFrameEncode::Initialize, IWICBitmapFrameEncode::SetSize e IWICBitmapFrameEncode::SetPixelFormat deben llamarse antes de que se produzca un error en este método.

El formato de píxel intercalado establecido a través de IWICBitmapFrameEncode::SetPixelFormat y los parámetros de codificación específicos del códec determinan los formatos planar admitidos.

Codificador JPEG WIC: QueryInterface se puede usar para obtener esta interfaz de la implementación IWICBitmapFrameEncode de WIC JPEG. Cuando se usa este método para codificar datos Y'CbCr con el codificador WIC JPEG, el submuestreo cromático se puede configurar con opciones de codificador durante la creación de fotogramas. Consulte La introducción a la codificación e IWICBitmapEncoder::CreateNewFrame para obtener más detalles.

Según el submuestreo cromático configurado, el parámetro lineCount tiene las siguientes restricciones:

Submuestreo cromático Restricción de recuento de líneas Ancho del plano cromático Alto del plano cromático
4:2:0 Múltiplo de 2, a menos que la llamada cubra la última línea de análisis de la imagen lumaWidth / 2 Redondeado hasta el entero más cercano. lumaHeight / 2 Redondeado hasta el entero más cercano.
4:2:2 Any lumaWidth / 2 Redondeado hasta el entero más cercano. Any
4:4:4 Any Any Any
4:4:0 Múltiplo de 2, a menos que la llamada cubra la última línea de análisis de la imagen Any llumaHeight / 2 Redondeado hasta el entero más cercano.
 

El ancho completo de la línea de examen debe estar codificado y el ancho de los orígenes de mapa de bits debe coincidir con su configuración planar.

Además, si se establece un formato de píxel a través de IWICBitmapFrameEncode::SetPixelFormat, debe ser GUID_WICPixelFormat24bppBGR.

Los formatos de píxeles admitidos de los orígenes de mapa de bits pasados a este método son los siguientes:

Recuento de planos Plano 1 Plano 2 Plano 3
3 GUID_WICPixelFormat8bppY GUID_WICPixelFormat8bppCb GUID_WICPixelFormat8bppCr
2 GUID_WICPixelFormat8bppY GUID_WICPixelFormat16bppCbCr N/D

Requisitos

Requisito Value
Cliente mínimo compatible Windows 8.1 [aplicaciones de escritorio | Aplicaciones para UWP]
Servidor mínimo compatible Windows Server 2012 R2 [aplicaciones de escritorio | Aplicaciones para UWP]
Plataforma de destino Windows
Encabezado wincodec.h
Library Windowscodecs.lib
Archivo DLL Windowscodecs.dll

Consulte también

Introducción a la codificación

IWICBitmapEncoder::CreateNewFrame

IWICPlanarBitmapFrameEncode