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

jxl

Anything JPEG XL related

Maiki3
2021-08-07 06:24:07
which part of it looks better? i'm struggling to see how aomenc wins here
2021-08-07 06:25:29
okay so, from what i can see.... the jxl produces better uniformity of detail across that entire rock (and even the entire image)
BlueSwordM
Maiki3 which part of it looks better? i'm struggling to see how aomenc wins here
2021-08-07 06:25:54
It preserves some parts of the original texture better, over JXL's microblocking.
Maiki3
2021-08-07 06:25:54
aomenc is more picky and choosy about what details it wants to preserve, and in some areas, it destroys the detail entirely, creating large washed out blocks
2021-08-07 06:26:47
aomenc:
2021-08-07 06:26:55
jxl:
BlueSwordM
2021-08-07 06:27:28
I think the main reason CJXL performs poorly on Sonic is that the model texture itself has a ton of wavy internal lines.
2021-08-07 06:27:47
This means artifacting galore for CJXL, but not for aomenc.
Maiki3
2021-08-07 06:28:07
yeah sonic's head doesn't look right in the jxl
BlueSwordM
Maiki3 yeah sonic's head doesn't look right in the jxl
2021-08-07 06:28:13
Yeah, I can see that.
2021-08-07 06:28:23
cjxl is trying to preserve the lines, but can't at only `-d 1`
2021-08-07 06:28:37
aomenc just smushes everything, but avoids the disgusting artifacts.
Maiki3
2021-08-07 06:28:48
the thing i like about jxl, is that i don't have to worry about detail being lost in dark areas
2021-08-07 06:28:59
and i don't have to worry about large blocks being turned into smears
2021-08-07 06:29:22
but, jxl does tend to produce anomalous artifacting around harsh transitions
2021-08-07 06:29:39
so, it's kind of a "choose your poison" situation
2021-08-07 06:30:36
i don't believe aomenc is truly superior here. to my eye, the JXL wins because the detail is better preserved across the entire image
2021-08-07 06:30:45
but, if you asked me if aomenc was sufficient i'd probably say yes
BlueSwordM
Maiki3 i don't believe aomenc is truly superior here. to my eye, the JXL wins because the detail is better preserved across the entire image
2021-08-07 06:30:48
Oh well, I just discovered something super interesting.
2021-08-07 06:31:11
I think I might know the reason why aomenc might look better in my image viewer, but not in a browser. The blurring effect in some spots is still present, but the texture detail preservation is better.
Maiki3
2021-08-07 06:32:06
<@!321486891079696385> did you see this image? turned out pretty decent. I used photon noise here which is pretty interesting https://discord.com/channels/794206087879852103/794206170445119489/873091004817870888
BlueSwordM
Maiki3 <@!321486891079696385> did you see this image? turned out pretty decent. I used photon noise here which is pretty interesting https://discord.com/channels/794206087879852103/794206170445119489/873091004817870888
2021-08-07 06:32:47
It looks good.
Maiki3 the thing i like about jxl, is that i don't have to worry about detail being lost in dark areas
2021-08-07 06:33:15
Well, there are cases where aomenc does *better* in dark areas.
2021-08-07 06:33:21
Specific corner cases, but they do exist.
2021-08-07 06:33:42
https://discord.com/channels/794206087879852103/794206170445119489/869816295779102770
2021-08-07 06:33:59
Look at the guy in the bottom left...
Maiki3
2021-08-07 06:34:18
JXL tends to be a little more reliable though, imo. I can batch convert a bunch of images to JXL quickly, with default settings... and for the most part, I don't have to worry about the quality being butchered
2021-08-07 06:34:34
I have only very recently discovered that JXL suffers with gradients and banding artifacts.
2021-08-07 06:35:10
looking...
BlueSwordM Look at the guy in the bottom left...
2021-08-07 06:36:24
Oh yeah that's an example where aomenc definitely wins...
2021-08-07 06:36:39
but it depends on what your eyes on more likely to focus on
2021-08-07 06:37:03
for instance, in order to even notice the faces look that bad with cjxl, you'd have to zoom way in on the image
2021-08-07 06:38:06
but, zoomed out, it's pretty clear that jxl is preserving texture more uniformly
2021-08-07 06:38:19
i guess i should use the word "texture" instead of "detail"
BlueSwordM
2021-08-07 06:40:01
In this case, I'd say one thing. The average quality of that aomenc puts out at mid-high bpp is lower than cjxl's output, but in my testing experience with tuned settings(tuned for both encoders), aomenc's output is *safer* to the end user if you include those corner cases.
Maiki3
2021-08-07 06:42:40
i guess it's something we'll have to disagree to because if you asked me to batch convert a collection of lossless images to aomenc or jxl, I think i'd more likely choose JXL
BlueSwordM
2021-08-07 06:44:16
It also doesn't help I actually handicapped aomenc in 2 ways(one was involuntary...) 1. Color Q variation per block or `--enable-chroma-deltaq=1` has been broken for more than 2 weeks now, meaning it only uses one chroma quantizer for the whole image, which is not optimal obviously, but since it's broken in the master build, I have to be fair. 2. To JXL's credit, `--tune=butteraugli` is shockingly good, even more so in intra only. The reason I used 10b for aomenc is that it got rid of the banding artifacts in Sonic's fur, but that meant I could not use `--tune=butteraugli` which made for a worse looking image overall.
Maiki3
2021-08-07 06:45:14
is butteraugli a jxl feature?
2021-08-07 06:45:50
i have never used it. I should experiment with it
BlueSwordM
Maiki3 is butteraugli a jxl feature?
2021-08-07 06:46:06
Yes, it is what it uses for its RD metric and general quality metric overall. What happened is that one aom dev looked at it, and decided to implement it in aomenc.
2021-08-07 06:46:19
It was one of the best things to ever happen to aomenc for AVIF.
Maiki3
2021-08-07 06:46:24
nice
2021-08-07 06:46:31
feature theft, i like it
diskorduser
2021-08-07 06:49:20
Combine both formats and make avxl πŸ€ͺ
Maiki3
2021-08-07 06:50:07
JpegAV1
BlueSwordM
2021-08-07 06:51:30
Anyway, I also found a few very interesting things along the way: 1. `--tune=butteraugli` in aomenc is superior to all RD tunes except for SSIM in pure detail retention(but the SSIM RD tune just hurts colors so it does not exist to me). 2. `--tune=butteraugli` is faster and higher quality than `--tune=vmaf_without_preprocessing`. 3. `--tune=psnr` is not based on vanilla PSNR, but on PSNR-HVS, which is why it's actually not too bad as a metric, a definite upgrade over what VP9 used(although still not an optimal RD tune metric). 4. Intra only AV1 scales stupid well in terms of threads, even at small image sizes. 5. aomenc's lossless inter performance is great, but lossless intra only performance is worse than JXL and WebP in most cases. Decoding speed? Not a good idea... 6. SVT-AV1 only supports 4:2:0 output <:ReeCat:806087208678588437> and is not very useful below speed 7. 7. dav1d is a very fast decoder, and using libyuv, it can be made faster. 8. cjxl and rav1e beat almost any encoder in terms of color performance. 9. For any HBD sources, just use JXLℒ️ 10. For any photographic images, just use JXLℒ️, but now, aomenc is now pretty good with images as well. aomenc has seriously improved, so I'm not scared of that anymore. 11. Grain synthesis/noise is **powerful**, especially for AV1 encoders. 12. 8-bit YUV sucks.
Maiki3
2021-08-07 06:53:12
jon mentioned something about ordered dithering, which is a way to reduce the appearance of banding
2021-08-07 06:53:25
whoever implements that first wins the space race.
2021-08-07 06:54:03
jxl has photon noise and iirc av1 has grain synth
2021-08-07 06:54:08
but both are kind of, cheap hacks
_wb_
2021-08-07 06:59:15
Jxl is internally always using high bit depth (32-bit float in libjxl), but when decoding to 8-bit output we currently just quantize without dithering
2021-08-07 07:00:02
The high bit depth data is available though, so we could easily do something better
2021-08-07 07:01:36
In avif it's a bit different because 8-bit avif is 8-bit yuv and the pipeline doesn't really have an intermediate high bit depth representation (which is why 8-bit is faster to decode than 10-bit)
2021-08-07 07:03:02
So in 8-bit avif you can add noise/grain and try to hide banding that way, but you can't really decode to a clean no-banding image, afaik
2021-08-07 07:03:54
While in jxl the actual data is high bit depth and banding can be avoided by just converting it better to 8-bit
Maiki3
_wb_ While in jxl the actual data is high bit depth and banding can be avoided by just converting it better to 8-bit
2021-08-07 07:04:30
I feel like that point alone is reason enough to declare JXL the winner lol. it's more future proof.
_wb_ Jxl is internally always using high bit depth (32-bit float in libjxl), but when decoding to 8-bit output we currently just quantize without dithering
2021-08-07 07:06:21
Yeah, if JXL could decode to 8bit better, with some form of ordered dithering, or something resembling that of photoshop.... the scourge of banding artifacts would be history.
2021-08-07 07:07:17
i actually feel like more people should be focused on banding artifact removal. the industry seems to be pretty much oblivious to it.
2021-08-07 07:07:55
I loaded up youtube app on my living room TV one day, and they used a nasty gradient background, and i could see banding all throughout it. it was disturbing
monad
BlueSwordM So, it looks like that tuned aomenc still outperforms cjxl in a non-negligible number of artificial image scenarios(IE games), which is rather surprising, even after the enhancements that it's been receiving: https://slow.pics/c/wbbmMSJ8
2021-08-07 07:39:56
Viewing at 1000-2000px distance, the JXL looks unquestionably more accurate to me ... even in the mentioned rock.
_wb_
2021-08-07 07:44:33
We need a --viewing-distance option to cjxl imo
2021-08-07 07:45:45
In case you want to encode for closer than usual viewing distance (zooming) or for further than usual (very high density displays).
2021-08-07 07:47:07
Adjusting the --distance is similar but not quite the same thing (just like intensity target is not quite the same thing)
Maiki3
_wb_ We need a --viewing-distance option to cjxl imo
2021-08-07 07:53:38
I feel like that's going to be a powerful feature that's only going to be used in edge case scenarios by people who know how to take advantage of it
2021-08-07 07:55:05
as of right now, I'm personally more interested in features that affect default settings... so for instance, that ordered dithering feature would be something that could be added that initially could be deemed experimental, that would eventually be default enabled once all of the kinks are ironed out
2021-08-07 07:56:21
i feel like JXL has to position itself correctly in order to be more heavily used. right now it decodes and encodes faster than aomenc. That alone makes it more attractive.
2021-08-07 07:58:38
and imo, based on my own subjective, personal viewing, JXL has better texture uniformity, whereas aomenc causes these unsightly smears where the quantizer removed too much texture detail, usually in dark areas.
2021-08-07 07:59:39
JXL positions itself more as a true image format, rather than aomenc
_wb_
2021-08-07 08:01:48
Jxl was designed to be an image codec, avif was designed to be a quick hack to leverage av1 for images.
lithium
BlueSwordM Anyway, I also found a few very interesting things along the way: 1. `--tune=butteraugli` in aomenc is superior to all RD tunes except for SSIM in pure detail retention(but the SSIM RD tune just hurts colors so it does not exist to me). 2. `--tune=butteraugli` is faster and higher quality than `--tune=vmaf_without_preprocessing`. 3. `--tune=psnr` is not based on vanilla PSNR, but on PSNR-HVS, which is why it's actually not too bad as a metric, a definite upgrade over what VP9 used(although still not an optimal RD tune metric). 4. Intra only AV1 scales stupid well in terms of threads, even at small image sizes. 5. aomenc's lossless inter performance is great, but lossless intra only performance is worse than JXL and WebP in most cases. Decoding speed? Not a good idea... 6. SVT-AV1 only supports 4:2:0 output <:ReeCat:806087208678588437> and is not very useful below speed 7. 7. dav1d is a very fast decoder, and using libyuv, it can be made faster. 8. cjxl and rav1e beat almost any encoder in terms of color performance. 9. For any HBD sources, just use JXLℒ️ 10. For any photographic images, just use JXLℒ️, but now, aomenc is now pretty good with images as well. aomenc has seriously improved, so I'm not scared of that anymore. 11. Grain synthesis/noise is **powerful**, especially for AV1 encoders. 12. 8-bit YUV sucks.
2021-08-07 08:31:08
Hello BlueSwordM, your research is amazing, πŸ™‚ Could you share some suggest or opinion for anime, manga contents quality optimize?
fab
2021-08-07 11:49:09
unfortunately an image was deleted
2021-08-07 11:49:15
i was looking for a jpeg xl build
2021-08-07 11:49:22
now i don't know even which to download
2021-08-07 11:51:25
don't have it in my history
2021-08-07 11:51:54
who deleted the images?
2021-08-07 11:52:00
could you say build?
veluca
2021-08-07 01:34:25
https://artifacts.lucaversari.it/libjxl/libjxl/latest/
2021-08-07 01:36:47
it *should* update every hour, but I didn't really test it too much
improver
2021-08-07 01:38:51
why only for ubuntu and not debian too?
2021-08-07 01:39:57
also if these are builds from main branch, should they have version number of 0.5.0?
2021-08-07 01:41:56
it would be nice to have it as repository and not zip (so that one could just install/update via apt) but idk how hard doing that is
veluca
2021-08-07 01:50:21
there's a zip with a bunch of .deb files
2021-08-07 01:50:35
ah, you mean as something you could add to your sources.list
2021-08-07 01:50:37
... no clue
2021-08-07 01:51:29
as for debian: nothing stopping us IIRC, you can probably send a CL to add it πŸ˜›
improver also if these are builds from main branch, should they have version number of 0.5.0?
2021-08-07 01:51:59
good question, likely not but I have no idea how to change it, so maybe file an issue?
improver it would be nice to have it as repository and not zip (so that one could just install/update via apt) but idk how hard doing that is
2021-08-07 01:52:24
btw, I doubt you want to put in your sources.list something that updates every *commit*...
improver
2021-08-07 01:54:10
well i already use libjxl-git from aur so that wouldn't be so different. master-tracking repositories aren't very common but aren't exactly uncommon either
veluca
2021-08-07 01:54:29
it seems like it wouldn't be too complex
2021-08-07 01:54:45
I might try later today
2021-08-07 01:55:06
but I don't have a debian(ish) at hand for testing πŸ˜› I guess I can just use docker...
improver
2021-08-07 01:56:06
yeah, that'd work
veluca
2021-08-07 01:57:23
anybody here volunteers?
improver
2021-08-07 02:33:10
tbh debian/ubuntu isn't my main OS just something I sometimes use on servers. could attempt anyway
fab
2021-08-07 02:33:16
the it encoder way worsen with female
2021-08-07 02:33:49
but compression quality contrast of green gray and noise way better
2021-08-07 02:34:08
honestly i don't care about perfect representation of female faces
2021-08-07 02:34:17
on explicit content isn't necessary
2021-08-07 02:34:23
and anyway s 9 exists for that
2021-08-07 02:34:28
and the encoder will update
2021-08-07 02:34:35
so there isn't any problem
2021-08-07 02:36:10
i'd say with avif speed 7 q 24 should look similar
2021-08-07 02:36:14
so default quality q24
2021-08-07 02:36:39
and 3 slower speed
2021-08-07 02:36:58
do not know
2021-08-07 02:37:13
2021-08-07 02:37:18
2021-08-07 02:37:27
open those images there isn't any skin shown
2021-08-07 02:51:26
2021-08-07 02:51:35
open this in your nightly browser
2021-08-07 02:51:51
209 kb is still too much for this image
2021-08-07 02:52:01
is not saving any byte
2021-08-07 02:56:28
i'd say 17052021 cpu 5 min 22 max 29 svt
2021-08-07 02:56:37
could be at same level
2021-08-07 02:56:42
but that build don't exist
2021-08-07 02:56:47
wasn't released
diskorduser
2021-08-07 02:56:52
All of your testing and rants are useless. you don't have lossless source.
fab
2021-08-07 02:57:17
i don't have any lossless source
2021-08-07 02:57:23
can galaxy s4 shoot in raw?
2021-08-07 02:57:30
like a professional camera you have?
2021-08-07 02:57:45
can shoot dng selfies?
2021-08-07 02:59:51
2021-08-07 02:59:59
the sharpening don't seem bad
2021-08-07 03:00:02
is good
2021-08-07 03:00:07
arun watch this image
diskorduser
2021-08-07 03:15:39
If your camera/ phone doesn't shoot raw, better download raw / dng files from internet and do proper testing.
fab
2021-08-07 03:19:32
wallpaper aren't in raw
2021-08-07 03:19:37
they are in jpg
diskorduser
2021-08-07 03:20:21
That's why jpg recompression mode exists. You're not supposed to use vardct on jpg source.
2021-08-07 03:21:43
Stop doing -d 999999 on jpg sources.
veluca
improver tbh debian/ubuntu isn't my main OS just something I sometimes use on servers. could attempt anyway
2021-08-07 03:31:18
I *think* I got it to work
2021-08-07 03:31:30
although of course we need to have better version numbers πŸ˜„
2021-08-07 03:33:16
by the way, I suspect the bionic package is br0ken
2021-08-07 03:34:52
https://artifacts.lucaversari.it/info.txt <- if someone wants to add the sources.list ... not recommended though πŸ˜„ at least not yet
fab
2021-08-07 03:35:43
2021-08-07 03:36:14
veluca
veluca although of course we need to have better version numbers πŸ˜„
2021-08-07 04:04:25
fixed (only from there though): now you end up installing things like version "0.5.0~20210806T163817Z~9f95279fb357352ef6222477e755180d3e238ff7"
lithium
2021-08-07 04:14:29
<@!321486891079696385> sorry for ping, Could you share your encoding experience about anime, manga contents quality optimize? > https://discord.com/channels/794206087879852103/794206170445119489/873458315450023977
2021-08-07 04:22:13
I agree 9. and 10. just use JXLℒ️, but for anime, manga contents I should use which encoder?
BlueSwordM
lithium I agree 9. and 10. just use JXLℒ️, but for anime, manga contents I should use which encoder?
2021-08-07 04:30:23
For now, I'd stick to tuned aomenc in avifenc for drawings.
2021-08-07 04:32:01
`avifenc -d 10 -s 4 -j X --min 0 --max 63 -a end-usage=q -a cq-level=16 -a color:sharpness=2 -a color:qm-min=0 -a color:deltaq-mode=3` You can change `sharpness` depending on how much detail retention you want.
improver
veluca https://artifacts.lucaversari.it/info.txt <- if someone wants to add the sources.list ... not recommended though πŸ˜„ at least not yet
2021-08-07 04:32:13
actually i don't have ubuntu in any of my boxes but i do have debian in some. i wonder if using ubuntu builds would work on them
veluca
2021-08-07 04:32:32
probably not, dependencies and all...
improver
2021-08-07 04:32:41
guess i could just try and see tbh
veluca
2021-08-07 04:33:17
we might add debian releases at some point
spider-mario
2021-08-07 04:35:18
I read that as β€œFabian releases” somehow
lithium
BlueSwordM `avifenc -d 10 -s 4 -j X --min 0 --max 63 -a end-usage=q -a cq-level=16 -a color:sharpness=2 -a color:qm-min=0 -a color:deltaq-mode=3` You can change `sharpness` depending on how much detail retention you want.
2021-08-07 04:35:24
Thank you very much for your help πŸ™‚ I still confuse this question, jxl can keep better grain and detail, but I get some color issue on jxl, avif also a strong option, but not easy to optimize for each image.
spider-mario
2021-08-07 04:35:25
maybe because of neknekk’s joke
improver
improver guess i could just try and see tbh
2021-08-07 05:04:13
yeah that didn't work
veluca
2021-08-07 05:42:02
not surprised πŸ˜„ I *think* it should be pretty easy to also do debian builds, but I'm not an expert...
2021-08-07 05:49:36
ah nvm, github actions doesn't have that builder
fab
2021-08-07 06:17:28
I like
2021-08-07 06:17:29
for %i in (C:\Users\User\Documents\r3223\*.png) do cjxl -d 0.889 --intensity_target=276 --epf=1 -s 8 -I 0.657 --use_new_heuristics %i %i.jxl
2021-08-07 06:17:32
with the build
2021-08-07 06:17:53
2021-08-07 06:17:59
veluca built
2021-08-07 06:18:10
i think is the perfect settings
2021-08-07 06:18:18
let'see how is the size
2021-08-07 06:18:35
2021-08-07 06:18:38
2021-08-07 06:19:37
not any gain on this
2021-08-07 06:19:45
but on other images could give something
2021-08-07 06:22:55
1,93 mpx/s
2021-08-07 06:39:18
2021-08-07 06:39:27
though on normal fonts it looks worse
2021-08-07 06:39:37
and size of 503 image is not 60 mb but 80 mb
veluca
2021-08-07 07:35:54
I'm not sure the github builds are as good as they can be, by the way - if some of the more advanced windows users want to do a quality check, it would be useful...
Scope
2021-08-07 07:48:06
Yep, for Windows users it is usually the most difficult to compile something and most won't or can't do it (unless they are developers), and Windows users have the largest percentage compared to other operating systems, so most applications on Github have compiled versions for Windows (and less often for something else)
2021-08-07 07:49:58
Like:
2021-08-07 07:50:11
2021-08-07 07:51:04
(source and Windows binaries)
veluca
2021-08-07 08:19:17
I think this one is compiled with Visual Studio and not llvm, so how good it is is a mystery...
diskorduser
2021-08-08 01:31:57
It's difficult to take raw photos on phones which doesn't support camera2api.
Maiki3
2021-08-08 08:58:21
2021-08-08 08:58:32
Neat little GUI I made for JpegXL using directoryopus
Deleted User
2021-08-08 11:29:16
oh nice next is just lossy/lossless toggle?
fab
2021-08-08 12:22:07
make it to choose the exe file
2021-08-08 02:38:01
on galaxy s4 it only crashes **Smartphone (please complete the following information):** - Device: [e.g. Xiaomi PocoF2] - OS: [e.g. Android9] - Version [e.g. 4.3.8] the viewer don't view jxl, could you open an issue mai minase
Maiki3
2021-08-08 02:38:28
please open a github and release for open source GPL public domain
2021-08-08 02:38:58
and for windows if you can
2021-08-08 02:39:16
it's very good
2021-08-08 02:39:24
you did nice
veluca
2021-08-08 02:56:33
.. if you go with Apache or MIT/BSD it might be better than GPL πŸ˜› but then, up to you xD
fab
2021-08-08 02:59:02
is not my program but maiki one
2021-08-08 02:59:04
https://github.com/deckerst/aves
2021-08-08 02:59:19
neither this work on my galaxy s4
2021-08-08 02:59:22
nothing works
2021-08-08 02:59:29
is time to change phone
2021-08-08 02:59:42
whetever i get green pass or not
2021-08-08 02:59:50
technology will change anyway
2021-08-08 02:59:55
but not faster than covid
Maiki3
2021-08-08 03:01:31
if you make a package for windows, i can integrate other old jxl exe to have stronger deblocking or a jxl sharpened, obviously no good as pingo 0.99.5 but will be at least good as on noise AI
2021-08-08 03:01:39
for way less complexity
2021-08-08 03:01:47
and you have jxl file so standard proof file
2021-08-08 03:21:56
so is there a jxl viewer for galaxy s4 that was rooted before lollipop 5.0
2021-08-08 03:22:05
don't know if it received lollipop 5.0 by official OTA
2021-08-08 03:22:15
i guessed the word OTA didn't existed at that time
Maiki3
2021-08-09 06:43:48
original:
2021-08-09 06:44:15
upscaled, cleaned up in photoshop, and saved with JXL with photon noise:
fab please open a github and release for open source GPL public domain
2021-08-09 06:45:50
The gui I made is just a Javascript for directory opus.... nothing fancy. You would have to own directory opus in order to take advantage of it.
fab
Maiki3 The gui I made is just a Javascript for directory opus.... nothing fancy. You would have to own directory opus in order to take advantage of it.
2021-08-09 06:47:02
can you send
2021-08-09 06:47:14
and also add exe selection and custom command line
Maiki3
2021-08-09 06:47:35
I dunno how to do all of that, but sure. give me a sec
fab
2021-08-09 06:49:26
do directory opus light support your script?
Maiki3
2021-08-09 06:50:38
Here is the Script code for it. Just create a custom button, set Function to "Script Function", set Script Type to "JScript" https://pastebin.com/embed_iframe/e70NLE7a?theme=dark and then for the resources tab which is the actual GUI part of it: https://pastebin.com/embed_iframe/GitmpMis?theme=dark
2021-08-09 06:51:01
you'll have to modify the script to target your ``cjxl.exe``
fab do directory opus light support your script?
2021-08-09 06:51:09
Not sure.
fab
2021-08-09 06:52:45
2021-08-09 06:52:53
where is
Maiki3
2021-08-09 06:53:31
right click a toolbar, go to customize, right click the toolbar again, click new > new button
2021-08-09 06:54:18
Mine looks something like this:
fab
2021-08-09 06:54:55
Maiki3
2021-08-09 06:55:21
hmm wrong area
fab
2021-08-09 06:55:33
where is
2021-08-09 06:56:00
i'm using directory opus light 12
Maiki3
2021-08-09 06:58:06
if you don't have access to that, then 🀷
fab
2021-08-09 07:00:58
Maiki3
2021-08-09 07:01:24
try clicking personalizza
fab
2021-08-09 07:02:16
the window is this
2021-08-09 07:02:17
https://discord.com/channels/794206087879852103/794206170445119489/874183951210647583
2021-08-09 07:02:22
no mention of button
2021-08-09 07:02:34
hotkey is mentioned
2021-08-09 07:02:39
but no code mentioning
Maiki3
2021-08-09 07:02:42
hmmmmmmm
fab
2021-08-09 07:02:48
no new button
2021-08-09 07:02:52
button
2021-08-09 07:03:07
ok i will crack the program
Maiki3
2021-08-09 07:03:12
so, if you click "personalizza", and then right click the toolbar again
2021-08-09 07:03:16
lol....
2021-08-09 07:03:19
I bought dopus
fab
2021-08-09 07:03:33
https://eurekaddl.one/software/portable-directory-opus-pro-v12-23-build-7655-portable-ita/
2021-08-09 07:03:38
italian pirate site
Maiki3
2021-08-09 07:03:40
dude lol
fab
2021-08-09 07:04:59
is bad that nobody can't make the same GUI for all platforms
2021-08-09 07:05:07
and with integrated pre processing
2021-08-09 07:05:34
and with a package than contains exe
2021-08-09 07:05:39
like an installer
2021-08-09 07:08:08
45 minutes to download first 100 mb, after i should wait and i can download other 20 mb
diskorduser
Maiki3
2021-08-09 08:31:20
It would be easier to use a slider to choose encoding speed than typing values
veluca
Maiki3 upscaled, cleaned up in photoshop, and saved with JXL with photon noise:
2021-08-09 09:44:34
that upscaling did pretty well, but doesn't do a great job with lines πŸ˜„
Maiki3
diskorduser It would be easier to use a slider to choose encoding speed than typing values
2021-08-09 09:46:52
I agree. I don't know how to add a slider in directory opus dialogs
monad
2021-08-09 09:47:06
Speed wouldn't benefit as much as distance and photon noise.
Maiki3
2021-08-09 09:47:32
if I wanted to learn a programming language so that I could make a simple cross platform jpeg-xl GUI, what would you recommend?
2021-08-09 09:48:28
Java?
2021-08-09 09:49:57
.NET?
2021-08-09 09:52:50
i already know a wee bit of Python for making Blender add-ons...
veluca
2021-08-09 09:53:11
I'd suggest Rust because I like Rust xD but never tried to write GUIs in it
spider-mario
2021-08-09 09:53:19
Python with something like Qt or wx should be a reasonable choice
veluca
2021-08-09 09:53:24
python can do GUIs too
2021-08-09 09:53:25
yeah
2021-08-09 09:53:41
pyqt is reasonably common IIRC
Maiki3
2021-08-09 09:53:53
Nice
2021-08-09 09:54:28
i am definitely super amateur hour when it comes to programming
spider-mario
2021-08-09 09:55:04
I have the impression that PySide is generally the preferred Qt binding rather than PyQt
_wb_
2021-08-09 09:55:09
I am super amateur when it comes to gui coding
veluca
2021-08-09 09:55:10
although - IIRC a problem of python is that distributing "executables" (especially on windows) is a bit of a nightmare
Maiki3
2021-08-09 09:55:18
ah
spider-mario
2021-08-09 09:55:23
something like PyInstaller can help with that
Maiki3
2021-08-09 09:55:38
yeah i already have issues with PIP related things on my PC
spider-mario
2021-08-09 09:55:41
https://www.pyinstaller.org/
_wb_
2021-08-09 09:56:05
http://sneyers.info/jon_old/apopcaleaps/screenshots.html
2021-08-09 09:56:13
That was the last time I made a gui, iirc
veluca
Maiki3 yeah i already have issues with PIP related things on my PC
2021-08-09 09:56:18
relevant xkcd: https://xkcd.com/1987/
Maiki3
2021-08-09 09:56:54
python is nice because you can iterate quickly
2021-08-09 09:57:10
but the pip and pip3 or whatever it is, became a bit of a problem for me
veluca
_wb_ http://sneyers.info/jon_old/apopcaleaps/screenshots.html
2021-08-09 09:57:22
my latest GUI: https://training.olinfo.it/ (yeah I know web is cheating xD)
_wb_ That was the last time I made a gui, iirc
2021-08-09 09:58:54
and I think my first GUI-related thing (14 years ago? xD): https://old.lucaversari.it/GUIlib/
_wb_
2021-08-09 09:59:18
I used https://www.fltk.org/ for apopcaleaps
Maiki3
veluca that upscaling did pretty well, but doesn't do a great job with lines πŸ˜„
2021-08-09 09:59:23
yeah I had to do combination of automated and manual touchup on that to get good results. and the black lines are pretty bad, but also pretty good considering it started from a wretched quality, low resolution jpeg.
2021-08-09 10:03:17
https://www.youtube.com/watch?v=Vde5SH8e1OQ
2021-08-09 10:04:26
that kid is younger than me, and leagues ahead of me in this python stuff lol
2021-08-09 10:25:24
cool, i think you guys pointed me in the right direction.
2021-08-09 10:25:38
I am going to learn how to write a very basic python app for jpegxl
raysar
Maiki3 I am going to learn how to write a very basic python app for jpegxl
2021-08-09 10:42:28
i'm also searching how to create an drag and drop easy encoding image. Nobody will convert picture if we need 30sec to select and configure each grop of picture. in macos there are imageoptim, it's amazing.
Troc
2021-08-09 02:42:38
Question: Can I embed JXL pictures within HTML documents like I can with PNGs?
improver
2021-08-09 02:46:34
base64 uri coding is format agnostic
Troc
2021-08-09 03:04:01
Yes, converted to symbols.
improver base64 uri coding is format agnostic
2021-08-09 03:04:26
Seriously? That's awesome! This will save me a lot of filesize. πŸ™‚
diskorduser
2021-08-09 03:04:43
Base64 is bigger than actual file
Troc
2021-08-09 03:04:44
Can any picture format be converted to base64?
2021-08-09 03:05:09
The part that saves me filesize is the part where I can use JXLs in the HTML instead of PNGs.
2021-08-09 03:05:19
Even GIF?
diskorduser
2021-08-09 03:06:17
Base64 compresses better with brotli
Troc
2021-08-09 03:06:31
What's that?
2021-08-09 03:06:44
More like Based 64
2021-08-09 03:07:57
Basically what I'm doing is making a very, very custom way to read my favourite comics and to organise reference pictures. In HTML, I have all the control on how the layout works.
Scope
2021-08-09 03:11:27
If the viewer does not have a JXL decoder, there will be no miracle, the image will not be decoded (but putting different formats in HTML is possible, it is not a problem)
diskorduser
Troc Seriously? That's awesome! This will save me a lot of filesize. πŸ™‚
2021-08-09 03:15:10
Some testing Source Png - 3.7mb Jxl - 2.7mb Base64 jxl - 3.6mb
Troc
2021-08-09 03:16:08
I'll just open the file in a browser.
Scope
2021-08-09 03:18:38
Then it will work with JXL images as well as with PNG and GIF (if JXL decoder is enabled in the browser)
2021-08-09 03:20:24
Even if it were not possible to edit HTML, JXL encoded images could be renamed to PNG or GIF and that would work too (although this is not the best way)
fab
2021-08-09 04:42:12
what is the progress of the GUI for jxl
2021-08-09 04:42:19
has someone made it
_wb_
2021-08-09 05:21:22
There will be no such thing as _the_ gui.
spider-mario
2021-08-09 05:41:32
JPEGUI XL
fab
_wb_ There will be no such thing as _the_ gui.
2021-08-09 06:40:22
So is simply called library
2021-08-09 06:42:19
I destroyed my computer
2021-08-09 06:42:35
The directory opus .cleaner
2021-08-09 06:42:47
Cleaned all the registry
2021-08-09 06:43:29
And I opened terminator 250 mpx 25 mb jxl images two ones
2021-08-09 06:44:14
Not Now But it happened three hours ago
2021-08-09 06:44:37
A jxl according to jyrki at distance 1
2021-08-09 06:45:40
Can contain 42 mpx (7000Γ—6000) in a 8 MB file at normal 0.5 bpp
2021-08-09 06:46:05
At least three times reduction to jpg
2021-08-09 06:46:34
Anyway u had 15 Gb of data in usb already deleted
2021-08-09 06:46:42
From 17 May
GilDev
2021-08-09 06:47:33
Hi, does someone have some simple technical explanation about why using quality 10 on my image uses VarDCT mode and gives me a 209 kB file while quality 5 uses Modular mode and gives me a 227 kB? πŸ™‚
fab
2021-08-09 06:50:19
Quality 10 with current encoder is too low
2021-08-09 06:50:48
Is Not like the 24th february encoder
_wb_
GilDev Hi, does someone have some simple technical explanation about why using quality 10 on my image uses VarDCT mode and gives me a 209 kB file while quality 5 uses Modular mode and gives me a 227 kB? πŸ™‚
2021-08-09 07:13:33
cjxl falls back to modular mode if you try qualities below 7 or so. In terms of both file size and quality it's not necessarily a smooth transition, there can easily be a discontinuity. In my opinion anything below q30 or so has little practical value anyway...
Troc
fab Cleaned all the registry
2021-08-09 07:53:34
What? Can that even happen?
Jyrki Alakuijala
GilDev Hi, does someone have some simple technical explanation about why using quality 10 on my image uses VarDCT mode and gives me a 209 kB file while quality 5 uses Modular mode and gives me a 227 kB? πŸ™‚
2021-08-10 12:18:05
I think we added modular mode quality trick possibly around May to avoid the hyper-ringing features of VarDCT. In June I flipped the ac strategy decision tree and added many other anti-ringing and low bpp improvement measures. We probably need to revisit the heuristic of choosing between modular and VarDCT.
Maiki3
2021-08-10 05:16:59
2021-08-10 05:17:17
Great success. I have a window, a titlebar icon, and a title.
w
2021-08-10 05:51:12
does modular lossless support progressive?
_wb_
2021-08-10 06:05:57
Yes, optionally, but it does tend to hurt density
diskorduser
Maiki3
2021-08-10 11:12:41
Pyqt?
eddie.zato
2021-08-10 11:22:40
The `cjxl` has a bunch of parameters. As I understand it, different `efforts` enable/disable some of these parameters. So, anyone who creates a GUI needs to know what and how these parameters change for each `effort`. Because when you select an `effort` in the GUI, the program must display the correct state of the controls for those parameters. Do we have this information for each `effort`?
veluca
2021-08-10 11:34:15
not anywhere but in the code IIRC (unfortunately...)
eddie.zato
2021-08-10 11:37:57
I only found this:
2021-08-10 11:38:01
`lightning` and `thunder` are fast modes useful for lossless mode (modular). `falcon` disables all of the following tools. `cheetah` enables coefficient reordering, context clustering, and heuristics for selecting DCT sizes and quantization steps. `hare` enables Gaborish filtering, chroma from luma, and an initial estimate of quantization steps. `wombat` enables error diffusion quantization and full DCT size selection heuristics. `squirrel` (default) enables dots, patches, and spline detection, and full context clustering. `kitten` optimizes the adaptive quantization for a psychovisual metric. `tortoise` enables a more thorough adaptive quantization search.
2021-08-10 11:38:17
From here https://github.com/libjxl/libjxl/blob/main/doc/benchmarking.md
monad
2021-08-10 11:40:46
You don't really need to expose everything cjxl provides for a usable GUI app (and you probably shouldn't).
eddie.zato
2021-08-10 11:48:16
I understand. But if `-e 8` enables `patches`, then the program must change the state of the checkbox for `patches` when you select `effort` 8. And so on.
monad
2021-08-10 11:50:55
Only if users should care about manually selecting for patches. Right now patches do not work well on many images so it's often best to disable them, but ideally the encoder would make a good decision here in the future.
eddie.zato
2021-08-10 12:06:17
I have an image that when encoded with `-e 8` gives 3 times the file size of `-e 8 --patches=0`. This makes the control for `patches` very useful πŸ˜„
2021-08-10 12:10:19
That's for sure. <:CatSmile:805382488293244929>
diskorduser
eddie.zato The `cjxl` has a bunch of parameters. As I understand it, different `efforts` enable/disable some of these parameters. So, anyone who creates a GUI needs to know what and how these parameters change for each `effort`. Because when you select an `effort` in the GUI, the program must display the correct state of the controls for those parameters. Do we have this information for each `effort`?
2021-08-10 12:17:25
Gui people don't care about that stuffs.
eddie.zato
2021-08-10 12:22:28
This "stuff" is for GUI devs, not users. πŸ˜„
veluca
eddie.zato I have an image that when encoded with `-e 8` gives 3 times the file size of `-e 8 --patches=0`. This makes the control for `patches` very useful πŸ˜„
2021-08-10 12:36:43
we need to fix that, sooner or later πŸ˜›
2021-08-10 12:37:00
what does "web standard" mean here?
2021-08-10 12:49:38
ahhhh... no idea
_wb_
2021-08-10 02:29:30
Once jxl is in (enough) browsers, I think it's a matter of months before major websites will start using it β€” e.g. Facebook (I am assuming) and a good chunk of the 1m web devs who use Cloudinary could very well adopt early. We already have everything in place, once there is significant browser support (i.e. chrome or iOS) it can be as fast as one team meeting and a proverbial button press to start automatic deployment to all our users trusting us to automatically select codecs (which is most of them, at least amongst the big ones).
Deleted User
2021-08-10 02:48:51
<@!808762066156126248> Maybe post that in <#803663417881395200>?
_wb_
2021-08-10 03:05:39
So in the most optimistic scenario, I think jxl could be a "web standard" in 2022. In the most pessimistic scenario, browsers decide never to add jxl support (i.e. the experimental flag never gets enabled by default and eventually gets dropped), and jxl never becomes a "web standard".
Scope
2021-08-10 03:07:20
<https://encode.su/threads/3397-JPEG-XL-vs-AVIF?p=70551&viewfull=1#post70551>πŸ€”
veluca
2021-08-10 03:07:53
VVC? rly? xD
lithium
2021-08-10 03:17:57
> For now vvenc does not support either lossless compression nor other chroma subsampling than 420. The support is not planned in the near future. > https://github.com/fraunhoferhhi/vvenc/issues/59 > πŸ€”
improver
2021-08-10 04:00:07
VVCIF :^)
_wb_
2021-08-10 04:03:29
If HEVC in HEIF gives HEIC, then I guess VVC in HEIF gives VEIC?
Scope
2021-08-10 04:20:12
HEIFVVC https://youtu.be/kKsp2qUx_1o
Cool Doggo
_wb_ If HEVC in HEIF gives HEIC, then I guess VVC in HEIF gives VEIC?
2021-08-10 04:41:14
it also gives you 1 hour encoding times for an image <:smileW:698858885909315664>
GilDev
Jyrki Alakuijala I think we added modular mode quality trick possibly around May to avoid the hyper-ringing features of VarDCT. In June I flipped the ac strategy decision tree and added many other anti-ringing and low bpp improvement measures. We probably need to revisit the heuristic of choosing between modular and VarDCT.
2021-08-10 08:49:21
Thanks for the precisions! Indeed the quality 5 (or maybe even 1) looked better than the quality 10 because the VarDCT mode has some grid appearing on the image
diskorduser
2021-08-11 04:48:12
why is it like this?
veluca
2021-08-11 05:02:32
because something has problems with ICC profile handling
diskorduser
2021-08-11 05:07:39
but modular doesn't have problem. Is it expected?
veluca
2021-08-11 05:11:01
yep, they do different things with ICC
_wb_
2021-08-11 05:35:10
Lossy modular likely has the same problem as vardct - if a viewer does not do proper color management, that is
fab
2021-08-11 07:54:29
If browsers support jxl, I am pretty sure it will get used, yes. It's a generation ahead of avif in the q70+ range, and an order of magnitude cheaper to encode. That's basically a no-brainer from a web dev pov.
2021-08-11 07:54:37
Wb
2021-08-11 07:54:44
R av1
2021-08-11 07:55:04
Fabian Animations are slow and Intra do Not go lower than 5mb Inter do Not exist
2021-08-11 07:55:46
2021-08-11 07:58:31
Jxl is fail
2021-08-11 08:02:58
Jxl is interesting
testerrrrr
2021-08-11 09:19:19
hi what would be the best resource to fully understand how the MANIANS encoding works? having a hard time wrapping my head around it
Scope
2021-08-11 09:24:27
Probably some from the FLIF specs (but not sure if there is a detailed description or from leaked JXL specs) https://flif.info/spec.html#_maniac_entropy_coding
veluca
2021-08-12 12:19:42
we need to make something sooner or later πŸ˜„
_wb_
2021-08-12 08:04:57
https://www.reddit.com/r/AMA/comments/orcn11/comment/h8mo5a3/
2021-08-12 08:07:28
https://animals.howstuffworks.com/mammals/jackals.htm
190n
2021-08-12 08:27:13
interesting πŸ‘€
Maiki3
2021-08-12 12:31:25
2021-08-12 12:31:43
I updated my Directory Opus Dialog to include lossless compression mode
_wb_
2021-08-12 12:34:58
Why fix photon noise to 250 instead of making it a field?
Maiki3
2021-08-12 12:35:25
i was actually just thinking about that
2021-08-12 12:35:44
no reason. laziness lol. I need to make that an edit box
2021-08-12 12:36:32
can photon-noise be any value or does it have a min/max?
_wb_
2021-08-12 12:36:34
Iterations is 0..1 (float) and extra properties 0..3 (int) are the only values that make sense for rgba
Maiki3
2021-08-12 12:45:11
```tmp_(JPEGXL_d1_s7_photon_noise-ISO999999).jxl```
2021-08-12 12:45:13
lol....
2021-08-12 12:45:35
2021-08-12 12:45:37
Nailed it.
_wb_ Iterations is 0..1 (float) and extra properties 0..3 (int) are the only values that make sense for rgba
2021-08-12 12:51:07
updated gui with your feedback. πŸ™‚
fab
2021-08-12 12:53:42
I destroyed my computer with directory opus registry cleaner and the crack wasnt included
2021-08-12 12:53:58
Dont install
2021-08-12 12:54:36
Yes it asked for license after Clean ing of registry
Maiki3
2021-08-12 12:54:39
fab I destroyed my computer with directory opus registry cleaner and the crack wasnt included
2021-08-12 12:55:01
how so? you have to reinstall windows?
improver
2021-08-12 12:55:09
>lossless settings >use modular what else it'd use if not modular for lossless?
fab
2021-08-12 12:55:32
Actually im paying
2021-08-12 12:55:52
But to reinstall Windows 7
2021-08-12 12:56:15
Maybe it was 99 percent ram
2021-08-12 12:56:43
Also i bought an usb drive and copy 6 folder
diskorduser
2021-08-12 12:57:31
Why use windows 7? Use Gentoo.
fab
2021-08-12 12:57:41
Now i dont know if the technician will install s...Fox if there isnt even direct x installed
diskorduser Why use windows 7? Use Gentoo.
2021-08-12 12:58:00
Even Ubuntu 12 need direct x11
2021-08-12 12:58:13
Is a no brainer
diskorduser
2021-08-12 12:58:29
Oh you play games!!!
fab
2021-08-12 12:58:36
No
2021-08-12 12:58:48
The opposite
diskorduser
2021-08-12 12:58:53
Then why do you need dx?
improver
2021-08-12 12:59:29
> direct x11 lmao
fab
2021-08-12 12:59:34
To install new drivers and OS
improver
2021-08-12 12:59:53
ubuntu's X11 isn't "direct x"
fab
2021-08-12 01:00:02
But I have a baxkup of the drivers
Maiki3
2021-08-12 01:00:04
fabian i'm sure you can pirate directX 11 somewhere and install that.
2021-08-12 01:00:20
just make sure you don't scan it for viruses or malware, and install it immediately with no regrets.
diskorduser
2021-08-12 01:00:37
You don't need to install drivers on Linux. Everything works out of box( atleast on old pc)
fab
improver ubuntu's X11 isn't "direct x"
2021-08-12 01:00:47
I dont know latest direct x Ubuntu or gt 330m support and i dgaf
2021-08-12 01:01:06
Windows 7 is fine for another 6 months
2021-08-12 01:01:44
Paying 10 euros more isnt the problem
diskorduser
2021-08-12 01:03:17
Oh I thought you would enjoy command-line if you install Gentoo. You can amuse yourself with many compiling parameters. 😝
improver
2021-08-12 01:04:00
I bet his CFLAGS would span 3 lines
Maiki3
2021-08-12 01:05:14
<@!416586441058025472> 10 years ago, I wanted Trillian but I didn't want to pay for it, so I pirated it. instructions said to install the included internetexplorerfix.exe. I thought, "well, I don't use internet explorer, I use Firefox" and without thinking, I installed it and I had like a hundred popups. That has got to be the worst brain fart I've ever had.
2021-08-12 01:06:02
luckily I kept image backups of my C drive, so restoring windows was an easy 2 minutes. but god, that was really bad lol
fab
2021-08-12 01:06:40
Ok But is True people now want the latest new
2021-08-12 01:06:46
In covid times
2021-08-12 01:07:08
If people havent the latest new they dont feel excluded
2021-08-12 01:07:20
They feel like stupid
2021-08-12 01:07:53
And Google makes the money
Maiki3
2021-08-12 01:08:18
if Steam keeps doing what they're doing, 10 years from now, 50% of people might be using Linux.
fab
2021-08-12 01:08:37
I will buy a new Phone But it will be a common oppo even at full price
2021-08-12 01:08:50
I dont care about warranty
2021-08-12 01:08:59
With 8gb ram
diskorduser
2021-08-12 01:09:09
Let's continue in offtopic
fab
2021-08-12 01:09:13
I dont want to have whats latest
2021-08-12 01:09:31
Even a94 oppo i think is fine
2021-08-12 01:10:25
Anyway when You have the green pass and you click to the fingerprint scanner there is save document what is the purpose
2021-08-12 01:10:50
Do americans also have options in their green pass app?
2021-08-12 01:12:12
At 100 probability the app wont be enabled for me so i cant cut hair
veluca
improver actually i don't have ubuntu in any of my boxes but i do have debian in some. i wonder if using ubuntu builds would work on them
2021-08-12 04:34:17
https://github.com/libjxl/libjxl/pull/435 after that commit, debian builds should be available...
2021-08-12 04:34:23
(including repo)
improver
veluca https://github.com/libjxl/libjxl/pull/435 after that commit, debian builds should be available...
2021-08-12 05:56:08
it got merged, but I don't see anything new in <https://artifacts.lucaversari.it/libjxl/libjxl/latest/deb/> yet..?
veluca
2021-08-12 05:57:45
assume it takes ~1-2 hours
improver it got merged, but I don't see anything new in <https://artifacts.lucaversari.it/libjxl/libjxl/latest/deb/> yet..?
2021-08-12 07:52:15
is it working? πŸ™‚
2021-08-12 07:52:56
(now that we have good version numbers, I'll probably stop adding other stuff to the versions :P)
Michael
2021-08-12 07:55:52
Hi everyone. I try to build jxl with emscripten. I using manual from gitlab. But ci.sh script could not find libjpeg, libpng etc. for emscripten. Do I need to somehow additionally configure the build environment?
improver
2021-08-12 09:09:03
0.5.0~alpha20210812195034-0+git3f663b6~20210812T195036Z~cae67af61b74496af267ebcb1262b5d151017fac
2021-08-12 09:09:09
now that's a long version number
2021-08-12 09:10:12
but yes, it installed properly and appears to work
2021-08-12 09:10:39
honestly though that's kinda too long version number lol
veluca
2021-08-12 09:11:26
I dunno why it gets two different hashes xD
2021-08-12 09:12:27
anyway, now that the thingy works, I can just stop adding the extra stuff
Scope
2021-08-12 09:12:53
Fabian will be pleased for %i in (C:\Users\User\Documents\d4gfg5t*.jpg) do cjxl_0.5.0~alpha20210812195034-0+git3f663b6~20210812T195036Z~cae67af61b74496af267ebcb1262b5d151017fac -j -s 6 -q 63.52 --epf=2 -p --gaborish=1 --patches=0 --dots=1 --use_new_heuristics %i %i.jxl
improver
2021-08-12 09:13:05
builds for aarch64 when :^)
veluca
2021-08-12 09:14:04
one thing at a time now ok? xD
2021-08-12 09:14:11
anyway shouldn't be too hard...
Scope
2021-08-12 09:16:07
Also, now it's quite convenient to see the version-hash in the encoder/decoder: `JPEG XL encoder v0.5.0 21f9a4d`
improver
2021-08-12 09:16:59
i suspect coverage of all debian supported architectures aren't going to happen until it actually gets into debian's repos, but for stuff like rpis (I have one running debian bullseye), it could probably be beneficial, dunno
2021-08-12 09:17:27
though i also suspect that most of testing is going to happen on amd64 because of performance reasons so it's not really high priority
2021-08-12 09:17:40
but may be helpful to shake out some architecture specific issues maybe
2021-08-12 09:17:46
if there are any
veluca
2021-08-12 09:17:50
we do test on aarch64 often πŸ˜›
improver
2021-08-12 09:18:02
oh, chrome
veluca
2021-08-12 09:18:02
we even have a builder, we just don't make releases
2021-08-12 09:18:35
anyway, in theory from the next commit version numbers should go back to somewhat reasonable
2021-08-12 09:18:45
i.e. cjxl_0.5.0~alpha20210812195034-0+git3f663b6
2021-08-12 09:21:07
(I modified my script :D)
_wb_
2021-08-12 09:22:24
Do we need seconds? Or even time? The -0 before the +git is a counter, right?
2021-08-12 09:23:20
Just the date + counter might be more human-readable and still sorts chronologically
veluca
2021-08-12 09:23:51
I don't think it's a counter
2021-08-12 09:24:05
also, who cares, nobody reads that
2021-08-12 09:24:15
as long as it doesn't take up half your terminal πŸ˜›
_wb_
2021-08-12 09:24:51
I would read it when comparing versions from different dates
veluca
2021-08-12 09:26:19
the debian package version?
2021-08-12 09:27:16
(note that this is not the same as the version shown by programs)
_wb_
2021-08-12 09:27:40
Yeah nevermind, doesn't really matter indeed
2021-08-12 09:28:18
The 0.5.0~alpha is a bit confusing though, this is a version that is more recent than the 0.5.0 release right?
veluca
2021-08-12 09:28:37
yep, the idea is that we bump up the version as soon as we cut a release branch
2021-08-12 09:28:46
didn't do it yet, Alex will make a commit soon
_wb_
2021-08-12 09:30:15
I would expect things with ~alpha or ~rc to be _older_ than the release. So that's what will happen, then?
veluca
2021-08-12 09:30:47
yep
Scope
2021-08-12 09:30:56
Also, about testing, as I mentioned before it would be useful to add the most popular static analyzers, like spng does (Clang Static Analyzer, Coverity Scan, PVS-Studio, if they are not already added, as I know they are free for open source), there may be many false positives, but sometimes they can highlight something important
veluca
2021-08-12 09:32:42
what do they have that clang-tidy doesn't? πŸ˜›
Scope
2021-08-12 09:33:32
Each does something different and in his own way (one thing is not always enough)
Maiki3
2021-08-13 10:16:49
2021-08-13 10:17:07
gui is totally non functional right now. I'm learning how to use PyQt6 designer
2021-08-13 02:14:37
Well, that sucks. lol. I didn't know
2021-08-13 02:14:46
2021-08-13 02:14:56
Progress on my still, non functional GUI.
diskorduser
Maiki3
2021-08-13 03:12:48
I too made something like this yesterday on qt designer. But I stopped after some time.
lithium
2021-08-13 04:44:25
I remember Jyrki Alakuijala mention some idea for vardct quality improvement, look like better handling of large transforms is already implemented on current vardct, A little curious, more aggressive smoothing and flatter quantization matrices feature also plan implement on vardct? or those two feature is on pipeline right now? > https://discord.com/channels/794206087879852103/794206170445119489/861998028205719612 > Jyrki Alakuijala β€” 2021/07/06 > I have at least three more ideas on how to reduce > (better handling of large transforms, more aggressive smoothing, flatter quantization matrices), > one of them will likely land this week
Fraetor
2021-08-14 12:28:48
Have they sorted out the thing with QT6+ open source status yet?
diskorduser
2021-08-14 12:15:38
Is it possible to use jpeg lossless transcode mode on image editors? I want to crop a jpg image in gimp and save it as jxl.
veluca
2021-08-14 12:18:39
uhhhhh... that could be complicated
2021-08-14 12:18:57
it can be done in theory without pixel loss
2021-08-14 12:19:32
(even if you crop at non-multiple-of-8 pixels, thanks to JXL's frame cropping)
2021-08-14 12:19:45
but I know of no code that can do it
2021-08-14 12:20:08
probably not *too* hard to write, but I wouldn't even know how to start with doing that in an image editor, if at all possible
spider-mario
2021-08-14 12:53:38
yeah, technically it’s mostly possible even with the current JPEG, but in practice I have to determine the coordinates in an editor and then copy them to a jpegtran command
2021-08-14 12:54:53
I place the rectangle appropriately in gimp or krita (making sure that `x` and `y`, but not necessarily `w` and `h`, are multiples of 8), then I copy its coordinates to `jpegtran -optimize -crop WxH+X+Y < in.jpg > out.jpg`
_wb_
2021-08-14 01:23:42
Image editors (or image libraries like ImageMagick or libvips) have pixel buffers as native objects, not dct coefficient buffers
2021-08-14 01:26:01
So that's a bit of an issue. Though if there's a way to access the original jpeg bitstream, and to represent any pixel edits (the whole undo history since loading the jpeg) as an overlay, in principle you could represent it in jxl in a lossless way.
diskorduser
2021-08-14 01:47:25
So, it is possible to do that on cjxl with some code or using standalone image conversion programs...
2021-08-14 01:48:18
Or by making cjxltran :p
fab
2021-08-14 06:49:09
just download this
2021-08-14 06:49:10
https://artifacts.lucaversari.it/libjxl/libjxl/2021-08-13T13%3A40%3A31Z_b395dc17f52c791c62d34593f378b5c42c4049bd/
2021-08-14 06:49:16
and do -d 1.079 -s 8 --use_new_heuristics -I 1 --faster_decoding=8
Jyrki Alakuijala
lithium I remember Jyrki Alakuijala mention some idea for vardct quality improvement, look like better handling of large transforms is already implemented on current vardct, A little curious, more aggressive smoothing and flatter quantization matrices feature also plan implement on vardct? or those two feature is on pipeline right now? > https://discord.com/channels/794206087879852103/794206170445119489/861998028205719612 > Jyrki Alakuijala β€” 2021/07/06 > I have at least three more ideas on how to reduce > (better handling of large transforms, more aggressive smoothing, flatter quantization matrices), > one of them will likely land this week
2021-08-15 12:10:46
I haven't been able to make progress there -- I'm stuck with the 'better handling of large transforms' at the moment
2021-08-15 12:11:09
I need to rerun testing with better test data I think
2021-08-15 12:11:41
it currently degrades sligthly on photographs but improves very significantly for graphics (at high distances)
2021-08-15 12:12:00
that improvement doesn't concern your use case, but the next ones would
Maiki3
2021-08-15 12:17:55
I like how the ISO999999 noise looks like, still organic looking
2021-08-15 12:18:21
our current quality effort is mostly centered around improving the 2x2 subsampling
2021-08-15 12:19:11
there I expect a bigger and more fundamental improvement to the low quality (d16+++ category) in a way that is more bearable than just trying to reduce quality with very few bpp
2021-08-15 12:20:43
our upsampling is better than in other software, so we can achieve more with this than is normally happening -- and the coming change will make the downsampling to find a great solution psychovisually
diskorduser
2021-08-15 04:20:49
Please optimize jxl for real life photos. line art improvements may come later or with separate line art encoding parameter.
BlueSwordM
2021-08-15 04:22:13
To be fair, CJXL is already extremely strong with photographic content.
diskorduser
2021-08-15 04:26:21
Yeah but line art improvements shouldn't degrade photographic encoding
BlueSwordM
2021-08-15 04:28:17
Yeah, but they haven't degraded photo content at all. In fact, the JXL team's changes have mainly been helping at very high distance, for all contents.