Files
squoosh/codecs/mozjpeg_enc
Ingvar Stepanyan d1cff7d84e Consolidate C++ builds
Use a shared base image with fixed Emscripten version, autotools and optimisation flags for all C++ codecs.

Additionally, move build commands for codecs themselves to Makefile - they're already platform-specific, and Make allows for better caching and parallelisation that custom ad-hoc scripts.

This is essentially same as #777 but for C++.
2020-07-28 18:05:09 +01:00
..
2020-07-28 16:35:00 +01:00
2020-07-28 18:05:09 +01:00
2020-07-28 16:35:00 +01:00
2020-07-28 18:05:09 +01:00
2020-07-28 18:05:09 +01:00
2020-07-28 18:05:09 +01:00

MozJPEG encoder

Dependencies

  • Docker

Example

See example.html

API

int version()

Returns the version of MozJPEG as a number. va.b.c is encoded as 0x0a0b0c

Uint8Array encode(std::string image_in, int image_width, int image_height, MozJpegOptions opts)

Encodes the given image with given dimension to JPEG. Options looks like this:

struct MozJpegOptions {
  int quality;
  bool baseline;
  bool arithmetic;
  bool progressive;
  bool optimize_coding;
  int smoothing;
  int color_space;
  int quant_table;
  bool trellis_multipass;
  bool trellis_opt_zero;
  bool trellis_opt_table;
  int trellis_loops;
  bool auto_subsample;
  int chroma_subsample;
  bool separate_chroma_quality;
  int chroma_quality;
};