Start integrating quantizer in the main data flow

This commit is contained in:
Surma
2018-07-30 16:51:40 +01:00
parent 5fbf6b297f
commit 2165383da4
5 changed files with 85 additions and 346 deletions

View File

@@ -1,7 +1,18 @@
import QuantizerWorker from './Quantizer.worker';
export const name = 'Image Quanitzer';
export async function quantize(data: ImageData): Promise<ImageData> {
export async function quantize(data: ImageData, opts: QuantizeOptions): Promise<ImageData> {
const quantizer = await new QuantizerWorker();
return quantizer.quantize(data);
return quantizer.quantize(data, opts);
}
export interface QuantizeOptions {
maxNumColors: number;
dither: number;
}
// These come from struct WebPConfig in encode.h.
export const defaultOptions: QuantizeOptions = {
maxNumColors: 256,
dither: 1.0,
};