Jpegli: A New JPEG Coding Library

This page summarizes the projects mentioned and recommended in the original post on news.ycombinator.com

InfluxDB - Purpose built for real-time analytics at any scale.
InfluxDB Platform is powered by columnar analytics, optimized for cost-efficient storage, and built with open data standards.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
  • squoosh

    Make images smaller using best-in-class codecs, right in the browser.

  • InfluxDB

    Purpose built for real-time analytics at any scale. InfluxDB Platform is powered by columnar analytics, optimized for cost-efficient storage, and built with open data standards.

    InfluxDB logo
  • gipfeli

    JPEGLI = A small JPEG

    The suffix -li is used in Swiss German dialects. It forms a diminutive of the root word, by adding -li to the end of the root word to convey the smallness of the object and to convey a sense of intimacy or endearment.

    This obviously comes out of Google Zürich.

    Other notable Google projects using Swiss German:

    https://github.com/google/gipfeli high-speed compression

    Gipfeli = Croissant

    https://github.com/google/guetzli perceptual JPEG encoder

    Guetzli = Cookie

    https://github.com/weggli-rs/weggli semantic search tool

    Weggli = Bread roll

    https://github.com/google/brotli lossless compression

    Brötli = Small bread

  • guetzli

    Perceptual JPEG encoder

    JPEGLI = A small JPEG

    The suffix -li is used in Swiss German dialects. It forms a diminutive of the root word, by adding -li to the end of the root word to convey the smallness of the object and to convey a sense of intimacy or endearment.

    This obviously comes out of Google Zürich.

    Other notable Google projects using Swiss German:

    https://github.com/google/gipfeli high-speed compression

    Gipfeli = Croissant

    https://github.com/google/guetzli perceptual JPEG encoder

    Guetzli = Cookie

    https://github.com/weggli-rs/weggli semantic search tool

    Weggli = Bread roll

    https://github.com/google/brotli lossless compression

    Brötli = Small bread

  • weggli

    weggli is a fast and robust semantic search tool for C and C++ codebases. It is designed to help security researchers identify interesting functionality in large codebases.

    JPEGLI = A small JPEG

    The suffix -li is used in Swiss German dialects. It forms a diminutive of the root word, by adding -li to the end of the root word to convey the smallness of the object and to convey a sense of intimacy or endearment.

    This obviously comes out of Google Zürich.

    Other notable Google projects using Swiss German:

    https://github.com/google/gipfeli high-speed compression

    Gipfeli = Croissant

    https://github.com/google/guetzli perceptual JPEG encoder

    Guetzli = Cookie

    https://github.com/weggli-rs/weggli semantic search tool

    Weggli = Bread roll

    https://github.com/google/brotli lossless compression

    Brötli = Small bread

  • brotli

    Brotli compression format

    JPEGLI = A small JPEG

    The suffix -li is used in Swiss German dialects. It forms a diminutive of the root word, by adding -li to the end of the root word to convey the smallness of the object and to convey a sense of intimacy or endearment.

    This obviously comes out of Google Zürich.

    Other notable Google projects using Swiss German:

    https://github.com/google/gipfeli high-speed compression

    Gipfeli = Croissant

    https://github.com/google/guetzli perceptual JPEG encoder

    Guetzli = Cookie

    https://github.com/weggli-rs/weggli semantic search tool

    Weggli = Bread roll

    https://github.com/google/brotli lossless compression

    Brötli = Small bread

  • You're right that Wuffs' memory-safety isn't relevant for this attack.

    Still, Wuffs doesn't use autotools, and if you're pulling the library from the https://github.com/google/wuffs-mirror-release-c repository then that repo doesn't even contain any binary-data test files.

  • libjpeg-turbo

    Main libjpeg-turbo repository

    > all decoders will render the same pixels

    Not true. Even just within libjpeg, there are three different IDCT implementations (jidctflt.c, jidctfst.c, jidctint.c) and they produce different pixels (it's a classic speed vs quality trade-off). It's spec-compliant to choose any of those.

    A few years ago, in libjpeg-turbo, they changed the smoothing kernel used for decoding (incomplete) progressive JPEGs, from a 3x3 window to 5x5. This meant the decoder produced different pixels, but again, that's still valid:

    https://github.com/libjpeg-turbo/libjpeg-turbo/commit/6d91e9...

  • SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

    SaaSHub logo
  • google-research

    Google Research

    The change was literally just made: https://github.com/google-research/google-research/commit/4a...

    It appears this was in response to Hacker News comments.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts

  • Question about implementing RL algorithms

    1 project | /r/reinforcementlearning | 19 Nov 2022
  • [P] An elegant and strong PyTorch Trainer

    1 project | /r/MachineLearning | 1 Jul 2022
  • Optical music recognition system with deep learning

    1 project | /r/u_waynerad | 8 Feb 2022
  • Oemer – End-to-end Optical Music Recognition based on deep learning

    1 project | news.ycombinator.com | 7 Feb 2022
  • Transcribe music sheet photo into MusicXML (OMR)

    2 projects | /r/Python | 17 Dec 2021

Did you konow that TypeScript is
the 2nd most popular programming language
based on number of metions?