C# Class FluxJpeg.Core.DCT

Implements the Discrete Cosine Transform with dynamic CIL
Show file Open project: prepare/HTML-Renderer Class Usage Examples

Public Properties

Property Type Description
DivisorsChrominance double[]
DivisorsLuminance double[]
divisors double[][]
quantum int[][]

Public Methods

Method Description
DCT ( int quality ) : System
SetValueClipped ( byte arr, int i, int j, float val ) : void

Private Methods

Method Description
DCT ( ) : System
EmitIDCT ( ) : IDCTFunc

Generates a pure-IL nonbranching stream of instructions that perform the inverse DCT. Relies on helper function SetValueClipped.

FastFDCT ( float input ) : ].float[
FastIDCT ( float input ) : ].byte[
Initialize ( int quality ) : void
QuantizeBlock ( float inputData, int code ) : int[]
buildC ( ) : ].float[

Precomputes cosine terms in A.3.3 of http://www.w3.org/Graphics/JPEG/itu-t81.pdf Closely follows the term precomputation in the Java Advanced Imaging library.

buildCT ( ) : ].float[

Method Details

DCT() public method

public DCT ( int quality ) : System
quality int
return System

SetValueClipped() public static method

public static SetValueClipped ( byte arr, int i, int j, float val ) : void
arr byte
i int
j int
val float
return void

Property Details

DivisorsChrominance public property

public double[] DivisorsChrominance
return double[]

DivisorsLuminance public property

public double[] DivisorsLuminance
return double[]

divisors public property

public double[][] divisors
return double[][]

quantum public property

public int[][] quantum
return int[][]