/// <summary> /// Converts a 8x8 image area inside 'pixels' at position (x, y) to Rgb24. /// </summary> public void Convert(int x, int y, ref RowOctet <TPixel> currentRows) { YCbCrForwardConverter <TPixel> .LoadAndStretchEdges(currentRows, this.pixelSpan, new Point(x, y), SampleSize, this.samplingAreaSize); PixelOperations <TPixel> .Instance.ToRgb24(this.config, this.pixelSpan, this.rgbSpan); ref Block8x8F redBlock = ref this.R;
public void Convert(int x, int y, ref RowOctet <TPixel> currentRows, int idx) { YCbCrForwardConverter <TPixel> .LoadAndStretchEdges(currentRows, this.pixelSpan, new Point(x, y), SampleSize, this.samplingAreaSize); PixelOperations <TPixel> .Instance.ToRgb24(this.config, this.pixelSpan, this.rgbSpan); if (RgbToYCbCrConverterVectorized.IsSupported) { RgbToYCbCrConverterVectorized.Convert420(this.rgbSpan, ref this.YLeft, ref this.YRight, ref this.Cb, ref this.Cr, idx); } else { this.colorTables.Convert420(this.rgbSpan, ref this.YLeft, ref this.YRight, ref this.Cb, ref this.Cr, idx); } }