JPEG XL

Info

rules 57
github 35276
reddit 647

JPEG XL

tools 4225
website 1655
adoption 20712
image-compression-forum 0

General chat

welcome 3810
introduce-yourself 291
color 1414
photography 3435
other-codecs 23765
on-topic 24923
off-topic 22701

Voice Channels

General 2147

Archived

bot-spam 4380

benchmarks

Jyrki Alakuijala
2021-03-07 02:57:13
very very likely JPEG XL will be able to do much better with decent quality targets, but it is not clear to me yet that the palette modes and all options that JPEG XL has are as applicable to low quality anime compression as AVIF
2021-03-07 02:57:54
I'm a bit suspicious if users actually want bad quality anime -- probably they are using it as a proxy to evaluate how efficient it will be in higher quality
lithium <@!532010383041363969> I understand, thank you very much ๐Ÿ™‚ and av1 have different palette mode, so complex... Page5: In AV1 [4], luma palette mode and chroma palette mode are determined independently so separate palettes are used. Up to 8 entries are allowed for each palette coded mode, which can be either predicted from neighbouring used palette colors or signalled for the delta part from the predictor. The index map coding follows a diagonal scan order as shown in Fig. 8. For each index, it is coded using it top and left neighbouring indices (when available) as context. Unlike in HEVC SCC and VVC, where no residue coding is applied to a palette coded block, transform coding and quantization is applied to the residue block in AV1 palette mode, just like the other intra prediction modes. https://arxiv.org/ftp/arxiv/papers/2011/2011.14068.pdf
2021-03-07 02:59:44
๐ŸŽจ
2021-03-07 03:01:00
I found it interesting that they use the term color cache -- I probably introduced that term for palettization related optimization in WebP lossless -- but then they use it for a single channel color
Scope
2021-03-07 07:36:28
I don't think most people want and keep bad quality art images (although there are such people too, and for someone unnoticeable artifacts = good quality). But for resized images or previews on various services (when there is also a full image in better or lossless quality) it's fine, especially with the quality that AVIF gets for not very extreme low bpp (but still below mid bpp)
2021-03-07 08:00:03
And for someone else, such as some studios, these are high-quality images of classic animation that have been given away for free use:
2021-03-07 08:00:11
2021-03-07 08:00:38
<https://www.reddit.com/r/DataHoarder/comments/lj00uv/studio_ghibli_released_400_high_quality_images/>
2021-03-07 08:01:30
But, it's something like jpeg `-q 60` converted to PNG
2021-03-07 08:10:11
And this is AVIF at low bpp https://discord.com/channels/794206087879852103/803645746661425173/817893091008184442 So the term quality is very wide and differs from person to person
_wb_
2021-03-07 08:22:00
Very true
lithium
2021-03-08 07:40:18
A little curious, I notice some site use libjpeg q80~q85 jpeg image, In jpeg xl vardct -q 80(-d 1.900) and -q 85(-d 1.450), on this distance quality should be ok(not look so bad)(medium bbp)?, or on bad side(low bbp)?
Deleted User
2021-03-08 08:14:04
-d 2 is definitely not low bpp
2021-03-08 08:14:29
I'd call it medium-high (correct me if I'm wrong)
_wb_
2021-03-08 08:16:11
Everyone has their own taste in these things. My taste is like this: - cjxl -q 95 (-d 0.55): very high fidelity, good for archival if lossless is not needed - cjxl -q 90 (-d 1): high fidelity, can be used on the web if fidelity matters more than usually, e.g. product images of a webshop selling clothes with subtle textile textures - cjxl -q 80 (-d 1.9): medium-high fidelity, 'good' for the web (default web quality) - cjxl -q 70 (-d 2.8): medium fidelity, 'ok' for the web (when lower bpp is needed for whatever reason, e.g. bandwidth is an issue for client and/or server) - cjxl -q 60 (-d 3.7): medium-low fidelity, can be used on the web if fidelity doesn't matter much, e.g. preview thumbnails - cjxl -q 50 (-d 4.6): low fidelity, roughly the lowest fidelity target I consider 'normal use' for still image codecs - cjxl -q 30 (-d 6.4): very low fidelity, not really useful in any 'normal' use cases - cjxl -q 10 (-d 12.65): ultra low fidelity, nobody wants to do that to an image <-- this is what people tend to look at to compare codecs
lithium
2021-03-08 08:19:45
<@456226577798135808> <@!794205442175402004> Thank you very much, those advice is very useful ๐Ÿ™‚
Pieter
2021-03-08 08:28:23
What is the formula for the mapping between -q and -d? It looks linear (0.9 d/q), except below 30 q.
veluca
2021-03-08 08:42:02
``` if (quality >= 30) { params.butteraugli_distance = 0.1 + (100 - quality) * 0.09; } else { params.butteraugli_distance = 6.4 + pow(2.5, (30 - quality) / 5.0f) / 6.25f; } ```
2021-03-08 08:42:43
at least down to q7, after that it switches to modular and that doesn't define a distance at all
2021-03-08 08:42:53
(it probably should use the distance too though at some point)
Deleted User
2021-03-08 08:47:13
<@!179701849576833024> is that correct?
2021-03-08 08:48:52
The Y-scale could be better, but at least the plots should be right.
Crixis
2021-03-08 09:08:57
For me 0.3.3 is a big step in -d 6 range, all strange colorful rigging is vanish in my test images
_wb_
2021-03-08 09:11:49
This quality -> distance mapping roughly corresponds to trying to match the average Butteraugli pnorm distance that libjpeg produces for a given `-quality`. So on average, roughly speaking, `cjxl -q 80` and `cjpeg -quality 80` should produce more or less similar-visual-quality images, with the caveat that in the case of cjxl, there will be way less image-dependent (or even image-region-dependent) fluctuation in actual visual quality than in the case of cjpeg (where `-quality 80` can be very good for, say, grass and trees, but very poor for, say, subtle red textures).
Crixis
Crixis For me 0.3.3 is a big step in -d 6 range, all strange colorful rigging is vanish in my test images
2021-03-08 09:12:49
left -d 6, right -d 2 with more rigging to me
Deleted User
2021-03-08 09:17:42
-d 2 has more details on the other hand, but indeed it has more ringing
Crixis
-d 2 has more details on the other hand, but indeed it has more ringing
2021-03-08 09:24:27
d 2 is clearly better (and more then double size) but make this strange multicolor texture on slow gradient that is sorta visible also from no zoom if you know where see
veluca
<@!179701849576833024> is that correct?
2021-03-08 09:34:50
seems correct, yes
Crixis d 2 is clearly better (and more then double size) but make this strange multicolor texture on slow gradient that is sorta visible also from no zoom if you know where see
2021-03-08 09:35:09
probably less filtering, choosing the best balance is a bit of an art
Crixis
2021-03-08 09:38:11
left s 9 right s 7
2021-03-08 09:38:25
s 7 seam better to me
_wb_
2021-03-08 09:40:31
hard to say for me which looks better, they are mostly just different (have problematic artifacts in different parts)
2021-03-08 09:41:00
in general, I would not assume that speed 9 is always better than speed 7
2021-03-08 09:41:51
speed 7 gets more attention, that's what always happens with default speeds
Crixis
_wb_ hard to say for me which looks better, they are mostly just different (have problematic artifacts in different parts)
2021-03-08 09:49:14
I can't see -s 7 -d 2 rigging from no zoom but I can -s 9 -d 2 rigging because it is in square shape
2021-03-09 03:30:37
0.3.3 on anime at -d 6 VARdct is better then lossy-modular (Q45)
2021-03-09 03:32:48
but at -d 1 I fell modular -Q 90 be better on anime
Scope
2021-03-11 02:48:21
Some lossy and near lossless comparisons: ``` avif (q19) 183 856 avif (q26) 143 557 jxl (lossy-palette -s 9) 217 250 jxl (lossy-palette -s 9 -P 0) 215 841 jxl (lossless -s 9) 442 330 jxl (--epf=0 -d 0.3 -s 8) 376 604 jxl (--epf=0 -d 0.5 -s 8) 279 388 jxl (-d 1 -s 8) 186 040 webp (-near_lossless 60) 460 104 ```
2021-03-11 02:48:31
Source
2021-03-11 02:48:45
AVIF (q19)
2021-03-11 02:49:10
AVIF (q26)
2021-03-11 02:49:24
WebP (nl 60)
2021-03-11 02:50:19
JXL (lp P0)
2021-03-11 02:50:40
JXL (d 1)
2021-03-11 02:50:55
JXL (d 0.3)
Crixis
2021-03-11 02:53:54
jxl -d 0.3 size?
fab
2021-03-11 02:59:02
thanks
Crixis
2021-03-11 02:59:32
to me jxl -d 1 do a good work in this, only the small rigging near the line at 300% size
Scope
2021-03-11 03:08:32
Lossy palette is quite noticeable when zoomed in, but in normal viewing it is not so obvious JXL (lp -P 0)
2021-03-11 03:10:29
WebP NL60 (much less visual differences)
2021-03-11 03:14:57
And -d 1 still has some ringing artifacts
2021-03-11 03:16:18
AVIF (q19)
2021-03-11 03:21:30
And they are noticeable even with -d 0.3/0.5 when comparing with flipping
2021-03-11 03:22:28
However, AVIF also loses detail and smoothes at higher bitrates, as well as at lower ones
2021-03-11 04:12:11
PixelArt ``` avif (q19) 76 127 avif (q26) 66 854 jxl (lossy-palette -s 9) 260 571 jxl (lossy-palette -s 9 -P 0) 256 106 jxl (lossless -s 9) 82 098 jxl (--epf=0 -d 0.3 -s 8) 350 503 jxl (--epf=0 -d 0.5 -s 8) 258 603 jxl (-d 1 -s 8) 167 342 webp (-near_lossless 60) 198 610 ```
2021-03-11 04:12:23
Source
2021-03-11 04:12:42
AVIF (q19)
2021-03-11 04:12:58
AVIF (q26)
2021-03-11 04:13:58
WebP (NL40)
2021-03-11 04:14:19
JXL (LP -P 0)
2021-03-11 04:14:34
JXL (-d 1)
2021-03-11 04:14:48
JXL (-d 0.5)
2021-03-11 04:15:06
JXL (-d 0.3)
2021-03-11 04:16:49
Lossy palette
2021-03-11 04:17:57
WebP (NL)
2021-03-11 04:24:34
JXL lossy palette - there are visible differences AVIF has less pixel smoothing than JXL -d 1, also less size And lossless is more effective than all lossy modes (which also have a noticeable visual difference), except AVIF (but it is also visually different and smooths out pixels even when the bitrate is increased)
2021-03-11 04:32:09
So even for the Web for this kind of content I would prefer lossless, maybe in the future JXL will have other near lossless modes, but at the moment lossy palette is not very suitable for this
lithium
2021-03-11 04:41:29
jxl -d 1.0 s 7 will increase file size (119KB => 182KB).
2021-03-11 04:44:08
For PixelArt content probably need local palette?
Scope
2021-03-11 04:47:23
Probably something like WebP NL, but it also sometimes has noticeable differences and is not always more efficient
_wb_
2021-03-11 04:50:08
It should be possible to do just regular lossless but make it behave a bit lossy
Scope
2021-03-11 04:59:01
If it will be possible with minimal visual loss for any content, then yes, although this can be checked afterwards with some metrics and only then make a decision (but as far as I know usually near lossless methods are not very good for metrics)
Master Of Zen
2021-03-13 02:41:22
I found good testing material
2021-03-13 02:41:22
https://upload.wikimedia.org/wikipedia/commons/9/96/The_Garden_of_earthly_delights.jpg
2021-03-13 02:41:36
`JPEG Image, 39137 ร— 22279 pixels`
paperboyo
Master Of Zen I found good testing material
2021-03-13 02:43:07
Yeah, also used them for testing. Sadly none go over ~32k~ pixels longer side [EDIT: or, maybe, it was 65k? https://commons.wikimedia.org/wiki/File:Portr%C3%A4t_des_Herzog_von_Mantua_Vincenzo_I_von_Gonzaga.jpg]: https://commons.wikimedia.org/wiki/Category:Gigapixel_images_from_the_Google_Art_Project
Master Of Zen
2021-03-13 02:55:28
2021-03-13 02:55:32
fab
2021-03-13 06:33:32
for %i in (C:\Users\User\Documents\f\*.png) do cjxl "%i" "%i.jxl" -s 3 -P 4 -I 0.334 -m --mquality=82.78 --num_threads=2
2021-03-13 06:33:52
2021-03-13 06:33:53
2021-03-13 06:34:59
jpeg xl quality is still a bit low
2021-03-13 06:35:42
the text is too zig zag
2021-03-13 06:37:13
the original source is obviously a webp from youtube yt music
2021-03-13 06:39:13
not sure if the orders of the cmd is right
2021-03-13 06:42:53
i think is not too bad
_wb_
2021-03-13 06:57:11
Why do you use modular?
Pieter
2021-03-24 06:06:24
you can't compare compression artefacts between different codecs
2021-03-24 06:06:45
whatever cjxl produces, it's probably going to look very different
diskorduser
fab the original source is obviously a webp from youtube yt music
2021-03-24 06:54:10
Why did you use lossy format as source image
Scope
2021-03-24 07:00:45
Because it's no fun and it takes very little time to compress a good quality image and get the result without visual differences using a minimum number of encoder options, it's much more interesting to choose from a billion different options while compressing a bad image and spend hours on choosing from different kinds of artifacts
_wb_
Scope Because it's no fun and it takes very little time to compress a good quality image and get the result without visual differences using a minimum number of encoder options, it's much more interesting to choose from a billion different options while compressing a bad image and spend hours on choosing from different kinds of artifacts
2021-03-24 07:10:49
https://c.tenor.com/3DeS-m1u6_AAAAAM/yoda-sarcasm.gif
Scope
2021-03-24 07:18:18
Only half, but when there is a lot of time and enthusiasm people usually do something like this (sometimes it's just a waste of time, but sometimes it can lead to something) It would be better if it goes in a productive direction more often, but
fab
diskorduser Why did you use lossy format as source image
2021-03-24 07:53:52
i don't want to re encode
2021-03-24 07:54:03
i want to encode all my png at this quality
2021-03-24 07:54:09
taken from RAWs
2021-03-24 07:54:19
which distance to use
diskorduser
fab which distance to use
2021-03-25 02:41:26
0.7 to 1
Deleted User
2021-03-25 02:59:04
And higher `--target_nits`, because you'll probably edit those RAWs and lower target_nits will mean worse quality in the shadows even at extreme VarDCT qualities.
fab
2021-03-25 06:17:39
ok
diskorduser
2021-03-25 07:06:01
What help do you want.
2021-03-25 07:11:43
I use esrgan (dejpeg or 2x scale) to upscale lossy images and downscale them again to original size and convert them to jxl. It gives better quality and compression.
Crixis
2021-03-25 08:27:22
-I 4.41 have no sense, also -g 2 it is not the default?
Jim
2021-03-25 09:06:54
The q (lowercase) and Q (uppercase) are different. The lowercase q is for the quality of a VarDCT lossy while the uppercase Q is for making a modular output lossy.
fab
2021-03-26 08:33:46
honestly modular is for quali ty, vardct for fidelity but too options can cause future decoders to be broken with certain newer encoder versions
_wb_
2021-03-26 08:36:34
the bitstream is standardized so a decoder that fully implements the standard (which we will have with libjxl 0.4) can decode anything encoded by any encoder version
2021-03-26 08:38:07
as for encoder options: our goal is to need as few of them as possible. Ideally, you only need to do `cjxl input.whatever output.jxl` and it does something good.
2021-03-26 08:39:16
The options `--quality`/`--distance`, `--speed` and maybe `--progressive` are the only ones you should really need.
2021-03-26 08:40:08
And even those should be "set it and forget it", not something you have to tune for every image.
Deleted User
fab honestly modular is for quali ty, vardct for fidelity but too options can cause future decoders to be broken with certain newer encoder versions
2021-03-26 09:10:12
My `cjxl_auto.sh` script is one *really small* step, but still: a step closer to full automation. The encoder is planned to be intelligent enough to know the best encoding parameters **better than us**. And Fabian, don't worry about decoders breaking down, there wouldn't be many options in new encoders (0.4+) that will break current decoders (โ‰ค0.3.x), the standard will get fully frozen soon ๐Ÿ˜ƒ
Scope
2021-03-26 11:27:48
fab
2021-03-26 11:40:23
for 4k
2021-03-26 11:40:48
dct sometimes are less (never)
2021-03-26 11:41:06
but is not worth it to me as i like quality, not fidelity
2021-03-26 11:41:12
even if fidelity is better
2021-03-26 11:41:22
and nor
_wb_
2021-03-26 12:08:49
`--num_threads=2.5` ๐Ÿ˜†
fab
2021-03-26 12:17:14
how to program a similar program?
2021-03-26 12:17:23
scope can you write this program?
2021-03-26 12:19:20
like without changing 0,3.6 code is it possible?
_wb_
2021-03-26 12:21:09
Choose how?
2021-03-26 12:22:01
I can make a program that always chooses the first option you give it ๐Ÿ˜…
Scope
2021-03-26 12:42:00
https://tenor.com/view/spin-spin-the-wheel-make-a-choice-random-selection-zerkaa-gif-13856034
diskorduser
2021-03-26 12:53:38
Just write a shell script or something
fab
2021-04-03 05:31:53
the quality will be degraded too
2021-04-03 05:32:38
also this is for 0.3.7 encoder, and it can't read JPG/JPEG (You should convert to png)
_wb_
2021-04-03 06:01:31
We should get some windows binaries out there, I suppose.
BlueSwordM
_wb_ We should get some windows binaries out there, I suppose.
2021-04-03 06:02:07
Indeed. Perhaps AppVeyor's build platform could be used?
_wb_
2021-04-03 06:12:27
-N is probably broken, that is an option from a long time ago
fab
2021-04-05 07:35:50
the problem with those options is that the image looks encoded good but it doesn't display well
2021-04-05 07:36:14
av1 encoding is improving even videos with 50k views from 3 days ago are getting re encoded
raysar
2021-04-07 02:53:28
Hello, is there a table benchmark between jpegxl and AVIF in lossy mode? I only see lossless benchmarks: https://www.reddit.com/r/AV1/comments/fjddcj/lossless_image_formats_comparison_webp_jpeg_xl/
Scope
2021-04-07 02:55:33
<https://www.reddit.com/r/AV1/comments/k9kq5t/updated_my_image_formats_comparison_including/> <https://eclipseo.github.io/image-comparison-web/> <https://storage.googleapis.com/demos.webmproject.org/webp/cmp/index.html>
2021-04-07 02:58:06
Because in lossy it is a very bad idea to base only on metrics, a visual comparison is required (which is also different from different people's perceptions)
2021-04-07 03:07:47
For Lossless, the only thing that matters is compression efficiency, which can be compared in numbers, smaller size - better compression (and encoding/decoding speed), the image quality is always the same
_wb_
2021-04-07 03:57:15
lossy is basically impossible to evaluate automatically. whenever someone makes the best metric ever, someone will make an encoder that optimizes for it, and soon enough you'll get images that are great according to the metric but not so great when you look at them
spider-mario
2021-04-07 04:00:08
itโ€™s kind of related to the โ€œstreetlight effectโ€: https://www.discovermagazine.com/the-sciences/why-scientific-studies-are-so-often-wrong-the-streetlight-effect
2021-04-07 04:00:31
> It is often extremely difficult or even impossible to cleanly measure what is really important, so scientists instead cleanly measure what they can, hoping it turns out to be relevant. After all, we expect scientists to quantify their observations precisely. As Lord Kelvin put it more than a century ago, โ€œWhen you can measure what you are speaking about, and express it in numbers, you know something about it.โ€ > > There is just one little problem. While these surrogate measurements yield clean numbers, they frequently throw off the results, sometimes dramatically so.
2021-04-07 04:01:37
when you have clear and โ€œobjectiveโ€ numbers, itโ€™s very tempting to optimize for them
2021-04-07 04:01:51
even if they turn out to be meaningless
2021-04-07 04:04:01
> The fundamental error here is summed up in an old joke scientists love to tell. Late at night, a police officer finds a drunk man crawling around on his hands and knees under a streetlight. The drunk man tells the officer heโ€™s looking for his wallet. When the officer asks if heโ€™s sure this is where he dropped the wallet, the man replies that he thinks he more likely dropped it across the street. Then why are you looking over here? the befuddled officer asks. Because the lightโ€™s better here, explains the drunk man.
raysar
2021-04-07 04:43:47
So how do you know jxl is better than avif in high bpp? Only watching it? Metrics can't be perfect but we need a math base for comparison. A butteraugly and psnr benchmark could be interesting. ( in video psnr is a useful metric in all reviews) Visually on photography i prefer avif even at "hight" bpp (>1) because there is no dct artifacts, but little noise filter. Maybe we need to create a big evaluation by people to know what is the average preference of people. How we can convince that people using jxl againt avif, thinking that avif have better compression efficiency? (apart from talking about advanced features of jxl)
Crixis
raysar So how do you know jxl is better than avif in high bpp? Only watching it? Metrics can't be perfect but we need a math base for comparison. A butteraugly and psnr benchmark could be interesting. ( in video psnr is a useful metric in all reviews) Visually on photography i prefer avif even at "hight" bpp (>1) because there is no dct artifacts, but little noise filter. Maybe we need to create a big evaluation by people to know what is the average preference of people. How we can convince that people using jxl againt avif, thinking that avif have better compression efficiency? (apart from talking about advanced features of jxl)
2021-04-07 04:45:47
subjective study on a lot of people
_wb_
2021-04-07 04:47:32
We do often look at metrics too (I mostly look at Butteraugli, HDR-VDP, DSSIM and SSIMULACRA), but you just have to understand that metrics are not the same as actual humans.
2021-04-07 04:49:49
Relying on codecs to do noise filtering is like viewing sRGB images on a P3 screen without doing any color management because you like the extra saturation...
Crixis
2021-04-07 04:53:42
i need to reduce the number of colors --> gif
raysar
Scope <https://www.reddit.com/r/AV1/comments/k9kq5t/updated_my_image_formats_comparison_including/> <https://eclipseo.github.io/image-comparison-web/> <https://storage.googleapis.com/demos.webmproject.org/webp/cmp/index.html>
2021-04-07 04:59:26
Here i can say that avif is better at tiny and small, medium i prefer avif (but it depend of picture, on the asian girl picture, jxl is way better) in large it's very similar, jxl have better small texture but dct artifacts if we zoom, in big jxl win against details. https://eclipseo.github.io/image-comparison-web/#japan-expo*2:1&AOM=m&JXL=m&subset1 What is about you? (for me the noise reduction in big avif is a bad tuning of the encoder)
BlueSwordM
raysar Here i can say that avif is better at tiny and small, medium i prefer avif (but it depend of picture, on the asian girl picture, jxl is way better) in large it's very similar, jxl have better small texture but dct artifacts if we zoom, in big jxl win against details. https://eclipseo.github.io/image-comparison-web/#japan-expo*2:1&AOM=m&JXL=m&subset1 What is about you? (for me the noise reduction in big avif is a bad tuning of the encoder)
2021-04-07 05:02:07
To be fair, enable `-a aq-mode=1 -a enable-chroma-deltaq=1` in avifenc using libaom, and see the image coding performance improve considerably at medium bpp. At higher bpp though, JPEG-XL wins massively in terms of single threaded encoding and decoding.
Scope
2021-04-07 05:07:04
This is the difference in human perception, I have not made comparisons with the latest versions, but usually by Butteraugli metric at bpp above 0.7-0.8 -- JXL almost always wins, also by my personal visual comparison with AVIF sometimes even at very high bpp can not get close to the original image quality, it washes and removes so many details, I do not want to use the encoder as an image filter for that there are other tools, I want to keep the original quality For low bitrates AVIF is better (although JXL will have improvements for that in the future), images also still remain far from the original, but it does not show artifacts and is more pleasant to view
2021-04-07 05:08:41
For non-photographic images and anime-type images, AVIF also currently has a big advantage at low to medium bitrates
2021-04-07 05:15:26
Personally, I am almost not interested in extreme lossy compression, when it comes to choosing who works better with filters and is good at hiding artifacts, I prefer a quality close to the original, almost without visual losses (without using zooming or pixel-hunting)
2021-04-07 05:25:19
About the metrics (I didn't really look at them, also here are not the best source images for such a comparison) <https://eclipseo.github.io/image-comparison-web/lossy_results.html>
2021-04-07 05:25:46
2021-04-07 05:28:07
With increasing bpp, JXL has a significant gap (but keep in mind that it was tuned for Butteraugli)
_wb_
2021-04-07 05:33:01
Yes, Butteraugli is a good metric but comparing a codec that is tuned for it to one that isn't is not quite fair
Deleted User
2021-04-07 05:34:04
Both SSIMULACRA and DSSIM show quite well the "intersection point" at higher bpp where JPEG XL starts being better than AVIF (AOM)
2021-04-07 05:34:19
https://eclipseo.github.io/image-comparison-web/subset1.ssimulacra.(aom,bpg,jxl,mozjpeg,rav1e,svt-av1,webp,webp2).svg
2021-04-07 05:34:25
https://eclipseo.github.io/image-comparison-web/subset1.dssim.(aom,bpg,jxl,mozjpeg,rav1e,svt-av1,webp,webp2).svg
_wb_
2021-04-07 05:34:41
Also making such aggregated plots can be a bit deceiving, it's usually better to look image by image
Scope
2021-04-07 05:49:50
It is also possible to take the best features of the two formats, use AVIF for low bitrates and previews (especially art images with sharp lines) and JXL for higher
2021-04-07 07:16:04
Btw, according to VMAF, JXL has the worst quality, worse even than all old formats on all bpps
Deleted User
2021-04-07 07:16:40
Is VMAF stupid or something? Lmao
Scope
2021-04-07 07:18:34
VMAF is not suitable as a metric for still images, even its name is **Video ** Multimethod Assessment Fusion
_wb_
2021-04-07 07:33:20
VMAF looks at YCbCr and PSNR, which is basically what old codecs work in and optimize for
raysar
Scope Btw, according to VMAF, JXL has the worst quality, worse even than all old formats on all bpps
2021-04-07 08:02:29
vmaf seem to be a stupid metric, jxl is ALWAYS better than mozjpeg in any case in any image. Is there a psnr graphic?
_wb_
2021-04-07 08:03:15
psnr is also a stupid metric
Scope
2021-04-07 08:03:26
<https://eclipseo.github.io/image-comparison-web/lossy_results.html>
2021-04-07 08:20:31
But, for video, VMAF is considered by many people to be the most modern and good metric, at least of those that are freely available (unfortunately I also notice a lot of advice from different people to use VMAF for still images as well, because it is modern, advanced and Netflix is a big company) PSNR is also not suitable as a good metric for comparing quality (although I know it can be useful and is used to compare some of the encoder tools)
BlueSwordM
2021-04-07 08:22:57
> a lot of advice from different people to use VMAF for still images as well, because it is modern, advanced and Netflix is a big company
2021-04-07 08:23:08
<:ReeCat:806087208678588437>
Scope
2021-04-07 08:30:48
Last time I saw a discussion about this article and that DSSIM is bad and old, but if the author had used a more modern VMAF, the results would have been more reliable and truthful (I can't quote directly since it was not a public discussion) <https://siipo.la/blog/is-webp-really-better-than-jpeg>
raysar
2021-04-07 08:56:27
Wow ok i'm shocked about the result. Psnr is good when comparing video complexity algorithm, also in video there is tuning for better visual quality but psnr is a good math ref. There is no psnr tuning in image codec? https://eclipseo.github.io/image-comparison-web/subset1.psnr-hvs.(aom,bpg,jxl,mozjpeg,rav1e,svt-av1,webp,webp2).svg
Pieter
2021-04-07 08:58:09
psnr doesn't take any human perception into account
2021-04-07 08:58:53
it's a metric for accuracy in the color space domain, but humans don't perceive all deviations there as equally important
2021-04-07 09:00:22
if you're optimizing for anything else than psnr, psnr is going to suffer
raysar
2021-04-07 09:01:18
ok, but mozjpeg better in psnr at low bpp is very strange, jpeg complexity is very low. Maybe i'm biased by codec video, with many tuned preset, nobody compare visual tuned preset in psnr ๐Ÿ˜„
Master Of Zen
Pieter if you're optimizing for anything else than psnr, psnr is going to suffer
2021-04-07 10:58:49
one of the AV1 devs said: "If your optimizations don't damage PSNR, you do something wrong"
Scope
2021-04-07 11:06:27
<https://web.archive.org/web/20141103202912/http://x264dev.multimedia.cx/archives/472>
2021-04-07 11:06:56
Pieter
2021-04-08 12:00:38
<@231086792315633664> I think the point is that PSNR is a very *simple* metric, and that if you have two encoder settings that optimize for the same thing (even if not PSNR), but with different bitrates, PSNR will give you an idea of how much better one is than the other.
2021-04-08 12:00:53
But if things optimize for different things, you can't compare PSNR across them.
2021-04-08 12:01:59
It's like observing that cars with more cylinders in their engines go faster, and then concluding that semi trucks must be faster than cars.
2021-04-08 12:03:46
Sure, within the same class of vehicle more cylinders in the engine is correlated with being faster. But it's still measuring something fundamentally different.
fab
2021-04-08 05:06:08
2021-04-08 05:07:30
raysar
2021-04-10 02:30:14
I'm studing this comparison test https://eclipseo.github.io/image-comparison-web The encoding params for jxl are not good ... it's the default, so it's -s 7 ... (i'm not benchmark avif time encoding). If we change to -s 9 -E 3 image is a better. https://github.com/eclipseo/image-comparison-sources/blob/master/recipes.json I do some manual test and i find a solution to upgrade quality to lower image quality, adding a little blur to the source image ๐Ÿ˜„ "magick.exe in.png -blur 0x0.3 out.png" for medium and small, (i'm shure if i denoise image we can be better than avif in small and tiny image :D) I need to generate my website version to show us results ^^
2021-04-10 02:46:26
For the same size with blur, we switch to -d 5.1 to -d 4.9 in the small seikima picture.
Scope
2021-04-10 02:47:36
All formats use the default settings (although this is also not entirely fair, for example AVIF encoding is much slower than other formats), but this at least compares their most common use case
raysar
2021-04-10 02:49:53
yes but we need to compare avif and jxl to the max quality. And in an other time to the same time encoding. Never to the default setting, it's stupid, like comparing TV to the default color setting in store ๐Ÿ˜„
Scope
2021-04-10 02:56:08
Yes, it would be more correct to compare with one encoding speed or maximum possible quality, but this is also not a bad test, a lot of people usually just use the default settings (since the maximum ones are usually much slower and the fast ones have worse quality)
zebefree
2021-04-10 02:59:21
Usually images are encoded once and viewed many times, so why wouldn't you encode with the best/slowest encode?
raysar
2021-04-10 03:00:05
We know that all people looking for benchmark now are choosing a codec for quality not for speed. We need to defend jxl to be the best for the web at social media image bpp.
Scope
2021-04-10 03:09:58
Because modern formats have become quite slow and very often required to get the encoding result as quickly as possible or not to unnecessarily waste computing power, because usually the default settings are the most optimal in terms of speed and quality Lossy Jpeg XL also mostly not tuned to other settings besides defaults and slower speed very rarely gives better result (and sometimes it is even worse)
2021-04-10 03:19:44
This also applies to the encoding settings on the various services (they very rarely use the slowest ones, except for old formats like JPEG, but mostly use something more optimal)
raysar
2021-04-10 03:21:40
Now we are in the step to convince people that jxl is the BEST image format (best than avif) fort all level of quality, nothing else matter ๐Ÿ˜„
2021-04-10 03:23:02
if I can do it on github I will make a webpage with different jxl encoding parameters to verify it.
Scope
2021-04-10 03:23:25
Not on low bitrates at the moment, especially on art/anime content (at any settings)
raysar
2021-04-10 03:24:36
That's why we need to add an extra denoise filter before jxl encoding to beat avif :p (i want to test it :D)
Scope
2021-04-10 03:28:26
In a fair comparison, the source image must not be changed or processed (because in this case it can also be "optimized" for AVIF or other formats)
raysar
2021-04-10 03:29:34
we are in WAR ๐Ÿ‘บ
2021-04-10 03:31:46
It's not unfair, (if I had the skills) i can create an fork of the encoder and adding in the encoding process a denoiser proportionnal to the final image quality :p
Scope
2021-04-10 03:36:40
Denoising doesn't help Jpeg XL as much and it will still be worse than AVIF at a low bitrate, besides such tricks bring more mistrust to such a comparison than something good
BlueSwordM
2021-04-10 03:37:14
Also, with more advanced encoder tools, denoising would also make AVIF using aomenc-av1 perform worse.
Scope
2021-04-10 03:39:00
And for blurring JXL has `--resampling`
raysar
Scope And for blurring JXL has `--resampling`
2021-04-10 03:39:55
the smaller value is so HUGE
BlueSwordM Also, with more advanced encoder tools, denoising would also make AVIF using aomenc-av1 perform worse.
2021-04-10 03:41:37
But you see that av1 iframe have a "denoise filter" (i don't know how the code works) also at high bpp that's why jxl beat it.
BlueSwordM
raysar But you see that av1 iframe have a "denoise filter" (i don't know how the code works) also at high bpp that's why jxl beat it.
2021-04-10 03:41:59
It's more like it's tuned differently.
raysar
2021-04-10 03:43:14
https://damiencarrier.github.io/image-comparison-web/#japan-expo&AOM=l&JXL=l&subset1
2021-04-10 03:43:22
look at the large image
2021-04-10 03:43:38
turbo denoiser ๐Ÿ˜„
2021-04-10 03:44:32
But we need best avif tuning to fair comparison.
BlueSwordM It's more like it's tuned differently.
2021-04-10 03:47:43
Is there a webpage explaining how av1 iframe works?
Scope
2021-04-10 03:51:33
And also these are more recent comparisons (eclipseo is quite old) https://storage.googleapis.com/demos.webmproject.org/webp/cmp/index.html
raysar
2021-04-10 03:58:26
Yes, you can see the big denoising here in big size: https://storage.googleapis.com/demos.webmproject.org/webp/cmp/2021_03_16/index.html#eaglefairy-hst-big&AVIF-AOM=b&JXL=b&subset1
Scope
2021-04-10 04:00:49
It's not really just denoising, it's more the work of some AVIF tools and also choosing which details are more important to save
raysar
2021-04-10 04:06:15
Yes it's a very smart denoiser, but it denoise ๐Ÿ˜„ and then it remove details progressively, it's very smart !
Deleted User
2021-04-10 06:36:29
But that might actually work in JPEG XL, to remove the "worst" noise (mostly in flat areas) with a natural-looking denoiser, estimate how much noise was removed and encode that value so the decoder reapplies that noise.
Crixis
2021-04-10 06:43:08
We need to wait for cjxl 0.4, core dev are working on blocks heuristics
paperboyo
raysar yes but we need to compare avif and jxl to the max quality. And in an other time to the same time encoding. Never to the default setting, it's stupid, like comparing TV to the default color setting in store ๐Ÿ˜„
2021-04-10 11:38:19
_ Never to the default setting, it's stupid, like comparing TV to the default color setting in store_ FWIW, I agree the codecs should be pushed to the max in a useful comparison. I donโ€™t even know what a _default setting_ isโ€ฆ That said, I also agree with _ the source image must not be changed or processed_ Otherwise, we would be comparing these TVs with only a specific movie we know looks best on one of them. Also, not sure _war_ is a useful metaphor. More like a dress rehearsal. I mean, I have utmost respect for all the skillful taylors and their revolutionary, flexible fabrics, but with all due respect, itโ€™s not even about the actors, let alone about the costumes. Itโ€™s about the show.
_wb_
2021-04-10 11:47:58
An image codec should not be something many people have strong feelings about in some 'codec war'. It should just be something that doesn't get in your way, that is transparent, that just does its job of saving storage and bandwidth without any observable degradation. It's a good thing if it's something you don't have to care about.
paperboyo
2021-04-10 11:55:45
Also, lastly, about denoising specifically. My main interest and huge excitement in new codecs (all of them!) is their use on the web. I get all the other use cases which are different and useful too, but Iโ€™m not at all excited about being able to reencode all my locally stored photographs to a new, more efficient, lossless format. Who cares: storage is cheap (check if Iโ€™m not Google). Webโ€ฆ thatโ€™s a different story! So for me, only one quality setting really matters: _take as much time as you want and then give me the pic at the quality where it only **just** starts to look shit. Maybe take one tiniest step back, maybe not._ Any other quality setting is a total waste of time. Also, I know it may not be a popular opinion, but I prefer artifacts that suggest there was detail there to a fake obliteration. So in this comparison, JXL wins with AVIF for me:
2021-04-10 11:56:49
^ https://storage.googleapis.com/demos.webmproject.org/webp/cmp/2021_03_16/index.html#2011-03-05-03-13-madeira-159-funchal-mercado-dos-lavradores&AVIF-AOM=t&JXL=t&subset1
Jim
_wb_ An image codec should not be something many people have strong feelings about in some 'codec war'. It should just be something that doesn't get in your way, that is transparent, that just does its job of saving storage and bandwidth without any observable degradation. It's a good thing if it's something you don't have to care about.
2021-04-10 11:56:53
Sadly I feel there likely will be a format war once they start being widely supported. The good thing is that I feel JXL is in the best position with the best set of features (speed, responsive/progressive encoding, JPG transcoding) and widest range of quality that work well will put it in a good position to be the primary replacement for JPG, PNG, and GIF. I feel the major downside is that many don't yet know about it or confuse it with one of the older JPEG editions.
paperboyo Also, lastly, about denoising specifically. My main interest and huge excitement in new codecs (all of them!) is their use on the web. I get all the other use cases which are different and useful too, but Iโ€™m not at all excited about being able to reencode all my locally stored photographs to a new, more efficient, lossless format. Who cares: storage is cheap (check if Iโ€™m not Google). Webโ€ฆ thatโ€™s a different story! So for me, only one quality setting really matters: _take as much time as you want and then give me the pic at the quality where it only **just** starts to look shit. Maybe take one tiniest step back, maybe not._ Any other quality setting is a total waste of time. Also, I know it may not be a popular opinion, but I prefer artifacts that suggest there was detail there to a fake obliteration. So in this comparison, JXL wins with AVIF for me:
2021-04-10 12:04:33
> *I prefer artifacts that suggest there was detail there to a fake obliteration.* Fully agree, though I would probably never use tiny. I would always use medium and higher. I do like the progressive encoding of JXL so if speed queries ever become a thing I could use that to have the download stop at a tiny quality level would be great. https://css-tricks.com/bandwidth-media-queries/
_wb_
2021-04-10 12:05:26
Yes, there is some PR work needed, at least among web devs and image/photo professionals, to make sure everyone knows jxl exists
2021-04-10 12:06:02
I like to call it jxl and not JPEG XL to reduce the confusion with the old jpeg
Jim
2021-04-10 12:09:14
I've been suggesting it on Twitter to people who talk about different codecs or image formats in general. The biggest responses I get are that they either didn't know about XL or thought it was XR. I typically use both JXL and JPEG XL so they know the long and short names and let them know it's the successor to JPEG.
_wb_
2021-04-10 12:11:21
The confusion with XR is a thing indeed
2021-04-10 12:13:11
Also the jokes about "extra large"...
2021-04-10 12:14:21
The funny thing is, the name was chosen by those who made the call for proposals, not by those who actually made the codec
Jim
2021-04-10 12:14:22
Not seen those, but I have seen people saying it means extra light.
fab
2021-04-10 12:46:24
i like also JXL
2021-04-10 12:46:33
ji ex sell
raysar
2021-04-10 12:46:36
jxl or JXL on internet? I prefer force all people writing JXL, it's more visual.
fab
2021-04-10 12:47:36
.jxl
2021-04-10 12:47:42
is the right
2021-04-10 12:47:48
at least is one
2021-04-10 12:47:56
we don't want .jpg .jpeg
2021-04-10 12:47:59
confusion
_wb_
2021-04-10 12:50:14
It's `image/jxl` and `.jxl`
2021-04-10 12:52:04
When talking about it, it's JPEG XL or JXL (capital letters make more sense in a sentence imo, like GIF and PNG or HEIC and AVIF)
fab
2021-04-10 12:52:11
so are two
2021-04-10 12:52:16
not only .jxl
2021-04-10 12:52:23
https://discord.com/channels/794206087879852103/803645746661425173/830424436171341864
_wb_
2021-04-10 12:52:47
There is only one filename extension
2021-04-10 12:53:31
Question is: how to pronounce it
2021-04-10 12:53:56
. jpg/.jpeg is always "jay peg"
2021-04-10 12:54:20
How should we pronounce .jxl?
fab
2021-04-10 12:54:28
how is jyrki pronounced
2021-04-10 12:55:13
yorki
improver
2021-04-10 12:55:57
jayksel
fab
2021-04-10 12:57:04
alaqรนgliala
2021-04-10 12:57:12
or alaqugliร la
2021-04-10 12:57:37
https://forvo.com/word/jyrki_alakuijala/
Jim
2021-04-10 12:57:48
That seems like the j is silent so it would just be excel.
fab
2021-04-10 12:57:49
he said yerki
2021-04-10 12:58:11
right
2021-04-10 12:58:15
is not jyrki
2021-04-10 12:58:21
is yrki
2021-04-10 12:58:27
not is not jayexcel
2021-04-10 12:58:33
but excel
_wb_
2021-04-10 01:01:20
yeecksle
fab
2021-04-10 01:01:30
pickle
2021-04-10 01:01:48
ji ex sell
2021-04-10 01:01:52
g ex sell
2021-04-10 01:02:07
ask IPA
Jim
2021-04-10 01:05:13
I put it in Google Translate to see if it would give a pronunciation but it just spelled it ๐Ÿ˜†
raysar
2021-04-10 01:12:30
In french we can say that, it sound great ๐Ÿ˜„
Jim
2021-04-10 01:14:22
jeeksel is a good one
2021-04-10 01:16:23
I still feel saying jeksel is faster, more modern, and sleek than saying "jay ex el"
raysar
2021-04-10 01:17:42
nobody say J P E G, all people say jaypag
fab
2021-04-10 01:19:10
raysar
2021-04-10 01:20:38
i'm thinking about in english if we say i like in the work "like" or as a "hey"
fab
2021-04-10 01:22:05
Ji X รฉl
2021-04-10 01:22:08
like this
2021-04-10 01:22:26
or gi X elle
raysar
2021-04-10 01:23:12
fab
2021-04-10 01:23:15
these sounds more phonetically correct to me
raysar
2021-04-10 01:23:17
fab
2021-04-10 01:23:31
no jackson no
2021-04-10 01:23:59
JAY EX SELL
2021-04-10 01:24:04
is the right pronunciation
2021-04-10 01:24:08
just don't worry
raysar
2021-04-10 01:28:17
japan is great ๐Ÿ˜„
fab
2021-04-10 01:28:37
goood benchmarks<:SadOrange:806131742636507177>
raysar
2021-04-10 01:29:53
how you made this, what you wrote it and where?
2021-04-10 01:30:35
i thought the extension was jay รจx รจl and jรจi-xsl
2021-04-10 01:31:28
this is getting too confusing
2021-04-10 01:31:35
we can stop
raysar
fab how you made this, what you wrote it and where?
2021-04-10 01:32:40
i'm writing in phonetic in google translate ๐Ÿ˜„ "jixel"
2021-04-10 01:32:57
italian benchmark
fab
2021-04-10 01:37:48
2021-04-10 01:37:53
how is my pronunciation
2021-04-10 01:38:48
english was
raysar italian benchmark
2021-04-10 01:38:59
no
2021-04-10 01:40:19
then do the same in spanish
2021-04-10 01:41:12
2021-04-10 01:41:20
then spanish g x l is right
2021-04-10 01:42:35
i wrote .jxl in english google translate
2021-04-10 01:42:44
pronunciation is very clear compared to me
2021-04-10 01:43:24
or is only a single word
2021-04-10 01:43:27
punto gekisele punto jota - ekisele
2021-04-10 01:43:40
dot da. jEiExEl
2021-04-10 01:45:44
punto gei ix elle
_wb_
2021-04-10 01:46:19
The J like in spanish
fab
2021-04-10 01:46:23
It's jota
_wb_
2021-04-10 01:47:12
Hicksรจl
fab
2021-04-10 01:47:48
this is polish
_wb_
2021-04-10 01:48:04
I think it should rhyme with pixel
fab
2021-04-10 01:48:38
so punto jota - ekisele
2021-04-10 01:49:15
this confused me
_wb_
2021-04-10 01:49:17
Either djixel or yixel, I guess
Deleted User
2021-04-10 01:50:00
Maybe move this discussion to <#794206087879852106>?
Jim
raysar
2021-04-10 02:40:45
This is mostly how I pronounce it but with more of an "e" than an "i" after the j.
raysar
2021-04-10 05:44:42
I denoise with camera raw (level 100) and the i encode in low quality 72kb target. You can see it's visual better than default encoder. I do the test in realistic quality, small target, not tiny as here. In medium jxl is better ๐Ÿ˜„
2021-04-10 06:05:43
Denoise with camera raw level 25. at -d3.5 denoise before is visual better without artifacts.
2021-04-10 06:11:02
To reduce image size denoising is better than reducing quality. It's for extreme reduction for website or for keeping the full resolution of 24mpx camera withour resizing.
fab
raysar I denoise with camera raw (level 100) and the i encode in low quality 72kb target. You can see it's visual better than default encoder. I do the test in realistic quality, small target, not tiny as here. In medium jxl is better ๐Ÿ˜„
2021-04-10 06:34:09
do you remember the settings it looks good
2021-04-10 06:34:16
how to install camera raw
raysar
2021-04-10 06:56:30
it's free like adobe bridge, when you use their download installer. If not i'm using photoshop and lightroom, it's integrated in.
2021-04-10 07:19:25
Yes i denoise before encoding.
fab
2021-04-10 08:05:29
i don't understand the need of denoising, applying filters after encoding, lowering brightness (nits) of image with filters
2021-04-10 08:05:38
like i agree with scope
2021-04-10 08:06:14
i never used ssimulacra, the last time was in september 2020 and i had 0.140 ssimulacra
2021-04-10 08:06:18
too high
2021-04-10 08:11:28
2021-04-10 08:11:45
this is probably best settings to reduce music cover art
2021-04-10 08:13:01
as you can see it didn't reduced the space of the male image
2021-04-10 08:13:17
jpeg lossless recompression is more powerful
2021-04-10 08:16:57
also this was because there located area encoding
2021-04-10 08:17:08
that makes thing more blurrier
2021-04-10 08:17:33
tomorrow i will measure ssimulacra of those pictures
raysar
2021-04-12 05:52:59
look, for the same size different options
2021-04-12 05:53:00
2021-04-12 05:53:32
we need to change the default params
2021-04-12 06:01:39
modular is better than -d=2.5 here ^^
2021-04-12 06:05:23
I can't use -m with -d, only with -q or --target_size, is it a bug?
BlueSwordM
raysar I can't use -m with -d, only with -q or --target_size, is it a bug?
2021-04-12 06:10:39
You need to use -Q
raysar
2021-04-12 06:12:38
why i can't use -d? it's a choice of dev?
Scope
2021-04-12 06:22:21
Because modular mode is not based on visual perception/quality and distance as VarDCT, it is just a linear mathematical value like `-Q` (quantizer) in Jpeg
Deleted User
2021-04-12 06:43:59
`-q` is universal, it gets mapped to `-d` value in VarDCT and `-Q` value in Modular by simple formulas.
raysar
2021-04-12 07:08:51
Ok thank you ๐Ÿ™‚
2021-04-15 12:38:34
I have many screenshot encoded in jpeg (with dct artifacts on text), to be smaller than lossless jpeg transcode, is there a lossy modular tweek? or varDCT is better? lossy modular seem to not be a good solution.
BlueSwordM
raysar I have many screenshot encoded in jpeg (with dct artifacts on text), to be smaller than lossless jpeg transcode, is there a lossy modular tweek? or varDCT is better? lossy modular seem to not be a good solution.
2021-04-15 12:39:31
Your best bet is first to use JPEGtran to losslessly compress it then use JXL lossless transcode.
raysar
2021-04-15 12:40:09
There is a gain?
BlueSwordM
raysar There is a gain?
2021-04-15 12:40:20
Actually, yes.
2021-04-15 12:40:27
Let me get you some test images.
raysar There is a gain?
2021-04-15 12:44:07
Here is an example:
2021-04-15 12:44:16
2021-04-15 12:44:18
2021-04-15 12:44:55
The benefit is small, but it does do better.
2021-04-15 12:45:25
JPEGtran with JXL: `Compressed to 5990560 bytes (2.405 bpp).` Just JXL: `Compressed to 5990809 bytes (2.405 bpp).`
raysar
2021-04-15 12:47:44
i test it with default jpegtran, i have 0byte gain ^^
2021-04-15 12:48:29
but my original jpeg is xnviewMP with huffman optimisation ^^
BlueSwordM
2021-04-15 12:49:06
I see.
_wb_
2021-04-15 05:19:42
The only gain jpegtran can give would be from stripping metadata and things like padding bits, but it should not affect the jxl codestream, only the metadata and jpeg bitstream reconstruction data
2021-04-15 05:21:22
If you don't care about jpeg bitstream reconstruction (and if you can run jpegtran, you probably don't), you can also just do cjxl --strip and get something smaller
raysar
2021-04-15 06:21:01
What is about lossy modular, modular with -q 80 is bigger than lossless. It's not easy like varDCT ^^
_wb_
2021-04-15 06:21:46
Lossy can always be larger than lossless
2021-04-15 06:22:19
Try encoding any of those <#824000991891554375> images with lossy anything.
raysar
2021-04-15 06:32:04
So i need to use --target_size to create smaller lossy modular? The aim is to reduce size of lossy jpeg screenshot, or vardcr is "near always" the good solution for jpeg screenshot?
_wb_
2021-04-15 06:35:27
I don't know why screenshots are being made in jpeg nowadays
2021-04-15 06:36:10
Even my Android phone does that now, and I cannot seem to config it to use png instead
2021-04-15 06:36:45
It used to be common sense to make screenshots in png
Deleted User
2021-04-15 08:21:02
Neither of my previous mid-range Huaweis couldn't do that IIRC, but fortunately Samsung Galaxy Note 9 can ๐Ÿ™‚
2021-04-15 08:21:07
fab
2021-04-15 09:35:56
but is the default?
2021-04-15 09:36:07
i have a galaxy s4 and it only offers png
Fox Wizard
2021-04-15 09:39:00
Lol, that phone got released on my birthday <:Poggers:805392625934663710>
2021-04-15 09:39:46
And yes, jpg is the default on many phones sadly <a:sadd:818856865231405117>
fab
2021-04-15 09:40:16
so higher resolutions smartphone use jpg
2021-04-15 09:40:28
smartphone bigger than 16:9 use jpg
2021-04-15 09:41:23
can oppo realme make screenshot in png without lossy compression?
veluca
raysar So i need to use --target_size to create smaller lossy modular? The aim is to reduce size of lossy jpeg screenshot, or vardcr is "near always" the good solution for jpeg screenshot?
2021-04-15 09:43:20
I don't know if you can really get smaller size for JPEGs using modular - you can use varDCT with no JPEG recompression, likely it will work better
fab
2021-04-15 11:18:31
it fails with resampling
2021-04-15 11:18:39
it can't recognize resolution
2021-04-15 11:20:30
even with 29-03 build
2021-04-15 11:22:47
just this i wanted to do
2021-04-15 11:23:33
https://avif-blur-preview.glitch.me/
2021-04-15 11:23:37
https://have-you-considered-jpeg.glitch.me/
2021-04-15 11:26:23
new heuristics 0.2.0 is average but is fine for blurring
2021-04-15 11:26:24
2021-04-15 11:28:03
the images in all 2 sites are avif the source
2021-04-15 11:28:31
i think you know if there is an higher quality original, those weight 420 kb
2021-04-15 11:52:34
firefox nightly reads AVIF in all resolutions
2021-04-15 11:53:15
but i want to discuss more in off topic
YAGPDB.xyz
2021-04-15 01:26:37
Unrecognized token IDENT (`P`) in expression
fab
My `cjxl_auto.sh` script is one *really small* step, but still: a step closer to full automation. The encoder is planned to be intelligent enough to know the best encoding parameters **better than us**. And Fabian, don't worry about decoders breaking down, there wouldn't be many options in new encoders (0.4+) that will break current decoders (โ‰ค0.3.x), the standard will get fully frozen soon ๐Ÿ˜ƒ
2021-04-15 05:13:14
Which script it is?
Deleted User
fab Which script it is?
2021-04-15 05:17:56
https://discord.com/channels/794206087879852103/804324493420920833/824769691629125652
fab
2021-04-15 05:30:25
can work on windows 7?
2021-04-15 05:30:26
https://discord.com/channels/794206087879852103/804324493420920833/824769691629125652
2021-04-15 05:30:40
how to install bash and optipng
2021-04-15 05:30:57
C:\PATH_Programs
2021-04-15 05:34:31
basically wha it does?
Deleted User
fab can work on windows 7?
2021-04-15 11:21:11
Sorry, but no. You **must** use Linux (or WSL on Windows 10).
spider-mario
2021-04-16 09:25:59
I donโ€™t see anything that wouldnโ€™t work in msys2?
fab
2021-04-16 06:05:02
what it means that?
_wb_
2021-04-16 06:13:16
It means you somehow reached an encoder codepath that isn't implemented. Randomly trying experimental/expert options can do that :)
raysar
2021-04-17 06:07:29
In squoosh.app progressive option is always buggy in effort 5 and 6, seem to have an old jxl encoder.
diskorduser
_wb_ It used to be common sense to make screenshots in png
2021-04-18 11:31:29
All my Android phones take screenshots in PNG.
2021-04-18 11:38:27
Stock Android / AOSP always take screenshots in PNG.
_wb_
2021-04-18 11:41:22
What Android version are you on?
Scientia
2021-04-19 04:44:07
I use lineageOS (derived from AOSP) and I get png
190n
2021-04-19 04:45:42
i get jpegs on oxygenos (oneplus) 10.3.9
Scientia
2021-04-19 04:48:36
Example of a screenshot
diskorduser
_wb_ What Android version are you on?
2021-04-19 06:27:54
11
Scope
2021-04-21 06:49:13
<https://storage.googleapis.com/demos.webmproject.org/webp/cmp/2021_04_20/index.html>
fab
2021-04-21 07:41:05
it looks very different
2021-04-21 07:41:19
can you tell which is new version
2021-04-21 07:41:38
is it evident to you
2021-04-21 07:42:06
there is a slight color editing
2021-04-21 07:42:17
done to compress more
2021-04-21 07:42:27
even at d 1 jyri enabled something today
2021-04-21 07:44:51
it looks like pinwheels
2021-04-21 07:44:53
sometimes
2021-04-21 07:44:59
when it failed to allocate noise
2021-04-21 07:45:15
like they are exploring more lower bpp
2021-04-21 08:01:55
How to download those images
2021-04-21 08:01:57
https://github.com/eclipseo/eclipseo.github.io/tree/master/image-comparison-web/comparisonfiles/subset1/Original
Crixis
fab it looks very different
2021-04-21 08:16:28
Imagediff give litteraly no difference
fab
2021-04-21 08:17:44
cause this is not the source
2021-04-21 08:17:59
those are captured screenshot from windows
Crixis
2021-04-21 08:18:54
no one can see a difference in this screenshots because there isn't
fab
2021-04-21 08:33:01
2021-04-21 08:34:00
2021-04-21 08:34:34
https://online-image-comparison.com/
2021-04-21 08:34:38
i didn't use command line tool
2021-04-21 08:34:48
i did as you to find a imagemagick Gui
2021-04-21 08:35:05
i can't even generate the difference in png with dssim
2021-04-21 08:36:35
is mainly patch improvement
2021-04-21 08:38:52
is this true?
2021-04-21 08:38:58
or i should compare by eye
2021-04-21 08:39:05
doing with gimp or photoshop
2021-04-21 08:39:20
is there any improvement on patch or quality or only more zip compression
BlueSwordM
fab is there any improvement on patch or quality or only more zip compression
2021-04-21 08:41:23
Apparently, there's Brotli now ๐Ÿ˜›
fab
2021-04-21 08:44:31
i did ab x
2021-04-21 08:44:32
test
Scientia
2021-04-21 08:57:14
Fabian maybe you should try using deepl sometimes for translation from your native language
Scope
2021-04-21 09:13:11
The main problem is not even in English, but in a more clearly expressed thoughts and a basic understanding of some things
Scientia
2021-04-21 09:19:18
deepl translates meaning a lot better than gtranslate
2021-04-21 09:19:39
I'm just assuming that the clearness of expression is being lost a little
2021-04-21 09:19:57
And maybe his native language put through this AI would work better
Scope
2021-04-21 09:26:28
As far as I know Fabian mostly does not use automatic translators, he writes in English, but instead of writing slower, more meaningful and clearer, he rushes to write separate not very connected words and jerky thoughts
fab
2021-04-22 06:51:32
also to these options i could have lossless jpg transcode
Crixis
2021-04-22 09:10:37
I don't support the idea that some random number on parameters can boost the output visual appealing over the original
2021-04-22 09:11:21
also if it work you are faking the image
fab
2021-04-22 09:12:11
this is for graphic
2021-04-22 09:12:24
2021-04-22 09:12:57
this i use for photograph
2021-04-22 09:13:05
indipendent of the original source png jpg
2021-04-22 09:13:42
even if jpg graphic like anime/e usually i did only with modular
2021-04-22 09:14:02
and i saved space max in 15 images
2021-04-22 09:14:26
over 77+15 images
2021-04-22 09:15:13
but i also think q 90.33 is useless just use distance 1
2021-04-22 09:15:32
but i don't like the pinwheel effect and the vision of random patch
2021-04-22 09:22:24
Conversion to png with xnview
2021-04-22 09:22:50
is a good idea to do conversion to png with xnview or only imagemagick should be used
2021-04-22 09:23:17
because you crixis said that color profile get edited with xnview or other players
Crixis
2021-04-22 09:26:58
is never a good idea to convert jpg on png becouse make bigger and more difficult to compress images
fab
2021-04-22 09:27:35
i know with modular i had this problem
2021-04-22 09:27:38
on most images
2021-04-22 09:28:12
but i don't think with those smaller distance i can save more than 20% space
2021-04-22 09:36:09
perfect white background also
2021-04-22 09:37:27
i do not sell the screenshots
Crixis
2021-04-22 09:51:35
Safe good encoding options: - for foto: - very high compression `cjxl -d 4` - high compression `cjxl -d 2` - medium compression `cjxl ` - low compression `cjxl -d 0.5` - for graphics: - standard compression `cjxl -m` or `cjxl -q 100` - slow compression `cjxl -m -s 9` or `cjxl -q 100 -s 9` - slower compression `cjxl -m -s 9 -E 3` or `cjxl -q 100 -s 9 -E 3`
fab
2021-04-22 11:48:36
Thanks
2021-04-22 11:48:45
Im doing encoding
2021-04-22 11:49:26
After i will compare modular lossy files and do some lossless test
2021-04-22 11:50:33
Still im encoding 310 jpg with photographic option after i have 810 pngs
2021-04-22 02:38:50
--lossy_palette -s 9 -q 83.3 -E 1 -s 8 -g 1 -c 1 -X 0.92 -I 0.913 -m -d 8.03 -s 6
2021-04-22 02:38:55
is this good
2021-04-22 02:43:34
i need help which quality is d 8.03
2021-04-22 02:43:41
can some dev check
2021-04-22 02:53:59
-s 6 -q 17.33 is d 8.031
2021-04-22 02:55:14
-s 6 -q 17.335 is d 8.030
Crixis
2021-04-22 02:55:48
d8 is garbage
2021-04-22 02:56:08
d 0.5, d 2, d 4, d 8
fab
2021-04-22 02:58:57
can you send the source
2021-04-22 02:59:12
in png if is a png
2021-04-22 02:59:40
only one image
2021-04-22 02:59:45
in original quality
2021-04-22 02:59:50
not jxl compressed
Crixis
2021-04-22 02:59:51
fab
2021-04-22 03:14:31
lowest jpeg xl quality
2021-04-22 03:14:43
Crixis
fab lowest jpeg xl quality
2021-04-22 03:20:01
this is lower!
fab
2021-04-22 03:20:30
yes but ugly
2021-04-22 03:20:35
mine was 0.170 bpp
Crixis
2021-04-22 03:20:48
also this
fab
2021-04-22 03:21:12
this not the source
2021-04-22 03:21:26
this encoded version with all 3 parameters i specified
Crixis this is lower!
2021-04-22 03:22:13
looks good
2021-04-22 03:22:19
hahha
Nova Aurora
fab looks good
2021-04-22 03:23:18
https://tenor.com/view/some-men-just-want-to-watch-the-world-burn-batman-alfred-quotes-gif-14054558
Crixis
fab looks good
2021-04-22 03:23:21
and only 795 b
fab
2021-04-22 03:26:52
i guess the older version now is obsolete
2021-04-22 03:27:04
but i still need to check if modular size are the same
Crixis
Crixis and only 795 b
2021-04-22 03:27:08
0.007 bpp
fab
2021-04-22 03:27:11
in lossy and modular (lossless)
2021-04-22 03:27:31
but i think i will convert PNGs tomorrow