From 4f6e5fb151c2f222601d6161e1d7d3c5e132f1cb Mon Sep 17 00:00:00 2001 From: uazo Date: Wed, 25 Oct 2023 07:16:29 +0000 Subject: [PATCH] AUTOMATED - git apply results --- build/patches/00Add-support-to-jxl.patch | 14 +- build/patches/00libjxl-0-8-2.patch | 210 ++++++++++------------- 2 files changed, 97 insertions(+), 127 deletions(-) diff --git a/build/patches/00Add-support-to-jxl.patch b/build/patches/00Add-support-to-jxl.patch index 43fc95e3..c8c4c4df 100644 --- a/build/patches/00Add-support-to-jxl.patch +++ b/build/patches/00Add-support-to-jxl.patch @@ -291,9 +291,9 @@ new file mode 100644 + #include "net/test/embedded_test_server/http_request.h" + #include "third_party/blink/public/common/buildflags.h" ++#include "third_party/blink/public/common/features.h" -+ ++ + using ChromeAcceptHeaderTest = InProcessBrowserTest; -+ ++ +-#if BUILDFLAG(ENABLE_AV1_DECODER) ++#if BUILDFLAG(ENABLE_AV1_DECODER) || BUILDFLAG(ENABLE_JXL_DECODER) + namespace { @@ -312,7 +312,7 @@ new file mode 100644 + } // namespace +-#endif // BUILDFLAG(ENABLE_AV1_DECODER) ++#endif // BUILDFLAG(ENABLE_AV1_DECODER) || BUILDFLAG(ENABLE_JXL_DECODER) -+ ++ + IN_PROC_BROWSER_TEST_F(ChromeAcceptHeaderTest, Check) { + net::EmbeddedTestServer server(net::EmbeddedTestServer::TYPE_HTTP); +@@ -55,7 +63,7 @@ @@ -325,7 +325,7 @@ new file mode 100644 + "text/html,application/xhtml+xml,application/xml;q=0.9," + + GetOptionalImageCodecs() + +@@ -66,7 +74,7 @@ -+ ++ + std::string expected_favicon_accept_header = + "image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8"; +-#if BUILDFLAG(ENABLE_AV1_DECODER) @@ -353,7 +353,7 @@ new file mode 100644 +@@ -71,13 +72,20 @@ + return it->second; + } -+ ++ +-#if BUILDFLAG(ENABLE_AV1_DECODER) ++#if BUILDFLAG(ENABLE_AV1_DECODER) || BUILDFLAG(ENABLE_JXL_DECODER) + std::string GetOptionalImageCodecs() const { @@ -370,7 +370,7 @@ new file mode 100644 + } +-#endif // BUILDFLAG(ENABLE_AV1_DECODER) ++#endif // BUILDFLAG(ENABLE_AV1_DECODER) || BUILDFLAG(ENABLE_JXL_DECODER) -+ ++ + private: + void Monitor(const net::test_server::HttpRequest& request) { +@@ -113,7 +121,7 @@ @@ -2424,7 +2424,7 @@ diff --git a/third_party/blink/web_tests/TestExpectations b/third_party/blink/we diff --git a/third_party/blink/web_tests/VirtualTestSuites b/third_party/blink/web_tests/VirtualTestSuites --- a/third_party/blink/web_tests/VirtualTestSuites +++ b/third_party/blink/web_tests/VirtualTestSuites -@@ -449,6 +449,15 @@ +@@ -450,6 +450,15 @@ "--disable-threaded-compositing", "--disable-threaded-animation"], "expires": "Jul 1, 2023" }, diff --git a/build/patches/00libjxl-0-8-2.patch b/build/patches/00libjxl-0-8-2.patch index cd00349d..545ad09e 100644 --- a/build/patches/00libjxl-0-8-2.patch +++ b/build/patches/00libjxl-0-8-2.patch @@ -12,7 +12,7 @@ see https://github.com/libjxl/libjxl .../src/.github/workflows/build_test.yml | 442 ++ .../.github/workflows/build_test_cross.yml | 183 + .../src/.github/workflows/conformance.yml | 186 + - .../libjxl/src/.github/workflows/debug_ci.yml | 138 + + .../libjxl/src/.github/workflows/debug_ci.yml | 135 + .../libjxl/src/.github/workflows/fuzz.yml | 56 + .../src/.github/workflows/pull_request.yml | 41 + .../libjxl/src/.github/workflows/release.yaml | 384 ++ @@ -40,7 +40,7 @@ see https://github.com/libjxl/libjxl third_party/libjxl/src/debian/changelog | 107 + third_party/libjxl/src/debian/compat | 1 + third_party/libjxl/src/debian/control | 88 + - third_party/libjxl/src/debian/copyright | 194 + + third_party/libjxl/src/debian/copyright | 193 + third_party/libjxl/src/debian/jxl.install | 3 + .../libjxl/src/debian/libjxl-dev.install | 4 + .../src/debian/libjxl-gdk-pixbuf.install | 3 + @@ -50,7 +50,7 @@ see https://github.com/libjxl/libjxl third_party/libjxl/src/debian/source/format | 1 + third_party/libjxl/src/deps.sh | 84 + third_party/libjxl/src/doc/api.txt | 29 + - third_party/libjxl/src/doc/benchmarking.md | 82 + + third_party/libjxl/src/doc/benchmarking.md | 81 + .../libjxl/src/doc/building_and_testing.md | 171 + third_party/libjxl/src/doc/building_wasm.md | 83 + .../libjxl/src/doc/color_management.md | 68 + @@ -74,28 +74,28 @@ see https://github.com/libjxl/libjxl .../libjxl/src/doc/sphinx/api_encoder.rst | 6 + .../libjxl/src/doc/sphinx/api_threads.rst | 6 + third_party/libjxl/src/doc/sphinx/conf.py | 110 + - third_party/libjxl/src/doc/sphinx/index.rst | 18 + + third_party/libjxl/src/doc/sphinx/index.rst | 17 + .../libjxl/src/doc/sphinx/requirements.txt | 3 + - third_party/libjxl/src/doc/tables/adobe.md | 6 + + third_party/libjxl/src/doc/tables/adobe.md | 5 + .../libjxl/src/doc/tables/all_tables.pdf | Bin 0 -> 164368 bytes .../libjxl/src/doc/tables/all_tables.sh | 11 + - third_party/libjxl/src/doc/tables/app0.md | 6 + - .../libjxl/src/doc/tables/brn_proto.md | 23 + + third_party/libjxl/src/doc/tables/app0.md | 5 + + .../libjxl/src/doc/tables/brn_proto.md | 22 + .../libjxl/src/doc/tables/context_modes.md | 13 + - third_party/libjxl/src/doc/tables/dct_gen.md | 241 + - third_party/libjxl/src/doc/tables/ducky.md | 6 + - .../libjxl/src/doc/tables/freq_context.md | 54 + - third_party/libjxl/src/doc/tables/icc.md | 6 + + third_party/libjxl/src/doc/tables/dct_gen.md | 240 + + third_party/libjxl/src/doc/tables/ducky.md | 5 + + .../libjxl/src/doc/tables/freq_context.md | 53 + + third_party/libjxl/src/doc/tables/icc.md | 5 + .../libjxl/src/doc/tables/is_zero_base.md | 9 + .../libjxl/src/doc/tables/markdown-pdf.css | 36 + - .../libjxl/src/doc/tables/nonzero_buckets.md | 9 + - .../src/doc/tables/num_nonzero_context.md | 60 + - .../src/doc/tables/num_nonzeros_base.md | 258 + - third_party/libjxl/src/doc/tables/quant.md | 19 + - .../libjxl/src/doc/tables/stock_counts.md | 22 + - .../libjxl/src/doc/tables/stock_quant.md | 130 + - .../libjxl/src/doc/tables/stock_values.md | 44 + - .../libjxl/src/doc/tables/symbol_order.md | 30 + + .../libjxl/src/doc/tables/nonzero_buckets.md | 8 + + .../src/doc/tables/num_nonzero_context.md | 59 + + .../src/doc/tables/num_nonzeros_base.md | 257 + + third_party/libjxl/src/doc/tables/quant.md | 18 + + .../libjxl/src/doc/tables/stock_counts.md | 21 + + .../libjxl/src/doc/tables/stock_quant.md | 129 + + .../libjxl/src/doc/tables/stock_values.md | 43 + + .../libjxl/src/doc/tables/symbol_order.md | 29 + third_party/libjxl/src/doc/vuln_playbook.md | 245 + third_party/libjxl/src/doc/xl_overview.md | 181 + .../src/docker/Dockerfile.jpegxl-builder | 21 + @@ -103,7 +103,7 @@ see https://github.com/libjxl/libjxl third_party/libjxl/src/docker/README.md | 7 + third_party/libjxl/src/docker/build.sh | 83 + .../libjxl/src/docker/scripts/99_norecommends | 1 + - .../docker/scripts/binutils_align_fix.patch | 28 + + .../docker/scripts/binutils_align_fix.patch | 27 + .../src/docker/scripts/emsdk_install.sh | 37 + .../src/docker/scripts/jpegxl_builder.sh | 518 ++ .../libjxl/src/docker/scripts/msan_install.sh | 131 + @@ -201,7 +201,7 @@ see https://github.com/libjxl/libjxl .../include/jxl/thread_parallel_runner_cxx.h | 64 + .../libjxl/src/lib/include/jxl/types.h | 187 + third_party/libjxl/src/lib/jpegli.cmake | 163 + - third_party/libjxl/src/lib/jpegli/README.md | 28 + + third_party/libjxl/src/lib/jpegli/README.md | 27 + .../libjxl/src/lib/jpegli/color_transform.cc | 62 + .../libjxl/src/lib/jpegli/color_transform.h | 20 + third_party/libjxl/src/lib/jpegli/common.cc | 54 + @@ -664,7 +664,7 @@ see https://github.com/libjxl/libjxl .../src/plugins/gdk-pixbuf/CMakeLists.txt | 81 + .../libjxl/src/plugins/gdk-pixbuf/README.md | 50 + .../src/plugins/gdk-pixbuf/jxl.thumbnailer | 4 + - .../src/plugins/gdk-pixbuf/loaders_test.cache | 16 + + .../src/plugins/gdk-pixbuf/loaders_test.cache | 14 + .../src/plugins/gdk-pixbuf/pixbufloader-jxl.c | 569 ++ .../plugins/gdk-pixbuf/pixbufloader_test.cc | 41 + .../libjxl/src/plugins/gimp/CMakeLists.txt | 28 + @@ -676,7 +676,7 @@ see https://github.com/libjxl/libjxl .../libjxl/src/plugins/gimp/file-jxl-save.h | 20 + .../libjxl/src/plugins/gimp/file-jxl.cc | 157 + .../libjxl/src/plugins/mime/CMakeLists.txt | 6 + - third_party/libjxl/src/plugins/mime/README.md | 20 + + third_party/libjxl/src/plugins/mime/README.md | 19 + .../libjxl/src/plugins/mime/image-jxl.xml | 13 + .../libjxl/src/third_party/CMakeLists.txt | 180 + .../src/third_party/HEVCSoftware/README.md | 2 + @@ -686,7 +686,7 @@ see https://github.com/libjxl/libjxl third_party/libjxl/src/third_party/dirent.h | 49 + .../libjxl/src/third_party/lcms2.cmake | 77 + .../libjxl/src/third_party/sjpeg.cmake | 27 + - .../libjxl/src/third_party/skcms.cmake | 51 + + .../libjxl/src/third_party/skcms.cmake | 50 + .../libjxl/src/third_party/testing.cmake | 85 + third_party/libjxl/src/tools/CMakeLists.txt | 461 ++ .../libjxl/src/tools/README.cjpeg_hdr.md | 73 + @@ -725,7 +725,7 @@ see https://github.com/libjxl/libjxl .../src/tools/benchmark/metrics/fsim-y.sh | 1 + .../src/tools/benchmark/metrics/gmsd-rgb.sh | 1 + .../src/tools/benchmark/metrics/hdr_plots.sh | 10 + - .../benchmark/metrics/hdrvdp-fixes.patch | 110 + + .../benchmark/metrics/hdrvdp-fixes.patch | 109 + .../src/tools/benchmark/metrics/hdrvdp.sh | 9 + .../libjxl/src/tools/benchmark/metrics/iqa.py | 90 + .../tools/benchmark/metrics/iqa_wrapper.sh | 7 + @@ -735,7 +735,7 @@ see https://github.com/libjxl/libjxl .../src/tools/benchmark/metrics/msssim-y.sh | 1 + .../src/tools/benchmark/metrics/nlpd-y.sh | 1 + .../src/tools/benchmark/metrics/plots.py | 259 + - .../benchmark/metrics/prepare_metrics.sh | 64 + + .../benchmark/metrics/prepare_metrics.sh | 63 + .../src/tools/benchmark/metrics/pupsnr.sh | 9 + .../src/tools/benchmark/metrics/pussim.sh | 9 + .../benchmark/metrics/run_all_hdr_metrics.sh | 30 + @@ -795,7 +795,7 @@ see https://github.com/libjxl/libjxl third_party/libjxl/src/tools/djxl_fuzzer.cc | 570 ++ .../libjxl/src/tools/djxl_fuzzer_test.cc | 44 + third_party/libjxl/src/tools/djxl_main.cc | 486 ++ - third_party/libjxl/src/tools/example_tree.txt | 50 + + third_party/libjxl/src/tools/example_tree.txt | 49 + third_party/libjxl/src/tools/fields_fuzzer.cc | 85 + third_party/libjxl/src/tools/file_io.cc | 75 + third_party/libjxl/src/tools/file_io.h | 23 + @@ -887,7 +887,7 @@ see https://github.com/libjxl/libjxl .../wasm_demo/one_line_demo_with_console.html | 30 + .../src/tools/wasm_demo/service_worker.js | 275 + third_party/libjxl/src/tools/xyb_range.cc | 80 + - 882 files changed, 172180 insertions(+) + 882 files changed, 172150 insertions(+) create mode 100644 third_party/libjxl/src/.clang-format create mode 100644 third_party/libjxl/src/.clang-tidy create mode 100644 third_party/libjxl/src/.github/ISSUE_TEMPLATE/bug_report.md @@ -2396,7 +2396,7 @@ new file mode 100644 + +jobs: + cross_compile_ubuntu: -+ name: Cross-compiling ${{ matrix.build_target }} ${{ matrix.variant }} ++ name: Cross-compiling ${{ matrix.build_target }} ${{ matrix.variant }} + runs-on: [ubuntu-22.04] + container: + image: debian:bullseye @@ -2752,7 +2752,7 @@ diff --git a/third_party/libjxl/src/.github/workflows/debug_ci.yml b/third_party new file mode 100644 --- /dev/null +++ b/third_party/libjxl/src/.github/workflows/debug_ci.yml -@@ -0,0 +1,138 @@ +@@ -0,0 +1,135 @@ +# Copyright (c) the JPEG XL Project Authors. All rights reserved. +# +# Use of this source code is governed by a BSD-style @@ -2768,7 +2768,7 @@ new file mode 100644 + +jobs: + cross_compile_ubuntu: -+ name: Cross-compiling ${{ matrix.build_target }} ${{ matrix.variant }} ++ name: Cross-compiling ${{ matrix.build_target }} ${{ matrix.variant }} + runs-on: [ubuntu-22.04] + container: + image: debian:bullseye @@ -2888,9 +2888,6 @@ new file mode 100644 + BUILD_TARGET: ${{ matrix.build_target }} + - name: Setup tmate session + uses: mxschmitt/action-tmate@v3 -+ -+ -+ diff --git a/third_party/libjxl/src/.github/workflows/fuzz.yml b/third_party/libjxl/src/.github/workflows/fuzz.yml new file mode 100644 --- /dev/null @@ -2917,7 +2914,7 @@ new file mode 100644 + - '**CMakeLists.txt' + - .github/workflows/fuzz.yml + -+concurrency: ++concurrency: + group: ${{ github.workflow }}-${{ github.ref }}-${{ github.event_name }} + cancel-in-progress: ${{ github.event_name == 'pull_request' }} + @@ -7325,7 +7322,7 @@ diff --git a/third_party/libjxl/src/debian/copyright b/third_party/libjxl/src/de new file mode 100644 --- /dev/null +++ b/third_party/libjxl/src/debian/copyright -@@ -0,0 +1,194 @@ +@@ -0,0 +1,193 @@ +Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ +Upstream-Name: jpeg-xl + @@ -7519,7 +7516,6 @@ new file mode 100644 + . + For more information, please see: + http://creativecommons.org/publicdomain/zero/1.0/> -+ diff --git a/third_party/libjxl/src/debian/jxl.install b/third_party/libjxl/src/debian/jxl.install new file mode 100644 --- /dev/null @@ -7579,7 +7575,7 @@ new file mode 100755 + -DJPEGXL_FORCE_SYSTEM_BROTLI=ON \ + -DJPEGXL_FORCE_SYSTEM_HWY=ON \ + -DJPEGXL_ENABLE_JPEGLI_LIBJPEG=OFF \ -+ -DJPEGXL_ENABLE_PLUGINS=ON ++ -DJPEGXL_ENABLE_PLUGINS=ON diff --git a/third_party/libjxl/src/debian/source/format b/third_party/libjxl/src/debian/source/format new file mode 100644 --- /dev/null @@ -7713,7 +7709,7 @@ diff --git a/third_party/libjxl/src/doc/benchmarking.md b/third_party/libjxl/src new file mode 100644 --- /dev/null +++ b/third_party/libjxl/src/doc/benchmarking.md -@@ -0,0 +1,82 @@ +@@ -0,0 +1,81 @@ +# Benchmarking + +For speed benchmarks on single images in single or multi-threaded decoding @@ -7795,7 +7791,6 @@ new file mode 100644 +regions. `BPP*pnorm` is the product of `ComprBPP` and `Error p norm`, which is a +figure of merit for the codec (lower is better). `Errors` is nonzero if errors +occurred while loading or encoding/decoding the image. -+ diff --git a/third_party/libjxl/src/doc/building_and_testing.md b/third_party/libjxl/src/doc/building_and_testing.md new file mode 100644 --- /dev/null @@ -8732,7 +8727,7 @@ new file mode 100644 +```bash +pacman -S mingw-w64-x86_64-cmake +``` -+ ++ +For tools that need to be aware of the compiler to function, install the package that corresponds with the specific build-environment you plan to use. For `cmake`, install the `mingw64` version. The generic `msys/cmake` will not function correctly because it will not find the compiler. For other tools, the generic `msys` version is adequate, like `msys/git`. + +To remove packages, use: @@ -8763,7 +8758,7 @@ new file mode 100644 +pacman -S --needed base-devel mingw-w64-x86_64-toolchain +pacman -S git mingw-w64-x86_64-cmake mingw-w64-x86_64-ninja \ + mingw-w64-x86_64-gtest mingw-w64-x86_64-giflib \ -+ mingw-w64-x86_64-libpng mingw-w64-x86_64-libjpeg-turbo ++ mingw-w64-x86_64-libpng mingw-w64-x86_64-libjpeg-turbo +``` + +## Build `libjxl` @@ -9065,7 +9060,7 @@ new file mode 100644 + +2. Create a new folder: `C:\Program Files\GIMP 2\lib\gimp\2.0\plug-ins\file-jxl` + -+3. Copy `build/plugins/gimp/file-jxl.exe` to the new folder. ++3. Copy `build/plugins/gimp/file-jxl.exe` to the new folder. diff --git a/third_party/libjxl/src/doc/format_overview.md b/third_party/libjxl/src/doc/format_overview.md new file mode 100644 --- /dev/null @@ -9863,9 +9858,9 @@ new file mode 100644 + * `debian/changelog` to create the Debian package release with the new version. + Debian changelog shouldn't repeat the library changelog, instead it should + include changes to the packaging scripts. -+ -+If there were incompatible API/ABI changes, make sure to also adapt the -+corresponding section in ++ ++If there were incompatible API/ABI changes, make sure to also adapt the ++corresponding section in +[CMakeLists.txt](https://github.com/libjxl/libjxl/blob/main/lib/CMakeLists.txt#L12). + +## Cherry-pick fixes to a release @@ -10300,7 +10295,7 @@ diff --git a/third_party/libjxl/src/doc/sphinx/index.rst b/third_party/libjxl/sr new file mode 100644 --- /dev/null +++ b/third_party/libjxl/src/doc/sphinx/index.rst -@@ -0,0 +1,18 @@ +@@ -0,0 +1,17 @@ +.. libjxl sphinx documentation entrypoint + +JPEG XL image format reference implementation @@ -10318,7 +10313,6 @@ new file mode 100644 + +* :ref:`genindex` +* :ref:`search` -+ diff --git a/third_party/libjxl/src/doc/sphinx/requirements.txt b/third_party/libjxl/src/doc/sphinx/requirements.txt new file mode 100644 --- /dev/null @@ -10331,13 +10325,12 @@ diff --git a/third_party/libjxl/src/doc/tables/adobe.md b/third_party/libjxl/src new file mode 100644 --- /dev/null +++ b/third_party/libjxl/src/doc/tables/adobe.md -@@ -0,0 +1,6 @@ +@@ -0,0 +1,5 @@ +#### Table M.8 – "Adobe" marker template + +``` +0xEE, 0x00, 0x0E, 0x41, 0x64, 0x6F, 0x62, 0x65, 0x00, 0x64, 0x00, 0x00, 0x00, 0x00, 0x01 +``` -+ diff --git a/third_party/libjxl/src/doc/tables/all_tables.pdf b/third_party/libjxl/src/doc/tables/all_tables.pdf new file mode 100644 index 0000000000000000000000000000000000000000..b02c5b25b884054c09256be304128b171c1fa164 @@ -13311,18 +13304,17 @@ diff --git a/third_party/libjxl/src/doc/tables/app0.md b/third_party/libjxl/src/ new file mode 100644 --- /dev/null +++ b/third_party/libjxl/src/doc/tables/app0.md -@@ -0,0 +1,6 @@ +@@ -0,0 +1,5 @@ +#### Table M.4 – APP0 template + +``` +0xE0, 0x00, 0x10, 0x4A, 0x46, 0x49, 0x46, 0x00, 0x01, 0x01, 0x00, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00 +``` -+ diff --git a/third_party/libjxl/src/doc/tables/brn_proto.md b/third_party/libjxl/src/doc/tables/brn_proto.md new file mode 100644 --- /dev/null +++ b/third_party/libjxl/src/doc/tables/brn_proto.md -@@ -0,0 +1,23 @@ +@@ -0,0 +1,22 @@ +#### Table M.3 – Protocol Buffer descriptor of top-level structure of losslessly compressed JPEG stream + +```protobuf @@ -13345,7 +13337,6 @@ new file mode 100644 + optional bytes original_jpg = 9; +} +``` -+ diff --git a/third_party/libjxl/src/doc/tables/context_modes.md b/third_party/libjxl/src/doc/tables/context_modes.md new file mode 100644 --- /dev/null @@ -13368,7 +13359,7 @@ diff --git a/third_party/libjxl/src/doc/tables/dct_gen.md b/third_party/libjxl/s new file mode 100644 --- /dev/null +++ b/third_party/libjxl/src/doc/tables/dct_gen.md -@@ -0,0 +1,241 @@ +@@ -0,0 +1,240 @@ +#### Electronic Insert I.1 – DCT-II / DCT-III code generator + +```python @@ -13609,23 +13600,21 @@ new file mode 100644 + vars = id2n(makeVars()) + print("Output vector: " + str(vars)) +``` -+ diff --git a/third_party/libjxl/src/doc/tables/ducky.md b/third_party/libjxl/src/doc/tables/ducky.md new file mode 100644 --- /dev/null +++ b/third_party/libjxl/src/doc/tables/ducky.md -@@ -0,0 +1,6 @@ +@@ -0,0 +1,5 @@ +#### Table M.7 – "Ducky" marker template + +``` +0xEC, 0x00, 0x11, 0x44, 0x75, 0x63, 0x6B, 0x79, 0x00, 0x01, 0x00, 0x04, 0x00, 0x00, 0x00, 0x64, 0x00, 0x00 +``` -+ diff --git a/third_party/libjxl/src/doc/tables/freq_context.md b/third_party/libjxl/src/doc/tables/freq_context.md new file mode 100644 --- /dev/null +++ b/third_party/libjxl/src/doc/tables/freq_context.md -@@ -0,0 +1,54 @@ +@@ -0,0 +1,53 @@ +#### Table M.15 – freq_context + +`scheme == 0`: @@ -13679,18 +13668,16 @@ new file mode 100644 +36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, +54, 55, 56, 57, 58, 59, 60, 61, 62, 63 +``` -+ diff --git a/third_party/libjxl/src/doc/tables/icc.md b/third_party/libjxl/src/doc/tables/icc.md new file mode 100644 --- /dev/null +++ b/third_party/libjxl/src/doc/tables/icc.md -@@ -0,0 +1,6 @@ +@@ -0,0 +1,5 @@ +#### Table M.6 – common ICC profile template + +``` +0xE2, 0x0C, 0x58, 0x49, 0x43, 0x43, 0x5F, 0x50, 0x52, 0x4F, 0x46, 0x49, 0x4C, 0x45, 0x00, 0x01, 0x01, 0x00, 0x00, 0x0C, 0x48, 0x4C, 0x69, 0x6E, 0x6F, 0x02, 0x10, 0x00, 0x00, 0x6D, 0x6E, 0x74, 0x72, 0x52, 0x47, 0x42, 0x20, 0x58, 0x59, 0x5A, 0x20, 0x07, 0xCE, 0x00, 0x02, 0x00, 0x09, 0x00, 0x06, 0x00, 0x31, 0x00, 0x00, 0x61, 0x63, 0x73, 0x70, 0x4D, 0x53, 0x46, 0x54, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x43, 0x20, 0x73, 0x52, 0x47, 0x42, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0xF6, 0xD6, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0xD3, 0x2D, 0x48, 0x50, 0x20, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x11, 0x63, 0x70, 0x72, 0x74, 0x00, 0x00, 0x01, 0x50, 0x00, 0x00, 0x00, 0x33, 0x64, 0x65, 0x73, 0x63, 0x00, 0x00, 0x01, 0x84, 0x00, 0x00, 0x00, 0x6C, 0x77, 0x74, 0x70, 0x74, 0x00, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x00, 0x14, 0x62, 0x6B, 0x70, 0x74, 0x00, 0x00, 0x02, 0x04, 0x00, 0x00, 0x00, 0x14, 0x72, 0x58, 0x59, 0x5A, 0x00, 0x00, 0x02, 0x18, 0x00, 0x00, 0x00, 0x14, 0x67, 0x58, 0x59, 0x5A, 0x00, 0x00, 0x02, 0x2C, 0x00, 0x00, 0x00, 0x14, 0x62, 0x58, 0x59, 0x5A, 0x00, 0x00, 0x02, 0x40, 0x00, 0x00, 0x00, 0x14, 0x64, 0x6D, 0x6E, 0x64, 0x00, 0x00, 0x02, 0x54, 0x00, 0x00, 0x00, 0x70, 0x64, 0x6D, 0x64, 0x64, 0x00, 0x00, 0x02, 0xC4, 0x00, 0x00, 0x00, 0x88, 0x76, 0x75, 0x65, 0x64, 0x00, 0x00, 0x03, 0x4C, 0x00, 0x00, 0x00, 0x86, 0x76, 0x69, 0x65, 0x77, 0x00, 0x00, 0x03, 0xD4, 0x00, 0x00, 0x00, 0x24, 0x6C, 0x75, 0x6D, 0x69, 0x00, 0x00, 0x03, 0xF8, 0x00, 0x00, 0x00, 0x14, 0x6D, 0x65, 0x61, 0x73, 0x00, 0x00, 0x04, 0x0C, 0x00, 0x00, 0x00, 0x24, 0x74, 0x65, 0x63, 0x68, 0x00, 0x00, 0x04, 0x30, 0x00, 0x00, 0x00, 0x0C, 0x72, 0x54, 0x52, 0x43, 0x00, 0x00, 0x04, 0x3C, 0x00, 0x00, 0x08, 0x0C, 0x67, 0x54, 0x52, 0x43, 0x00, 0x00, 0x04, 0x3C, 0x00, 0x00, 0x08, 0x0C, 0x62, 0x54, 0x52, 0x43, 0x00, 0x00, 0x04, 0x3C, 0x00, 0x00, 0x08, 0x0C, 0x74, 0x65, 0x78, 0x74, 0x00, 0x00, 0x00, 0x00, 0x43, 0x6F, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x28, 0x63, 0x29, 0x20, 0x31, 0x39, 0x39, 0x38, 0x20, 0x48, 0x65, 0x77, 0x6C, 0x65, 0x74, 0x74, 0x2D, 0x50, 0x61, 0x63, 0x6B, 0x61, 0x72, 0x64, 0x20, 0x43, 0x6F, 0x6D, 0x70, 0x61, 0x6E, 0x79, 0x00, 0x00, 0x64, 0x65, 0x73, 0x63, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x12, 0x73, 0x52, 0x47, 0x42, 0x20, 0x49, 0x45, 0x43, 0x36, 0x31, 0x39, 0x36, 0x36, 0x2D, 0x32, 0x2E, 0x31, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x12, 0x73, 0x52, 0x47, 0x42, 0x20, 0x49, 0x45, 0x43, 0x36, 0x31, 0x39, 0x36, 0x36, 0x2D, 0x32, 0x2E, 0x31, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x58, 0x59, 0x5A, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF3, 0x51, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01, 0x16, 0xCC, 0x58, 0x59, 0x5A, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x58, 0x59, 0x5A, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x6F, 0xA2, 0x00, 0x00, 0x38, 0xF5, 0x00, 0x00, 0x03, 0x90, 0x58, 0x59, 0x5A, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x62, 0x99, 0x00, 0x00, 0xB7, 0x85, 0x00, 0x00, 0x18, 0xDA, 0x58, 0x59, 0x5A, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x24, 0xA0, 0x00, 0x00, 0x0F, 0x84, 0x00, 0x00, 0xB6, 0xCF, 0x64, 0x65, 0x73, 0x63, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x16, 0x49, 0x45, 0x43, 0x20, 0x68, 0x74, 0x74, 0x70, 0x3A, 0x2F, 0x2F, 0x77, 0x77, 0x77, 0x2E, 0x69, 0x65, 0x63, 0x2E, 0x63, 0x68, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x16, 0x49, 0x45, 0x43, 0x20, 0x68, 0x74, 0x74, 0x70, 0x3A, 0x2F, 0x2F, 0x77, 0x77, 0x77, 0x2E, 0x69, 0x65, 0x63, 0x2E, 0x63, 0x68, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x64, 0x65, 0x73, 0x63, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2E, 0x49, 0x45, 0x43, 0x20, 0x36, 0x31, 0x39, 0x36, 0x36, 0x2D, 0x32, 0x2E, 0x31, 0x20, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6C, 0x74, 0x20, 0x52, 0x47, 0x42, 0x20, 0x63, 0x6F, 0x6C, 0x6F, 0x75, 0x72, 0x20, 0x73, 0x70, 0x61, 0x63, 0x65, 0x20, 0x2D, 0x20, 0x73, 0x52, 0x47, 0x42, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2E, 0x49, 0x45, 0x43, 0x20, 0x36, 0x31, 0x39, 0x36, 0x36, 0x2D, 0x32, 0x2E, 0x31, 0x20, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6C, 0x74, 0x20, 0x52, 0x47, 0x42, 0x20, 0x63, 0x6F, 0x6C, 0x6F, 0x75, 0x72, 0x20, 0x73, 0x70, 0x61, 0x63, 0x65, 0x20, 0x2D, 0x20, 0x73, 0x52, 0x47, 0x42, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x64, 0x65, 0x73, 0x63, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2C, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6E, 0x63, 0x65, 0x20, 0x56, 0x69, 0x65, 0x77, 0x69, 0x6E, 0x67, 0x20, 0x43, 0x6F, 0x6E, 0x64, 0x69, 0x74, 0x69, 0x6F, 0x6E, 0x20, 0x69, 0x6E, 0x20, 0x49, 0x45, 0x43, 0x36, 0x31, 0x39, 0x36, 0x36, 0x2D, 0x32, 0x2E, 0x31, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2C, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6E, 0x63, 0x65, 0x20, 0x56, 0x69, 0x65, 0x77, 0x69, 0x6E, 0x67, 0x20, 0x43, 0x6F, 0x6E, 0x64, 0x69, 0x74, 0x69, 0x6F, 0x6E, 0x20, 0x69, 0x6E, 0x20, 0x49, 0x45, 0x43, 0x36, 0x31, 0x39, 0x36, 0x36, 0x2D, 0x32, 0x2E, 0x31, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x76, 0x69, 0x65, 0x77, 0x00, 0x00, 0x00, 0x00, 0x00, 0x13, 0xA4, 0xFE, 0x00, 0x14, 0x5F, 0x2E, 0x00, 0x10, 0xCF, 0x14, 0x00, 0x03, 0xED, 0xCC, 0x00, 0x04, 0x13, 0x0B, 0x00, 0x03, 0x5C, 0x9E, 0x00, 0x00, 0x00, 0x01, 0x58, 0x59, 0x5A, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x4C, 0x09, 0x56, 0x00, 0x50, 0x00, 0x00, 0x00, 0x57, 0x1F, 0xE7, 0x6D, 0x65, 0x61, 0x73, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x8F, 0x00, 0x00, 0x00, 0x02, 0x73, 0x69, 0x67, 0x20, 0x00, 0x00, 0x00, 0x00, 0x43, 0x52, 0x54, 0x20, 0x63, 0x75, 0x72, 0x76, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x0A, 0x00, 0x0F, 0x00, 0x14, 0x00, 0x19, 0x00, 0x1E, 0x00, 0x23, 0x00, 0x28, 0x00, 0x2D, 0x00, 0x32, 0x00, 0x37, 0x00, 0x3B, 0x00, 0x40, 0x00, 0x45, 0x00, 0x4A, 0x00, 0x4F, 0x00, 0x54, 0x00, 0x59, 0x00, 0x5E, 0x00, 0x63, 0x00, 0x68, 0x00, 0x6D, 0x00, 0x72, 0x00, 0x77, 0x00, 0x7C, 0x00, 0x81, 0x00, 0x86, 0x00, 0x8B, 0x00, 0x90, 0x00, 0x95, 0x00, 0x9A, 0x00, 0x9F, 0x00, 0xA4, 0x00, 0xA9, 0x00, 0xAE, 0x00, 0xB2, 0x00, 0xB7, 0x00, 0xBC, 0x00, 0xC1, 0x00, 0xC6, 0x00, 0xCB, 0x00, 0xD0, 0x00, 0xD5, 0x00, 0xDB, 0x00, 0xE0, 0x00, 0xE5, 0x00, 0xEB, 0x00, 0xF0, 0x00, 0xF6, 0x00, 0xFB, 0x01, 0x01, 0x01, 0x07, 0x01, 0x0D, 0x01, 0x13, 0x01, 0x19, 0x01, 0x1F, 0x01, 0x25, 0x01, 0x2B, 0x01, 0x32, 0x01, 0x38, 0x01, 0x3E, 0x01, 0x45, 0x01, 0x4C, 0x01, 0x52, 0x01, 0x59, 0x01, 0x60, 0x01, 0x67, 0x01, 0x6E, 0x01, 0x75, 0x01, 0x7C, 0x01, 0x83, 0x01, 0x8B, 0x01, 0x92, 0x01, 0x9A, 0x01, 0xA1, 0x01, 0xA9, 0x01, 0xB1, 0x01, 0xB9, 0x01, 0xC1, 0x01, 0xC9, 0x01, 0xD1, 0x01, 0xD9, 0x01, 0xE1, 0x01, 0xE9, 0x01, 0xF2, 0x01, 0xFA, 0x02, 0x03, 0x02, 0x0C, 0x02, 0x14, 0x02, 0x1D, 0x02, 0x26, 0x02, 0x2F, 0x02, 0x38, 0x02, 0x41, 0x02, 0x4B, 0x02, 0x54, 0x02, 0x5D, 0x02, 0x67, 0x02, 0x71, 0x02, 0x7A, 0x02, 0x84, 0x02, 0x8E, 0x02, 0x98, 0x02, 0xA2, 0x02, 0xAC, 0x02, 0xB6, 0x02, 0xC1, 0x02, 0xCB, 0x02, 0xD5, 0x02, 0xE0, 0x02, 0xEB, 0x02, 0xF5, 0x03, 0x00, 0x03, 0x0B, 0x03, 0x16, 0x03, 0x21, 0x03, 0x2D, 0x03, 0x38, 0x03, 0x43, 0x03, 0x4F, 0x03, 0x5A, 0x03, 0x66, 0x03, 0x72, 0x03, 0x7E, 0x03, 0x8A, 0x03, 0x96, 0x03, 0xA2, 0x03, 0xAE, 0x03, 0xBA, 0x03, 0xC7, 0x03, 0xD3, 0x03, 0xE0, 0x03, 0xEC, 0x03, 0xF9, 0x04, 0x06, 0x04, 0x13, 0x04, 0x20, 0x04, 0x2D, 0x04, 0x3B, 0x04, 0x48, 0x04, 0x55, 0x04, 0x63, 0x04, 0x71, 0x04, 0x7E, 0x04, 0x8C, 0x04, 0x9A, 0x04, 0xA8, 0x04, 0xB6, 0x04, 0xC4, 0x04, 0xD3, 0x04, 0xE1, 0x04, 0xF0, 0x04, 0xFE, 0x05, 0x0D, 0x05, 0x1C, 0x05, 0x2B, 0x05, 0x3A, 0x05, 0x49, 0x05, 0x58, 0x05, 0x67, 0x05, 0x77, 0x05, 0x86, 0x05, 0x96, 0x05, 0xA6, 0x05, 0xB5, 0x05, 0xC5, 0x05, 0xD5, 0x05, 0xE5, 0x05, 0xF6, 0x06, 0x06, 0x06, 0x16, 0x06, 0x27, 0x06, 0x37, 0x06, 0x48, 0x06, 0x59, 0x06, 0x6A, 0x06, 0x7B, 0x06, 0x8C, 0x06, 0x9D, 0x06, 0xAF, 0x06, 0xC0, 0x06, 0xD1, 0x06, 0xE3, 0x06, 0xF5, 0x07, 0x07, 0x07, 0x19, 0x07, 0x2B, 0x07, 0x3D, 0x07, 0x4F, 0x07, 0x61, 0x07, 0x74, 0x07, 0x86, 0x07, 0x99, 0x07, 0xAC, 0x07, 0xBF, 0x07, 0xD2, 0x07, 0xE5, 0x07, 0xF8, 0x08, 0x0B, 0x08, 0x1F, 0x08, 0x32, 0x08, 0x46, 0x08, 0x5A, 0x08, 0x6E, 0x08, 0x82, 0x08, 0x96, 0x08, 0xAA, 0x08, 0xBE, 0x08, 0xD2, 0x08, 0xE7, 0x08, 0xFB, 0x09, 0x10, 0x09, 0x25, 0x09, 0x3A, 0x09, 0x4F, 0x09, 0x64, 0x09, 0x79, 0x09, 0x8F, 0x09, 0xA4, 0x09, 0xBA, 0x09, 0xCF, 0x09, 0xE5, 0x09, 0xFB, 0x0A, 0x11, 0x0A, 0x27, 0x0A, 0x3D, 0x0A, 0x54, 0x0A, 0x6A, 0x0A, 0x81, 0x0A, 0x98, 0x0A, 0xAE, 0x0A, 0xC5, 0x0A, 0xDC, 0x0A, 0xF3, 0x0B, 0x0B, 0x0B, 0x22, 0x0B, 0x39, 0x0B, 0x51, 0x0B, 0x69, 0x0B, 0x80, 0x0B, 0x98, 0x0B, 0xB0, 0x0B, 0xC8, 0x0B, 0xE1, 0x0B, 0xF9, 0x0C, 0x12, 0x0C, 0x2A, 0x0C, 0x43, 0x0C, 0x5C, 0x0C, 0x75, 0x0C, 0x8E, 0x0C, 0xA7, 0x0C, 0xC0, 0x0C, 0xD9, 0x0C, 0xF3, 0x0D, 0x0D, 0x0D, 0x26, 0x0D, 0x40, 0x0D, 0x5A, 0x0D, 0x74, 0x0D, 0x8E, 0x0D, 0xA9, 0x0D, 0xC3, 0x0D, 0xDE, 0x0D, 0xF8, 0x0E, 0x13, 0x0E, 0x2E, 0x0E, 0x49, 0x0E, 0x64, 0x0E, 0x7F, 0x0E, 0x9B, 0x0E, 0xB6, 0x0E, 0xD2, 0x0E, 0xEE, 0x0F, 0x09, 0x0F, 0x25, 0x0F, 0x41, 0x0F, 0x5E, 0x0F, 0x7A, 0x0F, 0x96, 0x0F, 0xB3, 0x0F, 0xCF, 0x0F, 0xEC, 0x10, 0x09, 0x10, 0x26, 0x10, 0x43, 0x10, 0x61, 0x10, 0x7E, 0x10, 0x9B, 0x10, 0xB9, 0x10, 0xD7, 0x10, 0xF5, 0x11, 0x13, 0x11, 0x31, 0x11, 0x4F, 0x11, 0x6D, 0x11, 0x8C, 0x11, 0xAA, 0x11, 0xC9, 0x11, 0xE8, 0x12, 0x07, 0x12, 0x26, 0x12, 0x45, 0x12, 0x64, 0x12, 0x84, 0x12, 0xA3, 0x12, 0xC3, 0x12, 0xE3, 0x13, 0x03, 0x13, 0x23, 0x13, 0x43, 0x13, 0x63, 0x13, 0x83, 0x13, 0xA4, 0x13, 0xC5, 0x13, 0xE5, 0x14, 0x06, 0x14, 0x27, 0x14, 0x49, 0x14, 0x6A, 0x14, 0x8B, 0x14, 0xAD, 0x14, 0xCE, 0x14, 0xF0, 0x15, 0x12, 0x15, 0x34, 0x15, 0x56, 0x15, 0x78, 0x15, 0x9B, 0x15, 0xBD, 0x15, 0xE0, 0x16, 0x03, 0x16, 0x26, 0x16, 0x49, 0x16, 0x6C, 0x16, 0x8F, 0x16, 0xB2, 0x16, 0xD6, 0x16, 0xFA, 0x17, 0x1D, 0x17, 0x41, 0x17, 0x65, 0x17, 0x89, 0x17, 0xAE, 0x17, 0xD2, 0x17, 0xF7, 0x18, 0x1B, 0x18, 0x40, 0x18, 0x65, 0x18, 0x8A, 0x18, 0xAF, 0x18, 0xD5, 0x18, 0xFA, 0x19, 0x20, 0x19, 0x45, 0x19, 0x6B, 0x19, 0x91, 0x19, 0xB7, 0x19, 0xDD, 0x1A, 0x04, 0x1A, 0x2A, 0x1A, 0x51, 0x1A, 0x77, 0x1A, 0x9E, 0x1A, 0xC5, 0x1A, 0xEC, 0x1B, 0x14, 0x1B, 0x3B, 0x1B, 0x63, 0x1B, 0x8A, 0x1B, 0xB2, 0x1B, 0xDA, 0x1C, 0x02, 0x1C, 0x2A, 0x1C, 0x52, 0x1C, 0x7B, 0x1C, 0xA3, 0x1C, 0xCC, 0x1C, 0xF5, 0x1D, 0x1E, 0x1D, 0x47, 0x1D, 0x70, 0x1D, 0x99, 0x1D, 0xC3, 0x1D, 0xEC, 0x1E, 0x16, 0x1E, 0x40, 0x1E, 0x6A, 0x1E, 0x94, 0x1E, 0xBE, 0x1E, 0xE9, 0x1F, 0x13, 0x1F, 0x3E, 0x1F, 0x69, 0x1F, 0x94, 0x1F, 0xBF, 0x1F, 0xEA, 0x20, 0x15, 0x20, 0x41, 0x20, 0x6C, 0x20, 0x98, 0x20, 0xC4, 0x20, 0xF0, 0x21, 0x1C, 0x21, 0x48, 0x21, 0x75, 0x21, 0xA1, 0x21, 0xCE, 0x21, 0xFB, 0x22, 0x27, 0x22, 0x55, 0x22, 0x82, 0x22, 0xAF, 0x22, 0xDD, 0x23, 0x0A, 0x23, 0x38, 0x23, 0x66, 0x23, 0x94, 0x23, 0xC2, 0x23, 0xF0, 0x24, 0x1F, 0x24, 0x4D, 0x24, 0x7C, 0x24, 0xAB, 0x24, 0xDA, 0x25, 0x09, 0x25, 0x38, 0x25, 0x68, 0x25, 0x97, 0x25, 0xC7, 0x25, 0xF7, 0x26, 0x27, 0x26, 0x57, 0x26, 0x87, 0x26, 0xB7, 0x26, 0xE8, 0x27, 0x18, 0x27, 0x49, 0x27, 0x7A, 0x27, 0xAB, 0x27, 0xDC, 0x28, 0x0D, 0x28, 0x3F, 0x28, 0x71, 0x28, 0xA2, 0x28, 0xD4, 0x29, 0x06, 0x29, 0x38, 0x29, 0x6B, 0x29, 0x9D, 0x29, 0xD0, 0x2A, 0x02, 0x2A, 0x35, 0x2A, 0x68, 0x2A, 0x9B, 0x2A, 0xCF, 0x2B, 0x02, 0x2B, 0x36, 0x2B, 0x69, 0x2B, 0x9D, 0x2B, 0xD1, 0x2C, 0x05, 0x2C, 0x39, 0x2C, 0x6E, 0x2C, 0xA2, 0x2C, 0xD7, 0x2D, 0x0C, 0x2D, 0x41, 0x2D, 0x76, 0x2D, 0xAB, 0x2D, 0xE1, 0x2E, 0x16, 0x2E, 0x4C, 0x2E, 0x82, 0x2E, 0xB7, 0x2E, 0xEE, 0x2F, 0x24, 0x2F, 0x5A, 0x2F, 0x91, 0x2F, 0xC7, 0x2F, 0xFE, 0x30, 0x35, 0x30, 0x6C, 0x30, 0xA4, 0x30, 0xDB, 0x31, 0x12, 0x31, 0x4A, 0x31, 0x82, 0x31, 0xBA, 0x31, 0xF2, 0x32, 0x2A, 0x32, 0x63, 0x32, 0x9B, 0x32, 0xD4, 0x33, 0x0D, 0x33, 0x46, 0x33, 0x7F, 0x33, 0xB8, 0x33, 0xF1, 0x34, 0x2B, 0x34, 0x65, 0x34, 0x9E, 0x34, 0xD8, 0x35, 0x13, 0x35, 0x4D, 0x35, 0x87, 0x35, 0xC2, 0x35, 0xFD, 0x36, 0x37, 0x36, 0x72, 0x36, 0xAE, 0x36, 0xE9, 0x37, 0x24, 0x37, 0x60, 0x37, 0x9C, 0x37, 0xD7, 0x38, 0x14, 0x38, 0x50, 0x38, 0x8C, 0x38, 0xC8, 0x39, 0x05, 0x39, 0x42, 0x39, 0x7F, 0x39, 0xBC, 0x39, 0xF9, 0x3A, 0x36, 0x3A, 0x74, 0x3A, 0xB2, 0x3A, 0xEF, 0x3B, 0x2D, 0x3B, 0x6B, 0x3B, 0xAA, 0x3B, 0xE8, 0x3C, 0x27, 0x3C, 0x65, 0x3C, 0xA4, 0x3C, 0xE3, 0x3D, 0x22, 0x3D, 0x61, 0x3D, 0xA1, 0x3D, 0xE0, 0x3E, 0x20, 0x3E, 0x60, 0x3E, 0xA0, 0x3E, 0xE0, 0x3F, 0x21, 0x3F, 0x61, 0x3F, 0xA2, 0x3F, 0xE2, 0x40, 0x23, 0x40, 0x64, 0x40, 0xA6, 0x40, 0xE7, 0x41, 0x29, 0x41, 0x6A, 0x41, 0xAC, 0x41, 0xEE, 0x42, 0x30, 0x42, 0x72, 0x42, 0xB5, 0x42, 0xF7, 0x43, 0x3A, 0x43, 0x7D, 0x43, 0xC0, 0x44, 0x03, 0x44, 0x47, 0x44, 0x8A, 0x44, 0xCE, 0x45, 0x12, 0x45, 0x55, 0x45, 0x9A, 0x45, 0xDE, 0x46, 0x22, 0x46, 0x67, 0x46, 0xAB, 0x46, 0xF0, 0x47, 0x35, 0x47, 0x7B, 0x47, 0xC0, 0x48, 0x05, 0x48, 0x4B, 0x48, 0x91, 0x48, 0xD7, 0x49, 0x1D, 0x49, 0x63, 0x49, 0xA9, 0x49, 0xF0, 0x4A, 0x37, 0x4A, 0x7D, 0x4A, 0xC4, 0x4B, 0x0C, 0x4B, 0x53, 0x4B, 0x9A, 0x4B, 0xE2, 0x4C, 0x2A, 0x4C, 0x72, 0x4C, 0xBA, 0x4D, 0x02, 0x4D, 0x4A, 0x4D, 0x93, 0x4D, 0xDC, 0x4E, 0x25, 0x4E, 0x6E, 0x4E, 0xB7, 0x4F, 0x00, 0x4F, 0x49, 0x4F, 0x93, 0x4F, 0xDD, 0x50, 0x27, 0x50, 0x71, 0x50, 0xBB, 0x51, 0x06, 0x51, 0x50, 0x51, 0x9B, 0x51, 0xE6, 0x52, 0x31, 0x52, 0x7C, 0x52, 0xC7, 0x53, 0x13, 0x53, 0x5F, 0x53, 0xAA, 0x53, 0xF6, 0x54, 0x42, 0x54, 0x8F, 0x54, 0xDB, 0x55, 0x28, 0x55, 0x75, 0x55, 0xC2, 0x56, 0x0F, 0x56, 0x5C, 0x56, 0xA9, 0x56, 0xF7, 0x57, 0x44, 0x57, 0x92, 0x57, 0xE0, 0x58, 0x2F, 0x58, 0x7D, 0x58, 0xCB, 0x59, 0x1A, 0x59, 0x69, 0x59, 0xB8, 0x5A, 0x07, 0x5A, 0x56, 0x5A, 0xA6, 0x5A, 0xF5, 0x5B, 0x45, 0x5B, 0x95, 0x5B, 0xE5, 0x5C, 0x35, 0x5C, 0x86, 0x5C, 0xD6, 0x5D, 0x27, 0x5D, 0x78, 0x5D, 0xC9, 0x5E, 0x1A, 0x5E, 0x6C, 0x5E, 0xBD, 0x5F, 0x0F, 0x5F, 0x61, 0x5F, 0xB3, 0x60, 0x05, 0x60, 0x57, 0x60, 0xAA, 0x60, 0xFC, 0x61, 0x4F, 0x61, 0xA2, 0x61, 0xF5, 0x62, 0x49, 0x62, 0x9C, 0x62, 0xF0, 0x63, 0x43, 0x63, 0x97, 0x63, 0xEB, 0x64, 0x40, 0x64, 0x94, 0x64, 0xE9, 0x65, 0x3D, 0x65, 0x92, 0x65, 0xE7, 0x66, 0x3D, 0x66, 0x92, 0x66, 0xE8, 0x67, 0x3D, 0x67, 0x93, 0x67, 0xE9, 0x68, 0x3F, 0x68, 0x96, 0x68, 0xEC, 0x69, 0x43, 0x69, 0x9A, 0x69, 0xF1, 0x6A, 0x48, 0x6A, 0x9F, 0x6A, 0xF7, 0x6B, 0x4F, 0x6B, 0xA7, 0x6B, 0xFF, 0x6C, 0x57, 0x6C, 0xAF, 0x6D, 0x08, 0x6D, 0x60, 0x6D, 0xB9, 0x6E, 0x12, 0x6E, 0x6B, 0x6E, 0xC4, 0x6F, 0x1E, 0x6F, 0x78, 0x6F, 0xD1, 0x70, 0x2B, 0x70, 0x86, 0x70, 0xE0, 0x71, 0x3A, 0x71, 0x95, 0x71, 0xF0, 0x72, 0x4B, 0x72, 0xA6, 0x73, 0x01, 0x73, 0x5D, 0x73, 0xB8, 0x74, 0x14, 0x74, 0x70, 0x74, 0xCC, 0x75, 0x28, 0x75, 0x85, 0x75, 0xE1, 0x76, 0x3E, 0x76, 0x9B, 0x76, 0xF8, 0x77, 0x56, 0x77, 0xB3, 0x78, 0x11, 0x78, 0x6E, 0x78, 0xCC, 0x79, 0x2A, 0x79, 0x89, 0x79, 0xE7, 0x7A, 0x46, 0x7A, 0xA5, 0x7B, 0x04, 0x7B, 0x63, 0x7B, 0xC2, 0x7C, 0x21, 0x7C, 0x81, 0x7C, 0xE1, 0x7D, 0x41, 0x7D, 0xA1, 0x7E, 0x01, 0x7E, 0x62, 0x7E, 0xC2, 0x7F, 0x23, 0x7F, 0x84, 0x7F, 0xE5, 0x80, 0x47, 0x80, 0xA8, 0x81, 0x0A, 0x81, 0x6B, 0x81, 0xCD, 0x82, 0x30, 0x82, 0x92, 0x82, 0xF4, 0x83, 0x57, 0x83, 0xBA, 0x84, 0x1D, 0x84, 0x80, 0x84, 0xE3, 0x85, 0x47, 0x85, 0xAB, 0x86, 0x0E, 0x86, 0x72, 0x86, 0xD7, 0x87, 0x3B, 0x87, 0x9F, 0x88, 0x04, 0x88, 0x69, 0x88, 0xCE, 0x89, 0x33, 0x89, 0x99, 0x89, 0xFE, 0x8A, 0x64, 0x8A, 0xCA, 0x8B, 0x30, 0x8B, 0x96, 0x8B, 0xFC, 0x8C, 0x63, 0x8C, 0xCA, 0x8D, 0x31, 0x8D, 0x98, 0x8D, 0xFF, 0x8E, 0x66, 0x8E, 0xCE, 0x8F, 0x36, 0x8F, 0x9E, 0x90, 0x06, 0x90, 0x6E, 0x90, 0xD6, 0x91, 0x3F, 0x91, 0xA8, 0x92, 0x11, 0x92, 0x7A, 0x92, 0xE3, 0x93, 0x4D, 0x93, 0xB6, 0x94, 0x20, 0x94, 0x8A, 0x94, 0xF4, 0x95, 0x5F, 0x95, 0xC9, 0x96, 0x34, 0x96, 0x9F, 0x97, 0x0A, 0x97, 0x75, 0x97, 0xE0, 0x98, 0x4C, 0x98, 0xB8, 0x99, 0x24, 0x99, 0x90, 0x99, 0xFC, 0x9A, 0x68, 0x9A, 0xD5, 0x9B, 0x42, 0x9B, 0xAF, 0x9C, 0x1C, 0x9C, 0x89, 0x9C, 0xF7, 0x9D, 0x64, 0x9D, 0xD2, 0x9E, 0x40, 0x9E, 0xAE, 0x9F, 0x1D, 0x9F, 0x8B, 0x9F, 0xFA, 0xA0, 0x69, 0xA0, 0xD8, 0xA1, 0x47, 0xA1, 0xB6, 0xA2, 0x26, 0xA2, 0x96, 0xA3, 0x06, 0xA3, 0x76, 0xA3, 0xE6, 0xA4, 0x56, 0xA4, 0xC7, 0xA5, 0x38, 0xA5, 0xA9, 0xA6, 0x1A, 0xA6, 0x8B, 0xA6, 0xFD, 0xA7, 0x6E, 0xA7, 0xE0, 0xA8, 0x52, 0xA8, 0xC4, 0xA9, 0x37, 0xA9, 0xA9, 0xAA, 0x1C, 0xAA, 0x8F, 0xAB, 0x02, 0xAB, 0x75, 0xAB, 0xE9, 0xAC, 0x5C, 0xAC, 0xD0, 0xAD, 0x44, 0xAD, 0xB8, 0xAE, 0x2D, 0xAE, 0xA1, 0xAF, 0x16, 0xAF, 0x8B, 0xB0, 0x00, 0xB0, 0x75, 0xB0, 0xEA, 0xB1, 0x60, 0xB1, 0xD6, 0xB2, 0x4B, 0xB2, 0xC2, 0xB3, 0x38, 0xB3, 0xAE, 0xB4, 0x25, 0xB4, 0x9C, 0xB5, 0x13, 0xB5, 0x8A, 0xB6, 0x01, 0xB6, 0x79, 0xB6, 0xF0, 0xB7, 0x68, 0xB7, 0xE0, 0xB8, 0x59, 0xB8, 0xD1, 0xB9, 0x4A, 0xB9, 0xC2, 0xBA, 0x3B, 0xBA, 0xB5, 0xBB, 0x2E, 0xBB, 0xA7, 0xBC, 0x21, 0xBC, 0x9B, 0xBD, 0x15, 0xBD, 0x8F, 0xBE, 0x0A, 0xBE, 0x84, 0xBE, 0xFF, 0xBF, 0x7A, 0xBF, 0xF5, 0xC0, 0x70, 0xC0, 0xEC, 0xC1, 0x67, 0xC1, 0xE3, 0xC2, 0x5F, 0xC2, 0xDB, 0xC3, 0x58, 0xC3, 0xD4, 0xC4, 0x51, 0xC4, 0xCE, 0xC5, 0x4B, 0xC5, 0xC8, 0xC6, 0x46, 0xC6, 0xC3, 0xC7, 0x41, 0xC7, 0xBF, 0xC8, 0x3D, 0xC8, 0xBC, 0xC9, 0x3A, 0xC9, 0xB9, 0xCA, 0x38, 0xCA, 0xB7, 0xCB, 0x36, 0xCB, 0xB6, 0xCC, 0x35, 0xCC, 0xB5, 0xCD, 0x35, 0xCD, 0xB5, 0xCE, 0x36, 0xCE, 0xB6, 0xCF, 0x37, 0xCF, 0xB8, 0xD0, 0x39, 0xD0, 0xBA, 0xD1, 0x3C, 0xD1, 0xBE, 0xD2, 0x3F, 0xD2, 0xC1, 0xD3, 0x44, 0xD3, 0xC6, 0xD4, 0x49, 0xD4, 0xCB, 0xD5, 0x4E, 0xD5, 0xD1, 0xD6, 0x55, 0xD6, 0xD8, 0xD7, 0x5C, 0xD7, 0xE0, 0xD8, 0x64, 0xD8, 0xE8, 0xD9, 0x6C, 0xD9, 0xF1, 0xDA, 0x76, 0xDA, 0xFB, 0xDB, 0x80, 0xDC, 0x05, 0xDC, 0x8A, 0xDD, 0x10, 0xDD, 0x96, 0xDE, 0x1C, 0xDE, 0xA2, 0xDF, 0x29, 0xDF, 0xAF, 0xE0, 0x36, 0xE0, 0xBD, 0xE1, 0x44, 0xE1, 0xCC, 0xE2, 0x53, 0xE2, 0xDB, 0xE3, 0x63, 0xE3, 0xEB, 0xE4, 0x73, 0xE4, 0xFC, 0xE5, 0x84, 0xE6, 0x0D, 0xE6, 0x96, 0xE7, 0x1F, 0xE7, 0xA9, 0xE8, 0x32, 0xE8, 0xBC, 0xE9, 0x46, 0xE9, 0xD0, 0xEA, 0x5B, 0xEA, 0xE5, 0xEB, 0x70, 0xEB, 0xFB, 0xEC, 0x86, 0xED, 0x11, 0xED, 0x9C, 0xEE, 0x28, 0xEE, 0xB4, 0xEF, 0x40, 0xEF, 0xCC, 0xF0, 0x58, 0xF0, 0xE5, 0xF1, 0x72, 0xF1, 0xFF, 0xF2, 0x8C, 0xF3, 0x19, 0xF3, 0xA7, 0xF4, 0x34, 0xF4, 0xC2, 0xF5, 0x50, 0xF5, 0xDE, 0xF6, 0x6D, 0xF6, 0xFB, 0xF7, 0x8A, 0xF8, 0x19, 0xF8, 0xA8, 0xF9, 0x38, 0xF9, 0xC7, 0xFA, 0x57, 0xFA, 0xE7, 0xFB, 0x77, 0xFC, 0x07, 0xFC, 0x98, 0xFD, 0x29, 0xFD, 0xBA, 0xFE, 0x4B, 0xFE, 0xDC, 0xFF, 0x6D, 0xFF, 0xFF +``` -+ diff --git a/third_party/libjxl/src/doc/tables/is_zero_base.md b/third_party/libjxl/src/doc/tables/is_zero_base.md new file mode 100644 --- /dev/null @@ -13750,7 +13737,7 @@ diff --git a/third_party/libjxl/src/doc/tables/nonzero_buckets.md b/third_party/ new file mode 100644 --- /dev/null +++ b/third_party/libjxl/src/doc/tables/nonzero_buckets.md -@@ -0,0 +1,9 @@ +@@ -0,0 +1,8 @@ +#### Table M.17 – nonzero_buckets + +``` @@ -13759,12 +13746,11 @@ new file mode 100644 + 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10 +``` -+ diff --git a/third_party/libjxl/src/doc/tables/num_nonzero_context.md b/third_party/libjxl/src/doc/tables/num_nonzero_context.md new file mode 100644 --- /dev/null +++ b/third_party/libjxl/src/doc/tables/num_nonzero_context.md -@@ -0,0 +1,60 @@ +@@ -0,0 +1,59 @@ +#### Table M.16 – num_nonzero_context + +`scheme == 0`: @@ -13824,12 +13810,11 @@ new file mode 100644 +388, 388, 388, 388, 388, 388, 388, 388, 388, 388, 388, 388, 388, 388, +388, 388, 388, 388, 388, 388, 388, 388 +``` -+ diff --git a/third_party/libjxl/src/doc/tables/num_nonzeros_base.md b/third_party/libjxl/src/doc/tables/num_nonzeros_base.md new file mode 100644 --- /dev/null +++ b/third_party/libjxl/src/doc/tables/num_nonzeros_base.md -@@ -0,0 +1,258 @@ +@@ -0,0 +1,257 @@ +#### Table M.2 – num_nonzeros_base table + +``` @@ -14087,12 +14072,11 @@ new file mode 100644 +128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, +128, 128, 128, 128, 128, 128, 128 +``` -+ diff --git a/third_party/libjxl/src/doc/tables/quant.md b/third_party/libjxl/src/doc/tables/quant.md new file mode 100644 --- /dev/null +++ b/third_party/libjxl/src/doc/tables/quant.md -@@ -0,0 +1,19 @@ +@@ -0,0 +1,18 @@ +#### Table M.13 – template quant tables + +`is_luma == true`: @@ -14111,12 +14095,11 @@ new file mode 100644 +99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, +99, 99, 99, 99, 99, 99, 99, 99, 99, 99 +``` -+ diff --git a/third_party/libjxl/src/doc/tables/stock_counts.md b/third_party/libjxl/src/doc/tables/stock_counts.md new file mode 100644 --- /dev/null +++ b/third_party/libjxl/src/doc/tables/stock_counts.md -@@ -0,0 +1,22 @@ +@@ -0,0 +1,21 @@ +#### Table M.9 – stock counts arrays + +`is_ac == 0`, `stock_index == 0`: @@ -14138,12 +14121,11 @@ new file mode 100644 +``` +0, 0, 2, 1, 2, 4, 4, 3, 4, 7, 5, 4, 4, 0, 1, 2, 120 +``` -+ diff --git a/third_party/libjxl/src/doc/tables/stock_quant.md b/third_party/libjxl/src/doc/tables/stock_quant.md new file mode 100644 --- /dev/null +++ b/third_party/libjxl/src/doc/tables/stock_quant.md -@@ -0,0 +1,130 @@ +@@ -0,0 +1,129 @@ +#### Table M.12 – stock quant tables + +`is_luma == true`, `stock_index == 0`: @@ -14273,12 +14255,11 @@ new file mode 100644 +59, 59, 59, 59, 59, 59, 59, 59, 59, 59, 59, 59, 59, 59, 59, 59, 59, 59, +59, 59, 59, 59, 59, 59, 59, 59, 59, 59 +``` -+ diff --git a/third_party/libjxl/src/doc/tables/stock_values.md b/third_party/libjxl/src/doc/tables/stock_values.md new file mode 100644 --- /dev/null +++ b/third_party/libjxl/src/doc/tables/stock_values.md -@@ -0,0 +1,44 @@ +@@ -0,0 +1,43 @@ +#### Table M.10 – stock values arrays + +`is_ac == 0`, `stock_index == 0`: @@ -14322,12 +14303,11 @@ new file mode 100644 +215, 216, 217, 218, 226, 227, 228, 229, 230, 231, 232, 233, 234, 242, +243, 244, 245, 246, 247, 248, 249, 250, 256 +``` -+ diff --git a/third_party/libjxl/src/doc/tables/symbol_order.md b/third_party/libjxl/src/doc/tables/symbol_order.md new file mode 100644 --- /dev/null +++ b/third_party/libjxl/src/doc/tables/symbol_order.md -@@ -0,0 +1,30 @@ +@@ -0,0 +1,29 @@ +#### Table M.11 – predefined symbol order + +`is_ac == 0`: @@ -14357,7 +14337,6 @@ new file mode 100644 +206, 207, 219, 220, 221, 222, 223, 224, 235, 236, 237, 238, 239, 251, +252, 253, 254, 255 +``` -+ diff --git a/third_party/libjxl/src/doc/vuln_playbook.md b/third_party/libjxl/src/doc/vuln_playbook.md new file mode 100644 --- /dev/null @@ -14972,7 +14951,7 @@ diff --git a/third_party/libjxl/src/docker/scripts/binutils_align_fix.patch b/th new file mode 100644 --- /dev/null +++ b/third_party/libjxl/src/docker/scripts/binutils_align_fix.patch -@@ -0,0 +1,28 @@ +@@ -0,0 +1,27 @@ +Description: fix lack of alignment in relocations (crashes on mingw) +See https://sourceware.org/git/?p=binutils-gdb.git;a=patch;h=73af69e74974eaa155eec89867e3ccc77ab39f6d +From: Marc @@ -15000,7 +14979,6 @@ new file mode 100644 + ${RELOCATING+__rt_psrelocs_start = .;} + ${RELOCATING+KEEP(*(.rdata_runtime_pseudo_reloc))} + ${RELOCATING+__rt_psrelocs_end = .;} -+ diff --git a/third_party/libjxl/src/docker/scripts/emsdk_install.sh b/third_party/libjxl/src/docker/scripts/emsdk_install.sh new file mode 100755 --- /dev/null @@ -31535,7 +31513,7 @@ diff --git a/third_party/libjxl/src/lib/jpegli/README.md b/third_party/libjxl/sr new file mode 100644 --- /dev/null +++ b/third_party/libjxl/src/lib/jpegli/README.md -@@ -0,0 +1,28 @@ +@@ -0,0 +1,27 @@ +# Improved JPEG decoder implementation + +This subdirectory contains a JPEG decoder implementation that is API and ABI @@ -31563,7 +31541,6 @@ new file mode 100644 +$ ./ci.sh opt +$ LD_PRELOAD=./build/libjpeg.so.62 ./build/tools/benchmark_xl --input input.png --codec=jpeg:cjpeg-static:q90 +``` -+ diff --git a/third_party/libjxl/src/lib/jpegli/color_transform.cc b/third_party/libjxl/src/lib/jpegli/color_transform.cc new file mode 100644 --- /dev/null @@ -152307,7 +152284,7 @@ diff --git a/third_party/libjxl/src/plugins/gdk-pixbuf/loaders_test.cache b/thir new file mode 100644 --- /dev/null +++ b/third_party/libjxl/src/plugins/gdk-pixbuf/loaders_test.cache -@@ -0,0 +1,16 @@ +@@ -0,0 +1,14 @@ +# GdkPixbuf Image Loader Modules file for testing +# Automatically generated file, do not edit +# Created by gdk-pixbuf-query-loaders from gdk-pixbuf-2.42.2 @@ -152322,8 +152299,6 @@ new file mode 100644 +"jxl" "" +"\377\n" " " 100 +"...\fJXL \r\n\207\n" "zzz " 100 -+ -+ diff --git a/third_party/libjxl/src/plugins/gdk-pixbuf/pixbufloader-jxl.c b/third_party/libjxl/src/plugins/gdk-pixbuf/pixbufloader-jxl.c new file mode 100644 --- /dev/null @@ -154675,7 +154650,7 @@ diff --git a/third_party/libjxl/src/plugins/mime/README.md b/third_party/libjxl/ new file mode 100644 --- /dev/null +++ b/third_party/libjxl/src/plugins/mime/README.md -@@ -0,0 +1,20 @@ +@@ -0,0 +1,19 @@ +## JPEG XL MIME type + +If not already installed by the [Installing section of README.md](../../README.md#installing), then it can be done manually: @@ -154695,7 +154670,6 @@ new file mode 100644 +```bash +sudo xdg-mime uninstall image-jxl.xml +``` -+ diff --git a/third_party/libjxl/src/plugins/mime/image-jxl.xml b/third_party/libjxl/src/plugins/mime/image-jxl.xml new file mode 100644 --- /dev/null @@ -154971,7 +154945,7 @@ new file mode 100644 +DecodingRefreshType : 1 # Random Access 0:none, 1:CRA, 2:IDR, 3:Recovery Point SEI +GOPSize : 1 # GOP Size (number of B slice = GOPSize-1) +ReWriteParamSetsFlag : 1 # Write parameter sets with every IRAP -+# Type POC QPoffset QPfactor tcOffsetDiv2 betaOffsetDiv2 temporal_id #ref_pics_active #ref_pics reference pictures ++# Type POC QPoffset QPfactor tcOffsetDiv2 betaOffsetDiv2 temporal_id #ref_pics_active #ref_pics reference pictures + +#=========== Motion Search ============= +FastSearch : 1 # 0:Full search 1:TZ search @@ -155031,12 +155005,12 @@ new file mode 100644 +TileUniformSpacing : 0 # 0: the column boundaries are indicated by TileColumnWidth array, the row boundaries are indicated by TileRowHeight array + # 1: the column and row boundaries are distributed uniformly +NumTileColumnsMinus1 : 0 # Number of tile columns in a picture minus 1 -+TileColumnWidthArray : 2 3 # Array containing tile column width values in units of CTU (from left to right in picture) ++TileColumnWidthArray : 2 3 # Array containing tile column width values in units of CTU (from left to right in picture) +NumTileRowsMinus1 : 0 # Number of tile rows in a picture minus 1 +TileRowHeightArray : 2 # Array containing tile row height values in units of CTU (from top to bottom in picture) + +LFCrossTileBoundaryFlag : 1 # In-loop filtering is across or not across tile boundary. -+ # 0:not across, 1: across ++ # 0:not across, 1: across + +#============ WaveFront ================ +WaveFrontSynchro : 0 # 0: No WaveFront synchronisation (WaveFrontSubstreams must be 1 in this case). @@ -155402,7 +155376,7 @@ diff --git a/third_party/libjxl/src/third_party/skcms.cmake b/third_party/libjxl new file mode 100644 --- /dev/null +++ b/third_party/libjxl/src/third_party/skcms.cmake -@@ -0,0 +1,51 @@ +@@ -0,0 +1,50 @@ +# Copyright (c) the JPEG XL Project +# +# Licensed under the Apache License, Version 2.0 (the "License"); @@ -155453,7 +155427,6 @@ new file mode 100644 +add_library(skcms STATIC EXCLUDE_FROM_ALL $) +target_include_directories(skcms + PUBLIC $) -+ diff --git a/third_party/libjxl/src/third_party/testing.cmake b/third_party/libjxl/src/third_party/testing.cmake new file mode 100644 --- /dev/null @@ -161118,7 +161091,7 @@ diff --git a/third_party/libjxl/src/tools/benchmark/metrics/hdrvdp-fixes.patch b new file mode 100644 --- /dev/null +++ b/third_party/libjxl/src/tools/benchmark/metrics/hdrvdp-fixes.patch -@@ -0,0 +1,110 @@ +@@ -0,0 +1,109 @@ +From 44a21be2c4de409f80d90cbcc2c20cb3f42e859e Mon Sep 17 00:00:00 2001 +From: Sami Boukortt +Date: Fri, 16 Oct 2020 20:01:02 +0200 @@ -161156,25 +161129,25 @@ new file mode 100644 +--- a/fast_conv_fft.m ++++ b/fast_conv_fft.m +@@ -16,7 +16,7 @@ pad_size = (size(fH)-size(X)); -+ ++ + fX = fft2( padarray( X, pad_size, pad_value, 'post' ) ); -+ ++ +-Yl = real(ifft2( fX.*fH, size(fX,1), size(fX,2), 'symmetric' )); ++Yl = real(ifft2( fX.*fH, size(fX,1), size(fX,2))); -+ ++ + Y = Yl(1:size(X,1),1:size(X,2)); -+ ++ +diff --git a/matlabPyrTools_1.4_fixed/MEX/corrDn.c b/matlabPyrTools_1.4_fixed/MEX/corrDn.c +index d02e272..17e739e 100755 +--- a/matlabPyrTools_1.4_fixed/MEX/corrDn.c ++++ b/matlabPyrTools_1.4_fixed/MEX/corrDn.c +@@ -6,7 +6,6 @@ RES = corrDn(IM, FILT, EDGES, STEP, START, STOP); + */ -+ ++ + #define V4_COMPAT +-#include /* Matlab matrices */ + #include -+ ++ + #include "convolve.h" +diff --git a/matlabPyrTools_1.4_fixed/MEX/pointOp.c b/matlabPyrTools_1.4_fixed/MEX/pointOp.c +index 3623a02..e553adf 100755 @@ -161182,11 +161155,11 @@ new file mode 100644 ++++ b/matlabPyrTools_1.4_fixed/MEX/pointOp.c +@@ -5,7 +5,6 @@ RES = pointOp(IM, LUT, ORIGIN, INCREMENT, WARNINGS) + */ -+ ++ + #define V4_COMPAT +-#include /* Matlab matrices */ + #include -+ ++ + #include /* NULL */ +diff --git a/matlabPyrTools_1.4_fixed/MEX/upConv.c b/matlabPyrTools_1.4_fixed/MEX/upConv.c +index 98a2bec..08fdf75 100755 @@ -161194,11 +161167,11 @@ new file mode 100644 ++++ b/matlabPyrTools_1.4_fixed/MEX/upConv.c +@@ -6,7 +6,6 @@ RES = upConv(IM, FILT, EDGES, STEP, START, STOP, RES); + */ -+ ++ + #define V4_COMPAT +-#include /* Matlab matrices */ + #include -+ ++ + #include "convolve.h" +diff --git a/matlabPyrTools_1.4_fixed/reconSpyr.m b/matlabPyrTools_1.4_fixed/reconSpyr.m +index 05eeafb..1440d8a 100644 @@ -161212,7 +161185,7 @@ new file mode 100644 ++if( length(finfo.file) > 2 && strcmp( finfo.file((end-2):end), '.m') ) + is_mex = false; + end -+ ++ +diff --git a/matlabPyrTools_1.4_fixed/reconSpyrLevs.m b/matlabPyrTools_1.4_fixed/reconSpyrLevs.m +index ac5e2b1..d3b91d5 100644 +--- a/matlabPyrTools_1.4_fixed/reconSpyrLevs.m @@ -161225,10 +161198,9 @@ new file mode 100644 ++if( length(finfo.file) > 2 && strcmp( finfo.file((end-2):end), '.m') ) + is_mex = false; + end -+ -+-- -+2.28.0 + ++-- ++2.28.0 diff --git a/third_party/libjxl/src/tools/benchmark/metrics/hdrvdp.sh b/third_party/libjxl/src/tools/benchmark/metrics/hdrvdp.sh new file mode 100755 --- /dev/null @@ -161349,7 +161321,7 @@ new file mode 100755 +# Use of this source code is governed by a BSD-style +# license that can be found in the LICENSE file. + -+python3 "$(dirname "$0")/iqa.py" "$0" "$@" ++python3 "$(dirname "$0")/iqa.py" "$0" "$@" diff --git a/third_party/libjxl/src/tools/benchmark/metrics/lpips-rgb.sh b/third_party/libjxl/src/tools/benchmark/metrics/lpips-rgb.sh new file mode 120000 --- /dev/null @@ -161687,7 +161659,7 @@ diff --git a/third_party/libjxl/src/tools/benchmark/metrics/prepare_metrics.sh b new file mode 100755 --- /dev/null +++ b/third_party/libjxl/src/tools/benchmark/metrics/prepare_metrics.sh -@@ -0,0 +1,64 @@ +@@ -0,0 +1,63 @@ +#!/usr/bin/env bash +# Copyright (c) the JPEG XL Project Authors. All rights reserved. +# @@ -161751,7 +161723,6 @@ new file mode 100755 + popd +} +main "$@" -+ diff --git a/third_party/libjxl/src/tools/benchmark/metrics/pupsnr.sh b/third_party/libjxl/src/tools/benchmark/metrics/pupsnr.sh new file mode 100755 --- /dev/null @@ -162058,7 +162029,7 @@ new file mode 100755 + match = re.match(r'[+-]?\d*[.]?\d*(?:[eE][+-]?\d+)?', string) + return float(match[0]) if match[0] else None + -+ ++ +def run_shell_command(shell_command, + bisect_var, bisect_val, + extra_env_defs, @@ -162088,7 +162059,7 @@ new file mode 100755 + shell_command, + final_shell_command, + target, -+ int_args, ++ int_args, + bisect_var, bisect_left, bisect_right, + rtol_val, atol_val, rtol_arg, atol_arg, + maxiter, @@ -162223,7 +162194,7 @@ new file mode 100755 + help='The cleanup shell command to execute.') + # + parsed = parser.parse_args(args) -+ extra_env_defs = tuple(filter(None, parsed.env.split(','))) ++ extra_env_defs = tuple(filter(None, parsed.env.split(','))) + try: + low_high = parsed.range.split(',') + if len(low_high) != 2: @@ -162240,7 +162211,7 @@ new file mode 100755 + shell_command=parsed.cmd, + final_shell_command=parsed.final, + target=parsed.target, -+ int_args=int_args, ++ int_args=int_args, + bisect_var=parsed.var, + bisect_left=low_val, + bisect_right=high_val, @@ -169953,7 +169924,7 @@ diff --git a/third_party/libjxl/src/tools/example_tree.txt b/third_party/libjxl/ new file mode 100644 --- /dev/null +++ b/third_party/libjxl/src/tools/example_tree.txt -@@ -0,0 +1,50 @@ +@@ -0,0 +1,49 @@ +RCT 1 /* YCoCg */ +GroupShift 3 /* Group size is 128 << 3 == 1024 */ +Width 1024 @@ -170003,7 +169974,6 @@ new file mode 100644 + PrevAbs, Prev, PrevAbsErr, PrevErr, PPrevAbs, PPrev, PPrevAbsErr, PPrevErr + +List of predictors: Set, W, N, AvgW+N, Select, Gradient, Weighted, NE, NW, WW, AvgW+NW, AvgN+NW, AvgN+NE, AvgAll -+ diff --git a/third_party/libjxl/src/tools/fields_fuzzer.cc b/third_party/libjxl/src/tools/fields_fuzzer.cc new file mode 100644 --- /dev/null @@ -175647,7 +175617,7 @@ new file mode 100644 + local dist="$("${comparator}" "${infn}" "${outfn}")" + python3 -c "import sys; sys.exit(not ${dist} > 0.0)" + python3 -c "import sys; sys.exit(not ${dist} < 0.005)" -+ ++ + # Test decoding to pixels by setting the --jpeg_quality flag. + "${decoder}" "${jxlfn}" "${outfn}" --num_reps 2 --jpeg_quality 100 + local dist="$("${comparator}" "${infn}" "${outfn}")" @@ -176463,7 +176433,7 @@ new file mode 100644 +const double extra_edges_weight[4] = {1.5, 0.1, 0.1, 0.5}; + +// higher value means more importance to grid-like artifacts (blockiness) -+const double worst_grid_weight[2][4] = ++const double worst_grid_weight[2][4] = + { {1.0, 0.1, 0.1, 0.5}, // on ssim heatmap + {1.0, 0.1, 0.1, 0.5} }; // on extra_edges heatmap + @@ -176674,7 +176644,7 @@ new file mode 100644 + for (unsigned int i = 0; i < nChan; i++) row_scores[i].insert(ravg[i]); + } + for(unsigned int i = 0; i < nChan; i++) { -+ int k=0; for (const double& s : row_scores[i]) { if (k++ >= errormap.rows/50) { dssim += worst_grid_weight[twice][i] * s; ++ int k=0; for (const double& s : row_scores[i]) { if (k++ >= errormap.rows/50) { dssim += worst_grid_weight[twice][i] * s; + printf("grid row %s %i: %f\n",(twice?"edgediff":"ssimmap"),i,s); + + break; } } @@ -176688,7 +176658,7 @@ new file mode 100644 + for (unsigned int i = 0; i < nChan; i++) col_scores[i].insert(cavg[i]); + } + for(unsigned int i = 0; i < nChan; i++) { -+ int k=0; for (const double& s : col_scores[i]) { if (k++ >= errormap.cols/50) { dssim += worst_grid_weight[twice][i] * s; ++ int k=0; for (const double& s : col_scores[i]) { if (k++ >= errormap.cols/50) { dssim += worst_grid_weight[twice][i] * s; + printf("grid col %s %i: %f\n",(twice?"edgediff":"ssimmap"),i,s); + +break; } }