|
|
veluca
|
2021-04-28 09:09:47
|
slower? yeah ... xD like 100x slower xD
|
|
|
Petr
|
|
_wb_
I suppose we should make a -s 10 that just adds the -E 3 -I 1 to -s 9
|
|
2021-04-29 06:56:27
|
And the name of that speed could be "snail".
|
|
|
eddie.zato
|
2021-04-29 07:42:41
|
If s9 is the "Tortoise", then s10 should be "Achilles" <:CatSmile:805382488293244929>
|
|
|
fab
|
2021-04-30 08:04:15
|
i'm trying avif with custom options
|
|
2021-04-30 08:06:07
|
|
|
2021-04-30 08:06:12
|
this the best i got
|
|
2021-04-30 08:06:20
|
quality 15
|
|
2021-04-30 08:06:32
|
extra chroma compression
|
|
2021-04-30 08:06:42
|
subsample chroma off
|
|
2021-04-30 08:06:49
|
sharpness 1
|
|
2021-04-30 08:06:52
|
noise synthesis 5
|
|
2021-04-30 08:07:01
|
tune for psnr
|
|
2021-04-30 08:07:04
|
effort 10
|
|
2021-04-30 08:08:36
|
avif has really improved
|
|
2021-04-30 08:11:15
|
https://github.com/GoogleChromeLabs/squoosh/pull/987/commits/831c27ad5ad1cac8e38b197f4cc11b2e4a1f9935
|
|
2021-04-30 08:11:24
|
could you find what version it is
|
|
2021-04-30 08:12:21
|
speed is not bad 2 minutes and 30 for a 526x526 image
|
|
2021-04-30 08:12:43
|
at effort 10 with only 300 geekbench only 2 threads only 1 core i3 330m 2,1 ghz 32 nm
|
|
2021-04-30 08:13:01
|
likely even in a phone you could get 7x 8x times faster
|
|
|
Pieter
|
|
fab
likely even in a phone you could get 7x 8x times faster
|
|
2021-04-30 08:14:45
|
why? Phones are many times slower than desktop CPUs, even i3. Unless they have specialized hardware of course.
|
|
2021-04-30 08:18:42
|
Haha.
|
|
2021-04-30 08:19:25
|
If it's a pentium 3 era 300 MHz celeron, I believe you.
|
|
|
improver
|
2021-04-30 08:21:07
|
stronger pentium 3s went up to like 550MHz iirc
|
|
2021-04-30 08:22:26
|
x86 didn't actually have SIMD initially so depends on what you mean by "x86"
|
|
2021-04-30 08:22:35
|
and ARM have NEON too
|
|
|
Pieter
|
2021-04-30 08:22:37
|
Higher ILP, generally.
|
|
|
improver
|
2021-04-30 08:23:00
|
fatter caches, more prediction magick
|
|
|
Pieter
|
2021-04-30 08:23:34
|
But also, most ARM (until recently...) was targetting power minimization (per computation), not throughput.
|
|
|
improver
|
2021-04-30 08:24:32
|
also, more software optimizations since x86 things are more popular
|
|
|
Pieter
|
2021-04-30 08:25:02
|
Yeah, from what I read, Apple M1 is actually competitive with all but high-end x86 chips.
|
|
|
_wb_
|
2021-04-30 08:30:11
|
Single-core decode speed of jxl is between 8 and 18 MP/s (depending on encode settings) on a typical mid-range ARM phone
|
|
2021-04-30 08:30:45
|
On a high-end x86 single-core decode speed is 50+ MP/s
|
|
2021-04-30 08:31:58
|
For browsers single-core speed matters because they don't parallelize single image decoding afaik
|
|
|
fab
|
2021-04-30 08:33:20
|
so are you saying that geekbench is b..
|
|
2021-04-30 08:33:24
|
you're right
|
|
2021-04-30 08:33:34
|
mostly because geekbench measures also gpu
|
|
2021-04-30 08:33:45
|
so phones have weak cpu weak architecture
|
|
2021-04-30 08:34:28
|
basically what you're saying that a snapdragon 780g 765g 732g can't compete even with 32nm processor
|
|
2021-04-30 08:34:39
|
even if geekbench is 1900-2900 and not 300/600
|
|
|
_wb_
|
2021-04-30 08:35:18
|
Multi-core speeds things up by roughly 3x for 4 cores. Of course only if the cores are as fast as the main core - often on ARM you have big cores and little cores...
|
|
|
fab
|
2021-04-30 08:35:44
|
geekbench is stupid?
|
|
|
_wb_
|
2021-04-30 08:36:04
|
Main difference between ARM and x86 is that x86 has wider simd and faster floats
|
|
|
Pieter
|
2021-04-30 08:36:12
|
clock speed isn't the relevant metric. My phone is an 8 core, with clock speeds in range 1.8 GHz to 2.4 GHz. That's not much lower than my 16-core desktop cpu that does 3.5 GHz.
But my desktop can do way more per clock cycle in terms of actual work.
|
|
|
fab
|
2021-04-30 08:36:53
|
so geekbench is stupid
|
|
2021-04-30 08:37:09
|
snapdragon serie 7 is bad
|
|
|
_wb_
|
2021-04-30 08:37:16
|
x86 has 256-bit or even 512-bit simd, while most ARM has only 128-bit simd
|
|
|
fab
|
2021-04-30 08:37:35
|
to encode anything in jpeg xl
|
|
|
Pieter
|
|
_wb_
x86 has 256-bit or even 512-bit simd, while most ARM has only 128-bit simd
|
|
2021-04-30 08:38:55
|
Hardly any common CPUs have 512-bit SIMD.
|
|
2021-04-30 08:39:38
|
Yeah, very uncommon afaik. AVX2 (256 bit) is pretty common.
|
|
|
fab
so geekbench is stupid
|
|
2021-04-30 08:40:16
|
why?
|
|
|
fab
|
2021-04-30 08:40:35
|
like is more like a gpu tool for phones
|
|
2021-04-30 08:41:06
|
likely it won't do 5,6 mpx of encoding squirrell
|
|
2021-04-30 08:41:27
|
also phones can't use all eight cores normally
|
|
2021-04-30 08:41:29
|
as sipa said
|
|
2021-04-30 08:41:44
|
maybe only in games
|
|
|
Pieter
|
2021-04-30 08:41:55
|
Ah yes, GPU speeds of mobile phones are often relatively powerful compared to their CPU.
|
|
|
fab
|
2021-04-30 08:42:02
|
do you have experience in that
|
|
2021-04-30 08:42:21
|
to me i guess i need 8 gb of ram
|
|
|
190n
|
2021-04-30 08:42:25
|
only consumer cpus with avx512 are (ice|tiger|rocket) lake. intel server (and maaaaybe workstation?) cpus have had it for a bit but amd doesn't have it at all.
|
|
|
fab
|
2021-04-30 08:42:30
|
because anyway it would be less
|
|
2021-04-30 08:42:39
|
how many ram has your phone
|
|
2021-04-30 08:42:45
|
plus how really it is
|
|
2021-04-30 08:42:55
|
like if you have a 6 gb ram phone android
|
|
2021-04-30 08:42:59
|
what is really true
|
|
2021-04-30 08:43:04
|
5,5/3,0
|
|
2021-04-30 08:43:10
|
or even less
|
|
|
Pieter
|
|
fab
how many ram has your phone
|
|
2021-04-30 08:43:28
|
mine has 6 GiB, apparently
|
|
|
fab
|
2021-04-30 08:43:36
|
6 gb really
|
|
2021-04-30 08:43:40
|
check task manager
|
|
2021-04-30 08:43:45
|
how is the max
|
|
2021-04-30 08:43:49
|
5,4 gb?
|
|
|
190n
|
2021-04-30 08:44:52
|
mine (oneplus 6) says 5.9 GB with 4.1 GB used
|
|
|
fab
|
2021-04-30 08:44:56
|
i know i model specify
|
|
|
Pieter
|
2021-04-30 08:45:01
|
I don't know where I can see that.
|
|
|
fab
|
|
190n
mine (oneplus 6) says 5.9 GB with 4.1 GB used
|
|
2021-04-30 08:45:04
|
with all closed?
|
|
|
_wb_
|
2021-04-30 08:45:05
|
Just 256 bs 128 bit simd does make a difference
|
|
|
190n
|
|
fab
with all closed?
|
|
2021-04-30 08:45:13
|
nah lots of stuff open
|
|
|
Pieter
I don't know where I can see that.
|
|
2021-04-30 08:45:18
|
developer settings
|
|
|
fab
|
|
190n
nah lots of stuff open
|
|
2021-04-30 08:45:26
|
did you bought the 6 gb ram model
|
|
2021-04-30 08:45:30
|
or the 8 gb ram model
|
|
2021-04-30 08:45:33
|
190n
|
|
|
190n
|
|
fab
|
2021-04-30 08:45:54
|
you're lucky 5,9 gb of 6
|
|
2021-04-30 08:46:00
|
do anyone have less
|
|
2021-04-30 08:46:13
|
more than 0,1 difference
|
|
|
Pieter
|
2021-04-30 08:46:20
|
4.5 out of 5.7 GB used
|
|
|
190n
|
2021-04-30 08:46:25
|
htop reports 3.43/5.50 GB used <:Thonk:805904896879493180>
|
|
|
fab
|
2021-04-30 08:46:35
|
with all closed how is
|
|
|
190n
|
2021-04-30 08:46:43
|
that was with all closed except termux
|
|
|
fab
|
2021-04-30 08:46:52
|
all multitasking closed
|
|
|
190n
|
|
fab
|
2021-04-30 08:47:01
|
thanks
|
|
|
190n
|
2021-04-30 08:47:12
|
evidently there's still a ton of shit going on in the background tho <:kekw:808717074305122316>
|
|
|
fab
|
2021-04-30 08:47:19
|
so android 10 uses 3 gb at least
|
|
2021-04-30 08:47:31
|
6 gb ram is not that much
|
|
2021-04-30 08:47:50
|
to have 200 mb free for decode a 12 mpx jxl image
|
|
2021-04-30 08:48:10
|
i'm curious what dev think
|
|
2021-04-30 08:48:21
|
if there are any improvements
|
|
|
190n
|
2021-04-30 08:48:34
|
a lot of the ram that's used could probably be freed if it had to be
|
|
2021-04-30 08:48:54
|
android has lots of java which is garbage collected
|
|
2021-04-30 08:49:00
|
and various processes probably keep stuff in cache
|
|
2021-04-30 08:49:13
|
remember unused ram is wasted ram
|
|
|
Pieter
|
2021-04-30 08:49:37
|
android especially is designed to let the OS kill apps at will and revive them later based on memory pressure
|
|
|
fab
|
2021-04-30 08:49:53
|
my galaxy s4 don't do that
|
|
2021-04-30 08:49:56
|
it simply reboot
|
|
2021-04-30 08:50:02
|
and sometimes it don't do even that
|
|
2021-04-30 08:50:12
|
because is too old as android v?
|
|
2021-04-30 08:51:23
|
the behaviour of killing apps on samsung phones when it was introduced
|
|
2021-04-30 08:51:32
|
from android 6.0 and up?
|
|
|
Pieter
android especially is designed to let the OS kill apps at will and revive them later based on memory pressure
|
|
2021-04-30 08:52:07
|
ah ok i understood
|
|
|
Pieter
|
2021-04-30 08:52:08
|
iirc from the statt
|
|
2021-04-30 08:52:26
|
like android 2.x had that, if i remember correctly
|
|
2021-04-30 08:52:37
|
you generally don't notice
|
|
|
fab
|
2021-04-30 08:52:44
|
but when is the way is now
|
|
|
Pieter
|
2021-04-30 08:52:52
|
they don't disappear from the list of running apps
|
|
|
fab
|
2021-04-30 08:53:02
|
like it changes every version of android?
|
|
2021-04-30 08:53:11
|
but when in a xiaomi it was the way is now?
|
|
|
Pieter
|
2021-04-30 08:53:18
|
i have no clue
|
|
2021-04-30 08:53:36
|
there are probably often tweaks to this
|
|
|
fab
|
2021-04-30 08:53:42
|
like from a galaxy s4 when it improved
|
|
2021-04-30 08:53:48
|
and become standardized
|
|
|
diskorduser
|
2021-04-30 08:53:48
|
Stock Android keeps many apps in memory but miui don't
|
|
|
fab
|
2021-04-30 08:55:26
|
ok offrtopic
|
|
2021-04-30 10:53:06
|
jpeg xl will get good at -s 9 -d 2.21
|
|
2021-04-30 10:53:26
|
will have good performance at -d 0.5 -s 9 -d 2.21
|
|
2021-04-30 10:55:41
|
and up to -s 8 -d 4.45
|
|
2021-04-30 10:56:00
|
i try to predict the future
|
|
2021-04-30 10:57:59
|
now the safe value is up to d 1.261 custom settings s9 and -s 6 -d 2.3 stock
|
|
2021-04-30 11:09:34
|
this would convince users to compress more; unfortunately
|
|
2021-04-30 11:14:06
|
|
|
2021-04-30 11:14:17
|
also this image is black on original
|
|
2021-04-30 11:14:20
|
yellow on xnview
|
|
2021-04-30 11:14:21
|
why
|
|
2021-04-30 11:14:54
|
this is the jildo image
|
|
2021-04-30 11:14:55
|
https://discord.com/channels/794206087879852103/824000991891554375/837601278531207198
|
|
2021-04-30 11:15:55
|
nomacs and imageglass display it well
|
|
2021-04-30 11:16:23
|
|
|
2021-04-30 11:16:37
|
should someone reproduce the issue?
|
|
2021-04-30 11:16:53
|
there is the jxl art link surma technology
|
|
|
_wb_
|
2021-04-30 11:38:05
|
I suppose the bitdepth 12 is not properly handled in xnview?
|
|
|
BlueSwordM
|
|
Pieter
why? Phones are many times slower than desktop CPUs, even i3. Unless they have specialized hardware of course.
|
|
2021-04-30 02:43:45
|
I would not be so sure.
|
|
2021-04-30 02:43:57
|
Modern phone SOCs are quite strong.
|
|
|
Crixis
|
2021-04-30 03:24:38
|
|
|
2021-04-30 03:27:12
|
seam the best cpu android is similiar to i7 laptop or i5 desktop
|
|
2021-04-30 03:28:00
|
https://www.cpubenchmark.net/cross-platform.html
|
|
|
sklwmp
|
2021-04-30 06:33:00
|
this is definitely readable
|
|
|
spider-mario
|
2021-04-30 06:40:11
|
it actually kind of is if you click โOpen originalโ
|
|
2021-04-30 06:40:27
|
but yeah, best to open the link anyway
|
|
|
sklwmp
|
|
spider-mario
it actually kind of is if you click โOpen originalโ
|
|
2021-04-30 06:52:51
|
Oh
|
|
2021-04-30 06:52:54
|
yeah good point
|
|
|
_wb_
|
2021-05-01 05:35:20
|
Ugh annoying - is there a way to use openexr with both the latest and an older openexr? Will we need to explicitly check the openexr version or what?
|
|
|
Pieter
|
2021-05-01 05:37:17
|
welcome to the wonderful world of dependencies
|
|
|
_wb_
|
2021-05-01 05:50:43
|
It's just a bit silly that they have to break things for this
|
|
2021-05-01 05:55:36
|
Well you can build without exr support of course
|
|
2021-05-01 05:56:52
|
Not if it's already compiled, afaik
|
|
2021-05-01 05:58:20
|
The annoying thing is they replaced a uint64_t with a uin64_t in a way that breaks compilation
|
|
|
spider-mario
|
2021-05-01 07:54:11
|
Luca suggested that we use something like `using Int64 = decltype(OpenEXR::โฆ)`
|
|
2021-05-01 07:54:21
|
which I think should work
|
|
|
|
veluca
|
2021-05-01 11:19:43
|
yeah, or
```
decltype(baseclass::tellg()) tellg() override { return pos_; }
```
|
|
2021-05-01 11:19:54
|
or something like that
|
|
2021-05-01 11:19:57
|
kinda hacky, but...
|
|
|
improver
|
2021-05-01 02:46:15
|
random question: why theres no global pallette support? it was probably discussed but I can't remember. do apng and webp support global pallette stuff or that was only gif?
|
|
|
_wb_
|
2021-05-01 03:16:55
|
Frames are quite independent things in jxl, besides blending / patches / dcframe there is no dependency between frames.
|
|
2021-05-01 03:17:34
|
Palette is a transform in the modular sub-bitstream, not some kind of metadata property of the image
|
|
2021-05-01 03:17:50
|
Conceptually it is just a coding tool
|
|
|
|
Deleted User
|
|
_wb_
Palette is a transform in the modular sub-bitstream, not some kind of metadata property of the image
|
|
2021-05-01 04:18:36
|
<@!260412131034267649> I hope you'll find this discussion useful, at first I also was confused about palettes in JXL.
https://discord.com/channels/794206087879852103/794206170445119489/827533448318418945
|
|
|
_wb_
|
2021-05-02 07:37:30
|
You mean lossless or lossy?
|
|
2021-05-02 07:38:14
|
Lossy encoding has been quite well-optimized for speed
|
|
2021-05-02 07:38:20
|
Lossless not so much
|
|
2021-05-02 07:41:03
|
There are quite a few things in the encoder for lossless that haven't been parallelized yet
|
|
2021-05-02 07:43:56
|
For this image, -s 3 is probably quite bad, but that kind of speed gives an indication of how fast it could be (and it could be faster than that too if needed)
|
|
2021-05-02 07:47:15
|
This size limit, the limit to 8-bit, the obligatory 4:2:0 in lossy mode, and no progressive decode are the 4 things where webp is not just strictly better than the formats it aimed to replace (JPEG and PNG)
|
|
2021-05-02 07:48:52
|
If you want to replace an existing format, you need to be as good on all fronts and strictly better on enough fronts. Otherwise there will still be reasons to use the old thing.
|
|
2021-05-02 07:49:17
|
This happened when PNG attempted to replace GIF (no animation support kept GIF alive)
|
|
2021-05-02 07:50:21
|
This happened when J2K attempted to replace JPEG (speed being significantly slower being the main issue there at the time)
|
|
2021-05-02 07:51:31
|
Yes
|
|
2021-05-02 07:54:35
|
Well GIF has the advantage of being supported by anything that exists, being 32 years old.
|
|
2021-05-02 07:55:44
|
Most things that support APNG will also support a video codec, which is much better for animation on the web than intra-only approaches like gif/apng/awebp.
|
|
|
Pieter
|
|
_wb_
Most things that support APNG will also support a video codec, which is much better for animation on the web than intra-only approaches like gif/apng/awebp.
|
|
2021-05-02 07:58:50
|
or animated JPEG-XL...
|
|
|
_wb_
|
2021-05-02 08:00:43
|
Yes
|
|
2021-05-02 08:04:15
|
I think animated jxl is only good for things like a photo with a blinking text overlay (ugh), a slideshow of different images, an animated geographic map, or things like that. For anything with 'natural' movement, video codecs will be better.
|
|
|
190n
|
2021-05-02 08:04:26
|
depends on the codec used in the mp4 but probably not. if the codec is hevc or av1, and the frames in question are intra frames, you could extract them as heic or avif.
|
|
2021-05-02 08:04:39
|
oh sorry part of the video
|
|
2021-05-02 08:05:10
|
yeah you can trim without recompression. `ffmpeg -ss start_time -i input_file -to end_time -c copy out_file`
|
|
|
_wb_
|
2021-05-02 08:05:12
|
You can generally trim a video as long as you start from a keyframe
|
|
|
190n
|
2021-05-02 08:06:36
|
if you don't start from a keyframe, you can still sorta trim it, but the resulting file includes the keyframe and any more frames before where you actually want it to start. those get decoded but not displayed until it reaches where you wanted it to actually start
|
|
|
_wb_
|
2021-05-02 08:07:13
|
Yes, that's what I meant
|
|
2021-05-02 08:07:31
|
(you still start from a keyframe then)
|
|
|
spider-mario
|
|
190n
if you don't start from a keyframe, you can still sorta trim it, but the resulting file includes the keyframe and any more frames before where you actually want it to start. those get decoded but not displayed until it reaches where you wanted it to actually start
|
|
2021-05-02 09:57:58
|
do common containers actually support doing this, with good software support?
|
|
2021-05-02 09:58:08
|
I think I have encountered random audio desynchronization in the past when doing that
|
|
2021-05-02 09:58:58
|
the video and audio were in sync when the file was played in mpv but not when sent via WhatsApp, or something like that
|
|
2021-05-02 09:59:01
|
I donโt remember exactly
|
|
2021-05-02 09:59:54
|
well, maybe having to trim lossy audio is an added complication
|
|
2021-05-02 10:00:02
|
I suppose you canโt just trim that at arbitrary points either
|
|
|
|
Deleted User
|
2021-05-02 12:19:26
|
Yeah, I trimmed once on a non-keyframe and the only platform it worked on without issues was Messenger... because FB is recompressing videos anyway <:kekw:808717074305122316>
Everywhere else? Problems. Only VLC plays that thing properly, from a good starting point and with audio in sync.
|
|
|
monad
|
2021-05-02 01:06:00
|
I trim a lot of videos and have yet to find a satisfactory app for playback. VLC can have a particularly choppy start, Firefox a somewhat choppy end, and mpv can omit starting sound (I guess before start_time in the command 190n posted).
|
|
|
BlueSwordM
|
2021-05-02 05:30:55
|
I'm actually surprised.
|
|
2021-05-02 05:31:15
|
On the full image with default settings(other than lossless) on a 3700X, I get this:
```real 0m23.996s
user 0m33.887s
sys 0m1.246s
```
|
|
2021-05-02 05:31:41
|
That's quite the large difference vs 2.36 minutes ๐ค
|
|
|
_wb_
|
2021-05-02 05:40:35
|
Maybe not a build with full simd?
|
|
|
BlueSwordM
|
2021-05-02 05:41:59
|
That is always a possibility.
|
|
|
_wb_
|
2021-05-02 05:42:15
|
Not that that should make much difference for lossless, not a lot of simd there
|
|
2021-05-02 05:43:08
|
Same image? Same cjxl version?
|
|
|
BlueSwordM
|
2021-05-02 05:43:49
|
Same image, but it's likely that we do not have the same version.
|
|
|
_wb_
|
2021-05-02 05:45:08
|
Nothing funny like swapping to disk or something?
|
|
|
BlueSwordM
|
|
_wb_
Nothing funny like swapping to disk or something?
|
|
2021-05-02 05:47:02
|
With the encoding process consuming 2,8GB at S9 with the image he linked, that is possible.
|
|
|
Jim
|
2021-05-02 05:55:32
|
Not sure what settings you are using. Here is default lossy:
```
J P E G \/ |
/\ |_ e n c o d e r [v0.3.7 | SIMD supported: AVX2]
Read 1271x16384 image, 54.9 MP/s
Encoding [VarDCT, d1.000, squirrel], 4 threads.
Compressed to 2358233 bytes (0.906 bpp).
1271 x 16384, 3.71 MP/s [3.71, 3.71], 1 reps, 4 threads.
00:00:06.0900956
```
|
|
2021-05-02 05:55:49
|
Modular:
```
J P E G \/ |
/\ |_ e n c o d e r [v0.3.7 | SIMD supported: AVX2]
Read 1271x16384 image, 55.1 MP/s
Encoding [Modular, lossless, squirrel], 4 threads.
Compressed to 3803557 bytes (1.461 bpp).
1271 x 16384, 0.77 MP/s [0.77, 0.77], 1 reps, 4 threads.
00:00:27.3445915
```
|
|
|
BlueSwordM
That's quite the large difference vs 2.36 minutes ๐ค
|
|
2021-05-02 06:34:20
|
Probably running `-s 8`. At that setting it took a little over a minute.
|
|
|
monad
|
2021-05-02 07:10:48
|
I figure the main point was the relative speed advantage of WebP. Notice WebP takes about 1/5th the time JXL takes. My system also runs faster than Hoshino_8869453's, but the relative difference remains about the same (8s user/real time for WebP, 42.7s user/33.3s real time for JXL).
|
|
2021-05-02 07:14:09
|
Since there is discussion about settings, I interpreted default lossless to mean just `-d 0 -s 7`.
|
|
|
_wb_
|
2021-05-02 07:32:25
|
If you want to make such comparisons, better to try all speed settings of cjxl and all speed settings of cwebp
|
|
2021-05-02 07:32:52
|
And then compare both density and speed
|
|
2021-05-02 07:33:36
|
I saw a plot with results like that, forgot who made it though
|
|
|
Scientia
|
2021-05-02 07:34:44
|
maybe a script for it
|
|
|
monad
|
2021-05-02 07:34:49
|
It clearly isn't comprehensive, but comparing default settings seems fair enough.
|
|
2021-05-02 07:35:20
|
They are default for a reason.
|
|
2021-05-02 07:39:35
|
To clarify, when I said 'speed advantage of WebP', I didn't mean to suggest cwebp was faster than cjxl in all (or even most) permutations of settings and input. Just this case of default setting on this image.
|
|
|
Scientia
|
2021-05-02 07:41:54
|
What CPU do you use?
|
|
|
monad
|
2021-05-02 07:42:54
|
Me? i5-4670
|
|
|
Scientia
|
2021-05-02 07:45:16
|
It may be a threading issue
|
|
|
monad
|
2021-05-02 07:46:14
|
How might I investigate that?
|
|
|
Scientia
|
2021-05-02 07:49:02
|
I'm just talking about you know, a 4 core 4 thread processor from 2013 maybe being worse at threading than a 6 or 8 core 12/16 thread processor from 2017-present
|
|
|
monad
|
2021-05-02 07:57:24
|
As far as I've seen, cjxl modular encode is mostly single-core bound. And cwebp seems entirely single-core bound. I guess you're suggesting add more threads and cjxl's speed will increase relative to fewer threads, but I imagine it would never beat cwebp on this test assuming they're run on the same machine.
|
|
|
_wb_
|
2021-05-02 07:58:35
|
Modular at -s 3 should parallelize well
|
|
2021-05-02 07:59:35
|
Default and slower speeds are for modular bottlenecked by encoder things (mostly tree learning) that aren't parallelized yet
|
|
2021-05-02 08:01:42
|
It's probably a bit early to do encode speed comparisons for modular, since it is not yet fully optimized
|
|
2021-05-02 08:02:04
|
Even the decode side of it hasn't been completely optimized yet
|
|
|
raysar
|
2021-05-03 12:26:30
|
For people who don't know, **avidemux** can cut vidรฉo easily, h264 h265 vp9 (avi mp4 mkv) without reencoding. Limitation is to cut to i-frame. (ffmpeg can do better but in comand line)
|
|
|
monad
|
|
_wb_
If you want to make such comparisons, better to try all speed settings of cjxl and all speed settings of cwebp
|
|
2021-05-03 02:42:57
|
FWIW:
|
|
|
Scientia
|
2021-05-03 02:56:50
|
Try -s 9 -E 3 <:megapog:816773962884972565>
|
|
2021-05-03 02:59:29
|
This will take much longer than -s 9
|
|
2021-05-03 02:59:40
|
But it's much better at compression
|
|
|
monad
|
2021-05-03 03:04:00
|
I might not have enough RAM, I only have 8 GB.
|
|
|
Scientia
|
2021-05-03 03:11:02
|
that may be true idk ( :
|
|
|
monad
|
2021-05-03 03:12:17
|
It might not scale up too much with just `-E 3`, but `-E 3 -I 1` can scale up significantly.
|
|
|
Scientia
|
2021-05-03 03:13:05
|
I was under the impression `-I 1` was of little significance to compression
|
|
2021-05-03 03:13:11
|
like that it gave improvements
|
|
2021-05-03 03:13:24
|
but that they were nowhere as drastic as `-E 3`
|
|
|
monad
|
2021-05-03 03:14:51
|
That may be generally true. Depends on the content to some extent. `-s 8` and `-s 9` can compress worse than `-s 7` on certain kinds of content.
|
|
|
Scientia
|
2021-05-03 03:16:40
|
even in modular?
|
|
|
monad
|
2021-05-03 03:16:45
|
Yes.
|
|
2021-05-03 03:18:58
|
I saw that specifically on scans of anime style art.
|
|
|
Scientia
|
2021-05-03 03:26:53
|
<:monkaMega:809252622900789269> just compressed a lot of line art diagrams with `-d 0 -s 9 -E 3`
|
|
2021-05-03 03:27:07
|
i wonder if I got bad compression
|
|
|
_wb_
|
|
monad
FWIW:
|
|
2021-05-03 05:26:22
|
This kind of comparison is interesting. Some things are quite image-dependent so it might be worthwhile to try multiple images (and also maybe to show real time too)
|
|
2021-05-03 05:28:18
|
Such a comparison could also be done for lossy, but there it would be time, size, and perceptual metric result.
|
|
|
monad
|
2021-05-03 05:28:46
|
Real time is represented in the table.
|
|
|
_wb_
|
2021-05-03 05:44:34
|
WebP is hardcoded for 8-bit RGBA
|
|
2021-05-03 05:44:51
|
jxl is not
|
|
2021-05-03 05:45:27
|
That means the encoder (currently) uses 32-bit per sample, not per pixel
|
|
|
monad
|
2021-05-03 05:45:46
|
In case it's not clear, this is maximum memory.
|
|
|
_wb_
|
2021-05-03 05:46:49
|
This is avoidable but not so easy code-wise (could make specialized code paths that work on 16-bit instead of 32-bit buffers, for example)
|
|
2021-05-03 05:53:18
|
If we implement such optimizations, yes.
|
|
|
Crixis
|
2021-05-03 06:26:37
|
Jpeg xl standard setting are for general use, webp standard settings are for web use, I don't tink is fair go for "standard vs standard"
|
|
2021-05-03 06:28:21
|
Jpeg xl lossy misure the distance from the original in the encoding, is very safe
|
|
|
lithium
|
2021-05-03 06:48:53
|
jpeg xl lossy on photographic image is great,
but on specific non-photographic image have some issue,
some time standard setting is not enough keep high fidelity.
|
|
|
Scientia
|
2021-05-03 06:52:30
|
i'm sure the encoder can be tweaked in the future to alleviate this
|
|
|
Crixis
|
2021-05-03 06:55:18
|
probably is the distance metric that need some tweaks on not-photographic content
|
|
|
spider-mario
|
2021-05-03 10:48:00
|
FYI the next sync should have this fix
|
|
2021-05-03 10:48:30
|
(the EXR one)
|
|
|
|
Deleted User
|
2021-05-03 12:37:19
|
Is edge preserving filter used in Modular? (Probably not, but I'd like to make sure.)
|
|
|
_wb_
|
2021-05-03 01:31:10
|
not by default, but the bitstream does allow it
|
|
|
|
Deleted User
|
2021-05-03 02:26:24
|
Can current encoder do it?
|
|
|
_wb_
|
2021-05-03 02:38:33
|
Not sure, does it do anything when you manually set epf with modular?
|
|
|
|
veluca
|
2021-05-03 02:43:37
|
it should do it yes
|
|
|
lithium
|
|
Crixis
probably is the distance metric that need some tweaks on not-photographic content
|
|
2021-05-03 02:57:15
|
About vardct non-photographic image improvement statu, i can't find too much information about this,
maybe i miss something important information?
|
|
|
Crixis
|
|
lithium
About vardct non-photographic image improvement statu, i can't find too much information about this,
maybe i miss something important information?
|
|
2021-05-03 03:36:36
|
I don't have any news
|
|
|
lithium
|
|
Crixis
I don't have any news
|
|
2021-05-03 04:02:13
|
ok, I understand, just hope can get some good news ๐
|
|
|
Scientia
|
2021-05-03 04:53:26
|
the good thing i think as jon has said is the bitstream has a lot of flexability so a lot of heuristics etc can be added to the encoder to improve image quality and possibly size.
|
|
|
BlueSwordM
|
2021-05-03 05:02:15
|
Indeed.
|
|
2021-05-03 05:02:33
|
Remember, it's only been 5 months since the standard was finalized.
|
|
2021-05-03 05:02:49
|
We have 10 years to get the biggest gains, and another 10 years to squeeze everything out.
|
|
|
Scientia
|
2021-05-03 05:19:19
|
Even with jpeg we have recent things like mozjpeg that can give us very high quality results
|
|
2021-05-03 05:20:00
|
For an almost 30 year old codec
|
|
|
Orum
|
2021-05-03 05:42:08
|
I suspect most of the 'big' gains will happen in the first 3-5 years
|
|
|
_wb_
|
2021-05-03 06:07:55
|
It will all depend on adoption - mozjpeg happened because jpeg is extremely widely adopted. There is no mozJ2K or mozJXR, even though for those codecs there are likely also a lot of things possible...
|
|
|
Nova Aurora
|
2021-05-03 06:11:52
|
so we need to get popular enough for mozJXL
|
|
|
Scientia
|
2021-05-03 06:51:54
|
On the right track
|
|
|
Pieter
|
2021-05-03 06:57:11
|
Or `cjxl` (and the library implementing its encoding logic) just has to good enough that there is no need for a MozJXL :)
|
|
|
Nova Aurora
|
2021-05-03 06:57:53
|
https://tenor.com/view/it-has-to-be-perfect-the-first-time-flawless-no-mistakes-perfect-seeker-gif-14552788
|
|
|
_wb_
|
2021-05-03 07:30:20
|
Yes, well cjxl has guetzli in its ancestry so it is indeed already much more than what e.g. the original libjpeg was: it already does significant perceptual optimization (to the point that there's not even a way to do simple "naive" quantization, it's always at least somewhat tuned for butteraugli)
|
|
2021-05-03 07:33:34
|
But the jxl bitstream also has way more potential than jpeg to do all kinds of advanced stuff, and there we're only scratching the surface at the moment. Things like splines, saliency progression, patches, delta palette, etc are not or only partially implemented in the encoder, basically mostly only as a kind of 'proof of concept' that it works and that it is useful, but the encoder is either not using it or very far from using the full potential of these coding tools.
|
|
|
Jim
|
2021-05-03 08:20:46
|
There will probably be a libjxl-turbo but possibly not mozjxl. There will probably also be dozens of other libraries based on libjxl that target some specific industry - most will likely be much slower and highly specialized.
|
|
|
|
Deleted User
|
2021-05-03 08:22:35
|
By the way: images with noise synth finally work in Chrome Canary, yaaaay!
|
|
2021-05-03 08:22:38
|
<:Hypers:808826266060193874>
|
|
|
|
veluca
|
|
Jim
There will probably be a libjxl-turbo but possibly not mozjxl. There will probably also be dozens of other libraries based on libjxl that target some specific industry - most will likely be much slower and highly specialized.
|
|
2021-05-03 08:37:17
|
I'd be quite surprised if someone created a libjxl-turbo rather than sending speed improvement patches to the main libjxl...
|
|
2021-05-03 08:37:59
|
(I'd also be rather surprised if, say, the vardct coding path could be *significantly* sped up without making some serious compromises - such as having limited range due to integer arithmetic...)
|
|
|
_wb_
|
2021-05-03 08:51:22
|
libjxl is already quite turbo - at least the vardct part
|
|
|
Pieter
|
2021-05-03 08:54:38
|
https://www.youtube.com/watch?v=hmmIl9aMz4I
|
|
|
_wb_
|
2021-05-03 09:32:45
|
TURBO TURBO
|
|
2021-05-03 09:33:02
|
๐ฅ
|
|
2021-05-03 09:36:29
|
not sure if anyone else besides <@!799692065771749416>, <@!768090355546587137> and me can make sense of the above video (not that there's much that makes sense in it to begin with)
|
|
|
Fox Wizard
|
2021-05-03 09:45:34
|
Kabouter Wesley <:Poggers:805392625934663710>
|
|
|
Pieter
|
|
_wb_
not sure if anyone else besides <@!799692065771749416>, <@!768090355546587137> and me can make sense of the above video (not that there's much that makes sense in it to begin with)
|
|
2021-05-03 10:47:12
|
I'm not sure there is enough non-absurd story content for it to need understanding of the words...
|
|
|
Scientia
|
2021-05-03 10:52:59
|
It's pretty simple to understand the basic plot
|
|
|
|
Deleted User
|
|
veluca
it should do it yes
|
|
2021-05-04 02:29:43
|
WOW IT ACTUALLY WORKS
https://slow.pics/c/o3yFIfZ0
|
|
2021-05-04 02:30:22
|
Modular is still blocky, but not as much as without EPF!
|
|
2021-05-04 02:31:53
|
EPF 3 was way too strong and EPF 2 had extremely hard to notice differences (and only in some places) compared to EPF 1.
|
|
2021-05-04 02:32:27
|
Which one of them do you prefer? Vote 1 for VarDCT and 2 for Modular.
|
|
2021-05-04 02:37:38
|
*(yeah, I also prefer VarDCT)*
|
|
2021-05-04 02:39:42
|
I ran both `butteraugli_main` and `ssimulacra_main` and while ๐งaugli marked Modular version as better, SSIMULACRA picked VarDCT.
|
|
|
_wb_
|
2021-05-04 05:14:23
|
Hah, that's kind of funny that ssimulacra picks vardct and butteraugli picks modular. Are you sure it's not the other way around? (remember: lower score is better in both)
|
|
|
|
veluca
|
|
EPF 3 was way too strong and EPF 2 had extremely hard to notice differences (and only in some places) compared to EPF 1.
|
|
2021-05-04 08:31:50
|
In theory you can make EPF 3 less strong, but I don't know if the command line can do it
|
|
|
_wb_
|
2021-05-04 08:35:57
|
how is the epf strength aux image created?
|
|
2021-05-04 08:36:22
|
is it just a constant?
|
|
|
|
veluca
|
2021-05-04 08:36:35
|
It's a constant in modular mode, yep :D
|
|
|
_wb_
|
2021-05-04 08:36:50
|
and in vardct mode?
|
|
2021-05-04 08:37:07
|
the --epf cli option is the max but it can also go lower or something?
|
|
|
|
veluca
|
2021-05-04 08:38:16
|
No, the cli option defined the number of steps, the strength of each step is defined by a value that the encoder computes
|
|
|
_wb_
|
2021-05-04 08:39:26
|
wow there are more things to optionally configure in epf than what I assumed
|
|
2021-05-04 08:41:00
|
the strength is also signaled, right? there's a 1:8 aux image called `Sharpness` in the spec
|
|
2021-05-04 08:44:28
|
that aux image encodes one 3-bit value per 8x8 block in the image that is the index into `epf_sharp_lut[8]`
|
|
2021-05-04 08:44:51
|
(which by default is just `N/7`)
|
|
2021-05-04 08:45:36
|
that aux image is modular encoded so if it's all the same value it compresses to nothing
|
|
|
lithium
|
|
WOW IT ACTUALLY WORKS
https://slow.pics/c/o3yFIfZ0
|
|
2021-05-04 08:47:16
|
In my test, jpeg xl 3.X(-d0.5) and libavif(q20) in high bbp and near file size(non-photographic image),
maxButteraugli and P-Norm will choose vardct is better,
dssim and ssimulacra will choose avif is better.
|
|
|
_wb_
|
2021-05-04 08:53:55
|
none of those metrics are really calibrated/validated for non-photographic images though, afaik
|
|
2021-05-04 08:55:31
|
ah so for the epf, looking at the code it just sets the Sharpness to all 4 at speeds faster than wombat and it has some complicated heuristic to set it to either 4 or 0 at speed wombat or slower
|
|
2021-05-04 08:56:34
|
but the current encoder never uses values 1,2,3,5,6,7 (I assume to reduce entropy in the signaling)
|
|
2021-05-04 08:59:04
|
would be funny to make a jxlart tree for the Sharpness field and see what happens if you do something like `if W > 6 - Set 0 - W 1` in combination with epf 3 on a random image ๐
|
|
2021-05-04 08:59:44
|
(or do a sierpinski in the Sharpness and see if you can see it)
|
|
|
lithium
|
|
_wb_
none of those metrics are really calibrated/validated for non-photographic images though, afaik
|
|
2021-05-04 10:15:10
|
Have plan for let butteraugli calibrated or validated on non-photographic images?
That improvement might let vardct and av1 get much benefit.
|
|
|
|
veluca
|
|
_wb_
the strength is also signaled, right? there's a 1:8 aux image called `Sharpness` in the spec
|
|
2021-05-04 10:43:19
|
sharpness is not signaled in Modular mode, so...
|
|
|
_wb_
|
2021-05-04 10:58:20
|
Ah right, I meant in a vardct image (just some random photo, see what happens if you put a Sierpinski in the sharpness field)
|
|
|
fab
|
2021-05-04 11:20:50
|
ewout still hasn'0t build the new version
|
|
2021-05-04 11:20:52
|
04052021
|
|
|
lithium
|
2021-05-04 11:20:52
|
new jpeg xl authored 5 minutes ago!
|
|
2021-05-04 11:23:37
|
butteraugli have some change in this sync
|
|
|
fab
|
2021-05-04 11:24:11
|
|
|
2021-05-04 11:24:20
|
you can search if is true
|
|
2021-05-04 11:24:33
|
if you know to compile
|
|
2021-05-04 11:25:19
|
for images i'll start testing with screenshots or quality 77 mozjpeg photos
|
|
2021-05-04 11:25:27
|
if i see some changes in heuristics
|
|
2021-05-04 11:25:44
|
but anyway i would do
|
|
2021-05-04 11:26:15
|
|
|
2021-05-04 11:26:21
|
that with older version
|
|
2021-05-04 11:26:26
|
is sufficient as quality for me
|
|
2021-05-04 11:26:34
|
i don't need super compression
|
|
2021-05-04 11:26:46
|
like to me a 52 kb jpeg over 80 is worth
|
|
2021-05-04 11:27:01
|
i don't need 25 kb that look dusty
|
|
2021-05-04 11:27:21
|
also i don't need full modular search
|
|
2021-05-04 11:28:01
|
|
|
2021-05-04 11:28:25
|
anyway is not very urgent to compress jpg
|
|
2021-05-04 11:28:38
|
as all programs now can read lossless compressed jpgs
|
|
2021-05-04 11:28:45
|
even sasha plugin was uploaded
|
|
2021-05-04 11:28:59
|
sasha (Kagami mozilla)
|
|
|
_wb_
|
2021-05-04 11:34:13
|
main changes in this sync are the following afaik:
- more blending was implemented, reducing the number of "not yet implemented" things in the decoder (bringing us closer to version 0.4 - fully complete, forwards-compatible decoder)
- several fuzzerbug fixes (making decoder more robust against malicious inputs)
- things related to the progressive decode api
- some build issues fixed
|
|
|
fab
|
2021-05-04 11:34:47
|
Xnview is still at 0.2.98
|
|
2021-05-04 11:34:54
|
.0.98.2
|
|
2021-05-04 11:35:00
|
so it can't also 12 bit
|
|
2021-05-04 11:35:10
|
but you use sasha plugin
|
|
2021-05-04 11:35:26
|
you open by default with ImAGEGLASS
|
|
2021-05-04 11:35:35
|
and is good
|
|
2021-05-04 11:36:18
|
ok
|
|
2021-05-04 11:36:34
|
ah i uploaded cwp2 and dwp2 in <#805176455658733570>
|
|
2021-05-04 11:36:46
|
you can view hoshino command
|
|
2021-05-04 11:36:51
|
for echo
|
|
2021-05-04 11:37:03
|
(win 7,10, linux, don't know, ask him)
|
|
2021-05-04 11:37:13
|
now i will try
|
|
2021-05-04 11:38:22
|
with q 78 is not hard to get 44% file reduction
|
|
2021-05-04 11:38:31
|
do not know i should test more
|
|
2021-05-04 11:38:44
|
many have doubts because of too fast speed
|
|
|
Petr
|
2021-05-04 12:34:46
|
It can happen. It depends on the input image and the encoder parameters. Share them if you need detailed comments from the community.
|
|
|
|
Deleted User
|
|
_wb_
Hah, that's kind of funny that ssimulacra picks vardct and butteraugli picks modular. Are you sure it's not the other way around? (remember: lower score is better in both)
|
|
2021-05-04 12:52:29
|
I know that lower is better ๐
**Butteraugli**
```VarDCT 6.7319784164
Modular 6.3625779152 (*)```
**SSIMULACRA**
```VarDCT 0.02510738 (*)
Modular 0.02566513```
|
|
2021-05-04 12:58:26
|
*(I used the previous version of JPEG XL, before today's sync)*
|
|
|
_wb_
|
|
I know that lower is better ๐
**Butteraugli**
```VarDCT 6.7319784164
Modular 6.3625779152 (*)```
**SSIMULACRA**
```VarDCT 0.02510738 (*)
Modular 0.02566513```
|
|
2021-05-04 01:05:57
|
it's funny if you know that I made ssimulacra and most of my contributions in jxl were in modular, while the team that made butteraugli and the one that made vardct are mostly the same people ๐
|
|
|
|
Deleted User
|
2021-05-04 01:11:44
|
I was curious and re-did the tests for other EPF values.
**Butteraugli**
```./butteraugli_main 1hxwd.png epf0.png
6.5329294205
3-norm: 1.852758
./butteraugli_main 1hxwd.png epf1.png
6.3625779152
3-norm: 1.821999
./butteraugli_main 1hxwd.png epf2.png
6.2895941734
3-norm: 1.849840
./butteraugli_main 1hxwd.png epf3.png
8.0625114441
3-norm: 2.294456```
**SSIMULACRA**
```./ssimulacra_main 1hxwd.png epf0.png
0.02820122
./ssimulacra_main 1hxwd.png epf1.png
0.02566513
./ssimulacra_main 1hxwd.png epf2.png
0.02605319
./ssimulacra_main 1hxwd.png epf3.png
0.03053731```
|
|
2021-05-04 01:14:41
|
Both metrics agree on the 4th place (EPF 3) and 3rd place (EPF 0), but they disagree on the 2nd and 1st place.
|
|
|
_wb_
|
2021-05-04 01:17:49
|
not really if you look at the 3-norm (which is probably more interesting than the maxnorm)
|
|
2021-05-04 01:18:52
|
it's somewhat surprising to me that epf 1/2 actually make things better than no epf - I would expect the metrics to just get worse with more epf
|
|
|
|
Deleted User
|
|
_wb_
not really if you look at the 3-norm (which is probably more interesting than the maxnorm)
|
|
2021-05-04 01:19:21
|
What's the difference between the "normal" ๐งaugli and the 3-norm?
|
|
|
Petr
|
2021-05-04 01:20:15
|
And the encoder parameters?
|
|
|
|
Deleted User
|
|
_wb_
it's somewhat surprising to me that epf 1/2 actually make things better than no epf - I would expect the metrics to just get worse with more epf
|
|
2021-05-04 01:21:18
|
EPF 0 is quite blocky in an unpleasant way since it's line-art. EPF 1 and 2 blur it just enough to remove most of the blockiness, but not too much so details don't get nuked. And EPF 3 is just... ugh. It's so overblurred that even EPF 0 is better.
|
|
|
_wb_
|
|
What's the difference between the "normal" ๐งaugli and the 3-norm?
|
|
2021-05-04 01:24:42
|
the first number is the maxnorm, basically the worst distortion anywhere in the image. The 3-norm is something closer to the average distortion over the whole image. Maxnorm is useful if you want to be sure that there is nothing happening like an easy background that has no artifacts but the interesting part of the image does have artifacts, but 3-norm is closer to what ssimulacra does and probably correlates better with the overall subjective quality assessment of the image.
|
|
2021-05-04 01:25:31
|
the simple metrics like psnr/ssim/vmaf etc are based on just the average over the whole image, so they suffer from the "easy background compensates for artifacts in the foreground" problem
|
|
2021-05-04 01:26:20
|
3-norm is better than just taking the average, but not as sensitive as max (inf-norm)
|
|
|
|
Deleted User
|
|
_wb_
it's somewhat surprising to me that epf 1/2 actually make things better than no epf - I would expect the metrics to just get worse with more epf
|
|
2021-05-04 01:29:27
|
Visual comparison between different EPF values:
https://slow.pics/c/0vpzkivz
|
|
|
|
veluca
|
|
_wb_
it's somewhat surprising to me that epf 1/2 actually make things better than no epf - I would expect the metrics to just get worse with more epf
|
|
2021-05-04 01:37:26
|
yeah, that's a surprise for me too ๐
|
|
|
|
Deleted User
|
2021-05-04 01:49:27
|
I've just compiled the latest JPEG XL build and redone **Butteraugli**.
```./butteraugli_main 1hxwd.png epf0.png
6.5188107491
3-norm: 1.861889
./butteraugli_main 1hxwd.png epf1.png
6.3523821831
3-norm: 1.831513
./butteraugli_main 1hxwd.png epf2.png
6.2814126015
3-norm: 1.859491
./butteraugli_main 1hxwd.png epf3.png
8.0532217026
3-norm: 2.298350```
Despite the tweaks in the algorithm the relative ranking didn't change.
**SSIMULACRA** remained completely intact.
|
|
|
lithium
|
|
_wb_
the first number is the maxnorm, basically the worst distortion anywhere in the image. The 3-norm is something closer to the average distortion over the whole image. Maxnorm is useful if you want to be sure that there is nothing happening like an easy background that has no artifacts but the interesting part of the image does have artifacts, but 3-norm is closer to what ssimulacra does and probably correlates better with the overall subjective quality assessment of the image.
|
|
2021-05-04 02:24:44
|
how to correct read butteraugli 3-norm score?
lower than 1.0 is good? bigger than 1.0 is bad?
|
|
|
_wb_
|
2021-05-04 02:25:20
|
lower is better, yes
|
|
2021-05-04 02:26:49
|
in principle, a maxnorm score of 1 means that if you view the image from 1000 pixels distance and flip between the original and the distorted image, there is at least one spot where you can just barely see a small difference (a just-noticeable-difference).
|
|
2021-05-04 02:27:21
|
if it's below 1 it should be no longer noticeable, above 1 easier to notice
|
|
2021-05-04 02:27:46
|
of course not everyone has the same vision and it also depends on other factors like ambient lighting, the screen brightness, etc
|
|
2021-05-04 02:28:26
|
(and of course if you zoom in or get closer to the screen, more becomes visible too)
|
|
|
raysar
|
2021-05-04 02:28:41
|
My eye prefer epf 3, could you add an extra strenght epf 4-5 for smaller jxl file? ๐
|
|
|
lithium
|
2021-05-04 02:31:57
|
Jyrki Alakuijala say different p-norm suitable different quality area, like 12-norm is suitable libjpeg q95~q99
|
|
2021-05-04 02:32:48
|
what is 3-norm suitable quality area?
|
|
|
_wb_
|
2021-05-04 02:34:13
|
i'd say libjpeg q60-q90, but maybe <@!532010383041363969> has a different opinion. this is mostly gut feeling at this point, we need more subjective evals to calibrate/validate things
|
|
|
lithium
|
2021-05-04 02:37:44
|
last time, Jyrki Alakuijala Suggest me to use 9-norm for jxl -d 0.5 and -d 1.0
|
|
|
fab
|
2021-05-04 02:39:39
|
do you have generic build jxl
|
|
|
lithium
|
2021-05-04 02:40:41
|
I tested 3-norm, 6-norm, 12-norm and 9-norm, but I still confused how to correct use this score
|
|
|
_wb_
|
2021-05-04 02:45:01
|
basically larger norm means closer to "one problem ruins the whole image", smaller norm means closer to "as long as it's OK on average, it is OK"
|
|
|
lithium
|
|
_wb_
basically larger norm means closer to "one problem ruins the whole image", smaller norm means closer to "as long as it's OK on average, it is OK"
|
|
2021-05-04 02:53:39
|
like psnr compare butteraugli?
I have a white wall, and have black point in this wall,
in psnr and low p-norm, if black point is gone,
they don't too much mind this issue, white wall keep white is fine.
but maxButteraugli and high p-norm will very mind this issue.
|
|
|
_wb_
|
2021-05-04 02:57:53
|
exactly
|
|
|
fab
|
2021-05-04 02:59:21
|
someone has generic build for jxl?
|
|
2021-05-04 02:59:25
|
the one from today
|
|
|
lithium
|
|
_wb_
exactly
|
|
2021-05-04 02:59:39
|
I understand, thank you very much <@!794205442175402004> ๐
|
|
2021-05-04 04:45:13
|
I see some encoder change in 9a8f5195 commit(butteraugli change), that change will improve image quality?
|
|
|
_wb_
|
2021-05-04 05:08:09
|
Maybe a little at speeds 8/9
|
|
|
fab
|
2021-05-04 05:44:30
|
the thing i did re encoding is bad
|
|
2021-05-04 05:44:47
|
even with new build you can re encode in aom
|
|
2021-05-04 05:44:48
|
-m -q 91.48 --epf=3 -Y 2.62 -X 99 -s 9
-q 77 wp2 01052021 jamaika doom9 build slower preset
-q 58,4 cavif rs 0.6.7 preset 0
|
|
2021-05-04 05:45:42
|
but that is an insane amount of resource
|
|
2021-05-04 05:46:00
|
do you think is worth it
|
|
2021-05-04 05:46:12
|
like for 43 mb of photos i used 1 hours and 35
|
|
2021-05-04 05:46:36
|
but with those options i think i can't even try
|
|
2021-05-04 05:48:18
|
what do you think wb
|
|
2021-05-04 05:48:25
|
should i advertise this
|
|
2021-05-04 05:56:15
|
cavif rs 0.6.7 don't exist
|
|
2021-05-04 06:01:11
|
do you have a jpeg xl build from today thanks
|
|
2021-05-04 06:01:53
|
<@!321486891079696385> do you have jpeg xl from today?
|
|
|
BlueSwordM
|
|
fab
|
2021-05-04 06:03:27
|
can you send
|
|
2021-05-04 06:03:29
|
here
|
|
2021-05-04 06:03:38
|
also i need the link from the blog
|
|
2021-05-04 06:03:43
|
because reddit don't load to me
|
|
2021-05-04 06:04:32
|
did you deleted it
|
|
|
BlueSwordM
|
2021-05-04 06:05:11
|
No, Reddit is just down ๐
|
|
|
lithium
|
2021-05-04 06:05:12
|
Just a moment ago,I test cjxl v0.3.7-ab7c5e9b(not new commit) on my issue drawing image,
in -d 0.5 have much quality improve in this commit,
s7 can litte feel some very tiny noise(smooth), but is hard to see,
s8 and s9 look very great, i think just only need litte optimization probably can fix this issue.
I think i need test new commit, new commit probably have some new fix.
and get unexpected ssimulacra score in ab7c5e9b, i need to fix this issue on my tools
**cjxl -d 0.5 -s 7**
```bt_LLd_00a.png":
"maxButteraugli": "0.809804",
"maxButteraugli_jxl": "0.9525151849",
"9Norm": " 0.525483",
"dssim": "0.000288",
"ssimulacra": "0.51175491"
"iv01_07_29.png":
"maxButteraugli": "1.104811",
"maxButteraugli_jxl": "1.0105659962",
"9Norm": " 0.588762",
"dssim": "0.000792",
"ssimulacra": "0.00754120" ```
**cjxl -d 0.5 -s 8**
```"bt_LLd_00a.png":
"maxButteraugli": "0.821976",
"maxButteraugli_jxl": "0.6731215119",
"9Norm": " 0.402167",
"dssim": "0.000229",
"ssimulacra": "0.51101196"
"iv01_07_29.png":
"maxButteraugli": "0.912869",
"maxButteraugli_jxl": "0.7721188068",
"9Norm": " 0.474472",
"dssim": "0.000703",
"ssimulacra": "0.00674128" ```
**cjxl -d 0.5 -s 9**
```"bt_LLd_00a.png":
"maxButteraugli": "0.841169",
"maxButteraugli_jxl": "0.6185841560",
"9Norm": " 0.377900",
"dssim": "0.000217",
"ssimulacra": "0.51096180"
"iv01_07_29.png":
"maxButteraugli": "0.905566",
"maxButteraugli_jxl": "0.7593594790",
"9Norm": " 0.464589",
"dssim": "0.000686",
"ssimulacra": "0.00664199" ```
**avif q7 ycocg**
``` "bt_LLd_00a.png":
"maxButteraugli": "0.965656",
"maxButteraugli_jxl": "0.8684271574",
"9Norm": " 0.459998",
"dssim": "0.000163",
"ssimulacra": "0.00176666"
"iv01_07_29.png":
"maxButteraugli": "1.436351",
"maxButteraugli_jxl": "1.0399889946",
"9Norm": " 0.595515",
"dssim": "0.000617",
"ssimulacra": "0.00495691" ```
|
|
|
fab
|
2021-05-04 06:06:12
|
but discord is not down
|
|
2021-05-04 06:06:21
|
you can send if you have cjxl exe from today
|
|
2021-05-04 06:06:35
|
or the article link
|
|
2021-05-04 06:10:39
|
ah squoosh has jxl
|
|
|
|
Deleted User
|
|
BlueSwordM
No, Reddit is just down ๐
|
|
2021-05-04 06:33:52
|
AGAIN? <:kekw:808717074305122316>
|
|
|
Petr
|
2021-05-05 06:23:38
|
Easy help: Don't use speed 3. Use the default speed 7 and you get to 26 kB. Or even slower speed to make it even lighter.
|
|
|
lithium
|
2021-05-05 08:48:24
|
cjxl v0.3.7 9a8f5195 on my issue drawing image(non-photographic image)
**For drawing image**
***Great***
-d 0.5 s8 s9
***Good recommend to s8 s9***
-d 0.5 s7
***Okay but have risk***
-d 1.0 s7 s8 s9
***Unacceptable***
-d 1.9|-q 80
In my test, -d 0.5 s7 is good, but smooth area still have tiny noise, not easy to see,
-d 0.5 s8 and s9 tiny noise is gone, everything is great.
-d 1.0 s7 smooth area tiny noise issue will increase, s8 and s9 can reduce, but still can see some issue.
-d 1.9|-q 80 s7 smooth area have much noise, i think that is unacceptable.
ssimulacra get unexpected score, i still don't know why.
|
|
2021-05-05 08:48:53
|
**d0.5 s7**
```bt_LLd_00a.png":
"maxButteraugli": "0.809787",
"maxButteraugli_jxl": "0.9525215626",
"9Norm": " 0.526194",
"dssim": "0.000289",
"ssimulacra": "0.51176302"
"iv01_07_29.png":
"maxButteraugli": "1.104811",
"maxButteraugli_jxl": "0.9993979931",
"9Norm": " 0.587139",
"dssim": "0.000793",
"ssimulacra": "0.00744962"```
**d0.5 s8**
```"bt_LLd_00a.png":
"maxButteraugli": "0.822295",
"maxButteraugli_jxl": "0.7336245775",
"9Norm": " 0.406894",
"dssim": "0.000222",
"ssimulacra": "0.51099064"
"iv01_07_29.png":
"maxButteraugli": "0.902251",
"maxButteraugli_jxl": "0.7896180153",
"9Norm": " 0.479455",
"dssim": "0.000680",
"ssimulacra": "0.00636489"```
**d0.5 s9**
```"bt_LLd_00a.png":
"maxButteraugli": "0.728147",
"maxButteraugli_jxl": "0.7415617704",
"9Norm": " 0.409213",
"dssim": "0.000215",
"ssimulacra": "0.51097473"
"iv01_07_29.png":
"maxButteraugli": "0.902173",
"maxButteraugli_jxl": "0.7899788618",
"9Norm": " 0.471273",
"dssim": "0.000657",
"ssimulacra": "0.00608337"```
**avif q7 ycocg**
```"bt_LLd_00a.png":
"maxButteraugli": "0.965656",
"maxButteraugli_jxl": "0.8684271574",
"9Norm": " 0.459998",
"dssim": "0.000163",
"ssimulacra": "0.00176666"
"iv01_07_29.png":
"maxButteraugli": "1.436351",
"maxButteraugli_jxl": "1.0399889946",
"9Norm": " 0.595515",
"dssim": "0.000617",
"ssimulacra": "0.00495691"```
|
|
|
fab
|
2021-05-05 09:20:08
|
this is the quality i find acceptable
|
|
2021-05-05 09:20:20
|
when the alien artifacts are hidden most
|
|
2021-05-05 09:21:53
|
default 128 kb
|
|
2021-05-05 09:22:12
|
with this 221 kb
|
|
2021-05-05 09:23:32
|
|
|
2021-05-05 09:29:37
|
i'd say this is the equilibrium vs avif
|
|
2021-05-05 09:29:59
|
or just use d1 or d 0.5
|
|
2021-05-05 09:30:07
|
at speed 9
|
|
2021-05-05 09:50:27
|
do not use this
|
|
2021-05-05 09:50:37
|
i've found better custom settings
|
|
2021-05-05 09:51:04
|
|
|
2021-05-05 09:51:12
|
this compares decent with webp
|
|
|
Crixis
|
|
lithium
cjxl v0.3.7 9a8f5195 on my issue drawing image(non-photographic image)
**For drawing image**
***Great***
-d 0.5 s8 s9
***Good recommend to s8 s9***
-d 0.5 s7
***Okay but have risk***
-d 1.0 s7 s8 s9
***Unacceptable***
-d 1.9|-q 80
In my test, -d 0.5 s7 is good, but smooth area still have tiny noise, not easy to see,
-d 0.5 s8 and s9 tiny noise is gone, everything is great.
-d 1.0 s7 smooth area tiny noise issue will increase, s8 and s9 can reduce, but still can see some issue.
-d 1.9|-q 80 s7 smooth area have much noise, i think that is unacceptable.
ssimulacra get unexpected score, i still don't know why.
|
|
2021-05-05 09:51:15
|
not bad!
|
|
|
lithium
|
|
Crixis
not bad!
|
|
2021-05-05 09:57:58
|
I just need test s8 and s9 which one is best.
|
|
|
Crixis
|
2021-05-05 10:00:52
|
Drawing
|
|
2021-05-05 10:01:40
|
but non-photographic include Drawing I think
|
|
|
lithium
|
2021-05-05 10:07:16
|
but i think anime screenshots can't get lossless source, in best case you probably only can get yuv 444
|
|
|
fab
|
2021-05-05 10:19:29
|
wp2 i couldn't it crashed i don't remember the options
|
|
2021-05-05 10:20:50
|
|
|
2021-05-05 10:20:58
|
the test i did
|
|
2021-05-05 10:24:48
|
q 72.5 autoedge fiter optimize for decoding speed 3 effort 5
|
|
2021-05-05 10:25:04
|
|
|
2021-05-05 10:25:31
|
wb deletes two of those images
|
|
2021-05-05 10:25:38
|
one i repluoaded
|
|
2021-05-05 10:25:41
|
because is useful
|
|
2021-05-05 10:26:06
|
<#803645746661425173> is cleaned
|
|
|
_wb_
|
|
lithium
**d0.5 s7**
```bt_LLd_00a.png":
"maxButteraugli": "0.809787",
"maxButteraugli_jxl": "0.9525215626",
"9Norm": " 0.526194",
"dssim": "0.000289",
"ssimulacra": "0.51176302"
"iv01_07_29.png":
"maxButteraugli": "1.104811",
"maxButteraugli_jxl": "0.9993979931",
"9Norm": " 0.587139",
"dssim": "0.000793",
"ssimulacra": "0.00744962"```
**d0.5 s8**
```"bt_LLd_00a.png":
"maxButteraugli": "0.822295",
"maxButteraugli_jxl": "0.7336245775",
"9Norm": " 0.406894",
"dssim": "0.000222",
"ssimulacra": "0.51099064"
"iv01_07_29.png":
"maxButteraugli": "0.902251",
"maxButteraugli_jxl": "0.7896180153",
"9Norm": " 0.479455",
"dssim": "0.000680",
"ssimulacra": "0.00636489"```
**d0.5 s9**
```"bt_LLd_00a.png":
"maxButteraugli": "0.728147",
"maxButteraugli_jxl": "0.7415617704",
"9Norm": " 0.409213",
"dssim": "0.000215",
"ssimulacra": "0.51097473"
"iv01_07_29.png":
"maxButteraugli": "0.902173",
"maxButteraugli_jxl": "0.7899788618",
"9Norm": " 0.471273",
"dssim": "0.000657",
"ssimulacra": "0.00608337"```
**avif q7 ycocg**
```"bt_LLd_00a.png":
"maxButteraugli": "0.965656",
"maxButteraugli_jxl": "0.8684271574",
"9Norm": " 0.459998",
"dssim": "0.000163",
"ssimulacra": "0.00176666"
"iv01_07_29.png":
"maxButteraugli": "1.436351",
"maxButteraugli_jxl": "1.0399889946",
"9Norm": " 0.595515",
"dssim": "0.000617",
"ssimulacra": "0.00495691"```
|
|
2021-05-05 10:26:07
|
That's a strange ssimulacra score, maybe caused by color space issues? The non-jxl ssimulacra assumes all input to be sRGB
|
|
|
fab
|
2021-05-05 10:26:11
|
deleted 6 images in it
|
|
|
_wb_
|
2021-05-05 10:26:36
|
(best to use the jxl ssimulacra, it doesn't ignore icc profiles like the non-jxl one)
|
|
|
Orum
|
2021-05-05 10:26:44
|
Is there anyway to boost quality in dark areas relative to light(er) areas?
|
|
|
fab
|
2021-05-05 10:28:57
|
it still encodes too light and too information in the dark areas compared to the bitrate
|
|
2021-05-05 10:29:11
|
q78 jpeg looks in the preview like a 52,2 kb wp2
|
|
|
Orum
Is there anyway to boost quality in dark areas relative to light(er) areas?
|
|
2021-05-05 10:29:39
|
no, he said most users don't need those
|
|
2021-05-05 10:29:45
|
maybe you could use intensity
|
|
2021-05-05 10:29:48
|
target
|
|
|
Orum
|
2021-05-05 10:29:50
|
who is 'he'?
|
|
|
fab
|
2021-05-05 10:32:15
|
don't remember but wb said something about b and q values
|
|
2021-05-05 10:32:21
|
something like that
|
|
2021-05-05 10:32:31
|
that 99,9999% of users don't need
|
|
2021-05-05 10:32:54
|
https://discord.com/channels/794206087879852103/794206170445119489/835813088883113994
|
|
2021-05-05 10:32:59
|
here's found
|
|
2021-05-05 10:33:01
|
the message
|
|
|
Orum
|
2021-05-05 10:33:36
|
that was in reference to a completely separate discussion
|
|
2021-05-05 10:33:46
|
about color shift
|
|
|
fab
|
2021-05-05 10:33:55
|
maybe you are referring about intensity or noise
|
|
2021-05-05 10:34:09
|
but i think wb understood what you said
|
|
|
Crixis
|
|
Orum
Is there anyway to boost quality in dark areas relative to light(er) areas?
|
|
2021-05-05 10:34:34
|
I don't think there is
|
|
|
Orum
|
2021-05-05 10:34:34
|
No, the problem is that -d 1 is obviously not visually lossless in dark areas of an image, while for lighter areas it's totally fine
|
|
|
fab
|
2021-05-05 10:35:07
|
use speed 9
|
|
|
Crixis
|
|
Orum
No, the problem is that -d 1 is obviously not visually lossless in dark areas of an image, while for lighter areas it's totally fine
|
|
2021-05-05 10:35:43
|
i think depends on so many things (display, single image feature)
|
|
|
fab
|
2021-05-05 10:36:03
|
or one of those two options if you want lower quality
|
|
2021-05-05 10:36:04
|
https://discord.com/channels/794206087879852103/794206170445119489/839447534555627540
|
|
|
Crixis
|
2021-05-05 10:36:10
|
the best thing is go -d < 1 (0.6, .05)
|
|
|
fab
|
2021-05-05 10:36:16
|
72.5 q 76.7 with the settings i mentioned
|
|
2021-05-05 10:36:29
|
no best thing in d 1 d 0.5 is use speed 9
|
|
2021-05-05 10:36:40
|
it will encode less bits to the dark areas
|
|
2021-05-05 10:36:46
|
so it wil boosts also visual quality
|
|
|
Orum
|
2021-05-05 10:36:54
|
Yeah, I had to go down to -d 0.4 to get the dark areas looking good, but then (I assume) it also spends a lot more bits on the lighter areas which already looked fine
|
|
|
fab
|
2021-05-05 10:37:15
|
the encoder claims to be similar to jpg not mozjpeg
|
|
2021-05-05 10:37:34
|
mozpeg quality 78 as you seen in benchmark looks like a 52,2 kb wp2
|
|
2021-05-05 10:37:38
|
but with less banding
|
|
|
Crixis
|
|
Orum
Yeah, I had to go down to -d 0.4 to get the dark areas looking good, but then (I assume) it also spends a lot more bits on the lighter areas which already looked fine
|
|
2021-05-05 10:37:53
|
you get bad dark in all image?, it can by a too much luminosity on the screen
|
|
|
fab
|
2021-05-05 10:37:55
|
the encoder still don't match mozjpeg eno0ugh
|
|
2021-05-05 10:38:06
|
because is very new
|
|
2021-05-05 10:38:44
|
the modular quality and the galaxy s4 screenshots at d1 s7 were encoded good with old build
|
|
2021-05-05 10:38:54
|
but if i need with this build i use speed 9
|
|
2021-05-05 10:39:05
|
because of what you said
|
|
|
Orum
|
2021-05-05 10:39:05
|
What happens is basically a blur around sharp details in dark areas. They become very poorly defined, almost like a gaussian blur was applied
|
|
|
fab
|
2021-05-05 10:39:21
|
and because speed 9 is super fast for hd even on squoosh. it encoded in 2 seconds
|
|
2021-05-05 10:39:40
|
(effort 0-6)
|
|
2021-05-05 10:39:53
|
maybe is the contrary
|
|
|
Crixis
|
|
Orum
What happens is basically a blur around sharp details in dark areas. They become very poorly defined, almost like a gaussian blur was applied
|
|
2021-05-05 10:39:56
|
can send an example in bencmark?
|
|