bgr_to_sharp_yuv420

Function bgr_to_sharp_yuv420 

Source
pub fn bgr_to_sharp_yuv420(
    planar_image: &mut YuvPlanarImageMut<'_, u8>,
    bgr: &[u8],
    bgr_stride: u32,
    range: YuvRange,
    matrix: YuvStandardMatrix,
    gamma_transfer: SharpYuvGammaTransfer,
) -> Result<(), YuvError>
Expand description

Convert BGR image data to YUV 420 planar format using bi-linear interpolation and gamma correction ( sharp YUV algorithm ).

This function performs BGR to YUV conversion using bi-linear interpolation and gamma correction and stores the result in YUV420 planar format using bi-linear interpolation and gamma correction, with separate planes for Y (luminance), U (chrominance), and V (chrominance) components.

§Arguments

  • planar_image - Target planar image.
  • bgr - The input BGR image data slice.
  • bgr_stride - The stride (components per row) for the BGR image data.
  • range - The YUV range (limited or full).
  • matrix - The YUV standard matrix (BT.601 or BT.709 or BT.2020 or other).

§Panics

This function panics if the lengths of the planes or the input RGB data are not valid based on the specified width, height, and strides, or if invalid YUV range or matrix is provided.