Método IWICPlanarBitmapFrameEncode::WriteSource (wincodec.h)
Escribe líneas de los planos de origen en el formato codificado.
Sintaxis
HRESULT WriteSource(
[in] IWICBitmapSource **ppPlanes,
UINT cPlanes,
WICRect *prcSource
);
Parámetros
[in] ppPlanes
Tipo: IWICBitmapSource**
Especifica una matriz de IWICBitmapSource que representa planos de imagen.
cPlanes
Tipo: UINT
Número de planos de componente especificados por el parámetro planes.
prcSource
Tipo: WICRect*
Rectángulo de origen de píxeles que se van a codificar desde los planos IWICBitmapSource . Null indica todo el origen. El ancho de la corrección de origen debe coincidir con el ancho establecido mediante SetSize. Las llamadas WriteSource repetidas se pueden realizar siempre y cuando el alto total acumulado de rect de origen sea el mismo que establecido a través de SetSize.
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 WriteSource 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 | X Coordinate | Y Coordinate | Ancho cromático | Alto cromático |
---|---|---|---|---|
4:2:0 | Múltiplo de 2 | Múltiplo de 2 | lumaWidth / 2 Redondeado hasta el entero más cercano. | lumaHeight / 2 Redondeado hasta el entero más cercano. |
4:2:2 | Múltiplo de 2 | Any | lumaWidth / 2 Redondeado hasta el entero más cercano. | Any |
4:4:4 | Any | Any | Any | Any |
4:4:0 | Any | Múltiplo de 2 | lumaWidth | 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
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