Commit Graph

30 Commits

Author SHA1 Message Date
Jamie
5f72c2ed74 Fix single threaded avif encoding (#1409)
* Fix single threaded encoding by compiling a separate copy of libsharpyuv
- This version will have threads turned off

* Add the fixed compilations of avif_enc.js and the wasm file

* ensure that ST and MT builds run sequentially

* update OUT_ENC_JS to be an order-only dependency

* use WEBP_BUILD_WEBP_JS=ON flag instead

* update compiled ST files

* refactor to use -DWEBP_USE_THREAD=OFF
2024-08-13 11:11:17 +01:00
Aryan Pingle
e217740e53 Update libavif (#1381)
* Update libavif (v1.0.0-main)

* Update libavif for improved compression and speed
* v1.0.0 deprecates usage of min and max-quantizers; we use `quality` and `qualityAlpha` instead
* Renamed `maxSpeed` to `MAX_EFFORT` for better readability

* Update libavif (v1.0.1-main)

* Refactor variable names for clarity

* Update libaom (v3.7.0)

* Add checks for API return values

* Rename variables for readability

Changes `cqlevel` to `quality`, and `cqAlphaLevel` to `qualityAlpha`

* Minor patches in logic

* Minor patches in lossless calculation

* Add chroma subsampling options to AVIF

* Add skeleton for sharp downsampling param

* Try to use libsharpyuv

* Encoder working, decoder isnt

* Make sure sharpyuv is disabled for decoder

* Add AVIF_LOCAL flags for sharp yuv

* Get AVIF sharp YUV working

* Clean up AVIF makefiles

* AVIF: Make sharpyuv conditional on subsample

* AVIF: Flags to speed up sharpyuv build

* AVIF: Minor refactoring in enc.cpp

* AVIF: Minor refactoring & renaming

* AVIF: Use smart pointers to prevent memory leaks

* AVIF: Minor refactoring

* AVIF: Revert defaultoptions logic change

---------

Co-authored-by: Surma <surma@surma.dev>
Co-authored-by: Jake Archibald <jaffathecake@gmail.com>
2024-01-24 08:04:33 +00:00
André R
cd336909fc Update libavif (v0.12-main) and AOM (3.6) for improved compression and speed (#1334)
* Update libavif and AOM (3.6) for improved compression and speed

* Minor fixes to package-lock done by NPM, also trigger new build

* Update AVIF version

---------

Co-authored-by: Jake Archibald <jaffathecake@gmail.com>
2023-03-10 10:24:15 +00:00
Surma
d12b040bd3 Add threaded AVIF encoder for node 2021-06-24 17:07:57 +01:00
Surma
011d0c2099 Update AVIF 2021-06-08 16:51:08 +01:00
Ingvar Stepanyan
7d111b6a43 Update wasm-bindgen 2021-06-02 17:03:14 +01:00
Ingvar Stepanyan
426f31e548 Upgrade Emscripten to 2.0.21
Few notes:
 - Lots of deprecated SIMD intrinsic warnings & errors in JPEG-XL -> Highway; had to suppress erorrs to make project build.
 - Moved couple of common link flags to cpp.Dockerfile (note: can't move `EXPORT_ES6` otherwise `configure` will fail).
 - MODULARIZE=1 is no longer necessary and implied by EXPORT_ES6.
 - EXPORT_NAME=... is no longer necessary in EXPORT_ES6.
 - Changed visdif to also use EXPORT_ES6 and ENVIRONMENT=node instead of generic JS.
2021-06-02 17:03:14 +01:00
Jake Archibald
ff9dea465f Updating AVIF, and 'auto' SSIM option (#1008) 2021-05-10 18:56:33 +01:00
Jake Archibald
33c0c3b034 Additional AVIF options (#987)
* Separate colour & alpha options for AVIF

* Adding broken noise synthesis

* Build files

* Updating build

* Changing speed default

* Remove old comment

* Better speed default
2021-04-29 11:19:24 +01:00
Ingvar Stepanyan
9d890a8fd6 Fix AVIF multithreading (#981) 2021-03-23 12:28:56 +00:00
Jake Archibald
42cfbe11a1 Better AVIF options (#965)
* Better AVIF options

* Removing internal URL

* Remove AQ, add SSIM

* Better cast
2021-03-10 14:12:54 +00:00
Ingvar Stepanyan
30528c2330 Disable filesystem in C++ codecs (#938) 2021-01-18 12:59:40 +00:00
Ingvar Stepanyan
b4329c5bed Rebuild codecs (#935) 2021-01-18 12:29:38 +00:00
Jake Archibald
56e10b3aa2 Rollup build 2020-11-19 11:00:23 +00:00
Jake Archibald
fd5c557065 Cheeky smaller wasms 2020-08-26 11:09:15 +01:00
Jake Archibald
549e1fc50a Use bt709 if not lossless so colour is correct 2020-08-25 14:12:26 +01:00
Jake Archibald
e316b0d667 Use identity coefficients for true lossless 2020-08-25 13:39:01 +01:00
Jake Archibald
8f2dcb5f48 Options mostly working 2020-08-25 13:11:10 +01:00
Surma
3745a3fff1 Revert "Enable address sanitizer"
This reverts commit d89e846896.
2020-08-11 18:41:42 +01:00
Surma
d89e846896 Enable address sanitizer 2020-08-11 18:41:09 +01:00
Ingvar Stepanyan
db6dea846a AVIF Makefile improvements 2020-08-05 15:56:36 +01:00
Ingvar Stepanyan
8036579a3c RawImage -> ImageData; report errors with null 2020-08-05 15:10:33 +01:00
Surma
0218d0aac5 Avoid leaks during encoding 2020-08-05 14:40:04 +01:00
Surma
c6015e2e8d Don't copy dem pixels 2020-08-05 14:39:54 +01:00
Surma
94a2a7b32f Free pixels 2020-08-05 14:39:50 +01:00
Surma
03f33847a3 Code review 2020-08-05 14:39:46 +01:00
Surma
563b558204 Remove free() method 2020-08-05 14:39:41 +01:00
Surma
7893660679 Fix alpha channel in encoder 2020-08-05 14:39:26 +01:00
Surma
7ffa45ba86 Update libavif and libaom 2020-08-05 14:39:07 +01:00
Surma
ee99cf6e0b Move to makefile for AVIF 2020-08-05 14:39:01 +01:00