mirror of
https://github.com/GoogleChromeLabs/squoosh.git
synced 2025-11-15 10:09:45 +00:00
# Conflicts: # codecs/cpp.Dockerfile # codecs/imagequant/example.html # codecs/webp/dec/webp_dec.d.ts # codecs/webp/dec/webp_dec.js # codecs/webp/dec/webp_dec.wasm # codecs/webp/enc/webp_enc.d.ts # codecs/webp/enc/webp_enc.js # codecs/webp/enc/webp_enc.wasm # package-lock.json # package.json # src/codecs/tiny.webp # src_old/codecs/encoders.ts # src_old/codecs/processor-worker/tiny.avif # src_old/codecs/processor-worker/tiny.webp # src_old/codecs/tiny.webp # src_old/components/compress/index.tsx # src_old/lib/util.ts # src_old/sw/util.ts
76 lines
1.7 KiB
TypeScript
76 lines
1.7 KiB
TypeScript
export enum WebPImageHint {
|
|
WEBP_HINT_DEFAULT, // default preset.
|
|
WEBP_HINT_PICTURE, // digital picture, like portrait, inner shot
|
|
WEBP_HINT_PHOTO, // outdoor photograph, with natural lighting
|
|
WEBP_HINT_GRAPH, // Discrete tone image (graph, map-tile etc).
|
|
}
|
|
|
|
export interface EncodeOptions {
|
|
quality: number;
|
|
target_size: number;
|
|
target_PSNR: number;
|
|
method: number;
|
|
sns_strength: number;
|
|
filter_strength: number;
|
|
filter_sharpness: number;
|
|
filter_type: number;
|
|
partitions: number;
|
|
segments: number;
|
|
pass: number;
|
|
show_compressed: number;
|
|
preprocessing: number;
|
|
autofilter: number;
|
|
partition_limit: number;
|
|
alpha_compression: number;
|
|
alpha_filtering: number;
|
|
alpha_quality: number;
|
|
lossless: number;
|
|
exact: number;
|
|
image_hint: number;
|
|
emulate_jpeg_size: number;
|
|
thread_level: number;
|
|
low_memory: number;
|
|
near_lossless: number;
|
|
use_delta_palette: number;
|
|
use_sharp_yuv: number;
|
|
}
|
|
export interface EncoderState {
|
|
type: typeof type;
|
|
options: EncodeOptions;
|
|
}
|
|
|
|
export const type = 'webp';
|
|
export const label = 'WebP';
|
|
export const mimeType = 'image/webp';
|
|
export const extension = 'webp';
|
|
// These come from struct WebPConfig in encode.h.
|
|
export const defaultOptions: EncodeOptions = {
|
|
quality: 75,
|
|
target_size: 0,
|
|
target_PSNR: 0,
|
|
method: 4,
|
|
sns_strength: 50,
|
|
filter_strength: 60,
|
|
filter_sharpness: 0,
|
|
filter_type: 1,
|
|
partitions: 0,
|
|
segments: 4,
|
|
pass: 1,
|
|
show_compressed: 0,
|
|
preprocessing: 0,
|
|
autofilter: 0,
|
|
partition_limit: 0,
|
|
alpha_compression: 1,
|
|
alpha_filtering: 1,
|
|
alpha_quality: 100,
|
|
lossless: 0,
|
|
exact: 0,
|
|
image_hint: 0,
|
|
emulate_jpeg_size: 0,
|
|
thread_level: 0,
|
|
low_memory: 0,
|
|
near_lossless: 100,
|
|
use_delta_palette: 0,
|
|
use_sharp_yuv: 0,
|
|
};
|