Browse Source

Update SpectralConverter{TPixel}.cs

pull/2266/head
James Jackson-South 4 years ago
parent
commit
af3eb7dd1f
  1. 7
      src/ImageSharp/Formats/Jpeg/Components/Decoder/SpectralConverter{TPixel}.cs

7
src/ImageSharp/Formats/Jpeg/Components/Decoder/SpectralConverter{TPixel}.cs

@ -21,7 +21,6 @@ namespace SixLabors.ImageSharp.Formats.Jpeg.Components.Decoder;
internal class SpectralConverter<TPixel> : SpectralConverter, IDisposable
where TPixel : unmanaged, IPixel<TPixel>
{
private JpegFrame frame;
private IRawJpegData jpegData;
@ -133,7 +132,7 @@ internal class SpectralConverter<TPixel> : SpectralConverter, IDisposable
{
int y = yy - this.pixelRowCounter;
var values = new JpegColorConverterBase.ComponentValues(this.componentProcessors, y);
JpegColorConverterBase.ComponentValues values = new(this.componentProcessors, y);
this.colorConverter.ConvertToRgbInplace(values);
values = values.Slice(0, width); // slice away Jpeg padding
@ -202,7 +201,7 @@ internal class SpectralConverter<TPixel> : SpectralConverter, IDisposable
int bufferWidth = majorBlockWidth * blockPixelSize;
int batchSize = converter.ElementsPerBatch;
int batchRemainder = bufferWidth & (batchSize - 1);
var postProcessorBufferSize = new Size(bufferWidth + (batchSize - batchRemainder), this.pixelRowsPerStep);
Size postProcessorBufferSize = new(bufferWidth + (batchSize - batchRemainder), this.pixelRowsPerStep);
this.componentProcessors = this.CreateComponentProcessors(this.frame, this.jpegData, blockPixelSize, postProcessorBufferSize);
// single 'stride' rgba32 buffer for conversion between spectral and TPixel
@ -225,7 +224,7 @@ internal class SpectralConverter<TPixel> : SpectralConverter, IDisposable
protected ComponentProcessor[] CreateComponentProcessors(JpegFrame frame, IRawJpegData jpegData, int blockPixelSize, Size processorBufferSize)
{
MemoryAllocator allocator = this.Configuration.MemoryAllocator;
var componentProcessors = new ComponentProcessor[frame.Components.Length];
ComponentProcessor[] componentProcessors = new ComponentProcessor[frame.Components.Length];
for (int i = 0; i < componentProcessors.Length; i++)
{
componentProcessors[i] = blockPixelSize switch

Loading…
Cancel
Save