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

adoption

Adoption of jxl: what software supports jxl already, how to get more adoption?

Demiurge
2023-02-16 01:00:28
arithmetic error in gamma estimation, that sounds pretty bad lol
gb82
2023-02-16 01:03:48
https://twitter.com/giannimastodon/status/1626022158987149313?s=20
Demiurge
2023-02-16 01:04:31
It looks like I didn't post the source for the test images. It's from the LittleCMS website
2023-02-16 01:04:34
https://littlecms.com/blog/2020/09/09/browser-check/
sklwmp
2023-02-16 02:06:32
https://www.color.org/version4html.xalter
2023-02-16 02:06:43
How about this test page from *seemingly* the ICC website?
Demiurge https://littlecms.com/img/blog/stress.jpg
2023-02-16 02:08:56
I'm on the latest Firefox (110.0) on Windows, with `gfx.color_management.enablev4` true by default, and this image doesn't work, but the color.org v4 test works fine. Weird.
2023-02-16 02:11:03
Seems Firefox has incomplete ICCv4 support, then?
ayumi
2023-02-16 02:11:17
The CMS library used by Firefox (`qcms`) asserts if it tries to use `lcms`' image's ICC profile. At least one program that uses `skia`'s built-in CMS also seems to ignore this colour profile.
w
2023-02-16 02:31:26
that lcms test is strange
2023-02-16 02:31:35
claims to use clut, but chrome's clut is also wrong
2023-02-16 02:31:40
see https://displaycal.net/icc-color-management-test/
diskorduser
_wb_ https://twitter.com/jonsneyers/status/1625899885982625792?t=MF9RbNOSQ_nvVGJL-piDwg&s=19
2023-02-16 10:06:41
Is it possible to have a similar file size as avif by losing fidelity/reducing noise before encoding with jxl?
_wb_
2023-02-16 10:34:48
you can also get similar file sizes by just using lower quality settings for cjxl
2023-02-16 10:35:30
https://twitter.com/jonsneyers/status/1626131842335182849?s=20
2023-02-16 10:36:17
jxl looks quite clearly better than avif also at such small filesizes
Tirr
2023-02-16 11:31:35
I guess lower effort settings don't use fancy stuffs, so maybe e3? I'm not sure if libjxl supports jxl to jpeg transcoding though
paperboyo
_wb_ https://twitter.com/jonsneyers/status/1626131842335182849?s=20
2023-02-16 12:57:46
These kind of pixel-peeping comparisons at (slightly too) small filesizes are extremely useful IMHO. General disregard for fidelity at both high and low qualities is a problem. I personally prefer to see some artifacting if the image is closer to the original overall (for example obliteration of film grain is a huge loss to fidelity, atmosphere and truthfulness of an image).
_wb_
2023-02-16 01:11:10
Currently we have no real tooling for that, but maybe jpegli could eventually become the basis for this. Basically the idea is to use only dct8x8 and generally stay within the expressivity of jpeg, but use some "jxl-only enhancements" like gaborish and epf that are cheap to signal and make the jxl image a little better while the jpeg version still looks acceptable.
paperboyo These kind of pixel-peeping comparisons at (slightly too) small filesizes are extremely useful IMHO. General disregard for fidelity at both high and low qualities is a problem. I personally prefer to see some artifacting if the image is closer to the original overall (for example obliteration of film grain is a huge loss to fidelity, atmosphere and truthfulness of an image).
2023-02-16 01:20:20
That image wasn't chosen to make jxl look good, it was chosen because of the image itself (mostly turquoise colors so fits with the 'official logo color' we have on the JPEG website, and it conveys some of the "perceptual" and "attention to detail" connotations we wanted to associate with jxl). We added a jxl variant because it seemed appropriate to do that (from a dogfooding point of view), and then we had the idea to also make it useful as a subtle browser support test (with the text overlay in the bottom right corner) and compression performance demo (the jxl being half the size of the jpeg and looking just as flawless). It was only because Jake mentioned it that I tried converting it to AVIF and comparing JXL and AVIF compression of that particular image. Fortunately it seems to be a clear case where jxl is just better πŸ™‚
Demiurge
2023-02-16 11:05:39
Well it renders just fine in image viewers that actually support ICCv4 instead of lying about it. So basically everything but Firefox.
2023-02-16 11:06:58
Probably the lcms test exercises more v4 features and the color.org test uses mostly v2 features in the v4 profile
2023-02-16 11:07:37
Maybe Firefox has a very skeletal implementation of v4 support that treats a v4 profile like a v2 profile.
2023-02-16 11:07:50
And ignores v4 features that aren't in v2
2023-02-16 11:08:27
I have not inspected the profiles in use on color.org but it seems to be a lot less informative test than LCMS
2023-02-16 11:09:18
It does not say what specifically what features are being tested for example.
2023-02-16 11:10:48
The only thing that enabling v4 support in Firefox seems to do is enable LUT, which is a v2 feature
ayumi
2023-02-17 02:52:17
While Firefox does have some form of ICCv4 support since 2010 (and it seems that it was improved over time), it does not support non-cube multidimensional LUTs used by that `lcms` image. For some reason the author of that blog post assumed that ICCv4 does not work at all, while in reality `qcms` simply does not support that particular artificially generated profile. Without ICCv4 support Firefox would not be able to display `jpegli`-compressed images correctly.
gb82
2023-02-17 03:59:38
how can I use jpegli right now?
DZgas Π–
gb82 how can I use jpegli right now?
2023-02-17 04:34:05
benchmark_xl --input=test.png --codec=jpeg:enc-jpegli:xyb:q93 --save_compressed --output_dir=./
2023-02-17 04:35:12
<#1020724883241574472>
joppuyo
2023-02-17 09:06:00
https://twitter.com/jaffathecake/status/1625902956284456968
2023-02-17 09:06:19
what does "optimise for high-density displays" mean πŸ€”
2023-02-17 09:06:39
this thing people were doing 10 years ago https://www.filamentgroup.com/lab/compressive-images.html 😨
Demez
2023-02-17 09:06:41
probably high dpi displays?
2023-02-17 09:08:40
but idk about the optimize part though
joppuyo
2023-02-17 09:09:45
yeah but I mean like in practice. does it mean one massive image at low quality for all devices. or some thing with srcset and 2x etc. descriptions which is a pain to use in responsive design
Demiurge
2023-02-17 09:10:23
There does not seem to be that many alternatives to LCMS
2023-02-17 09:11:00
There's Argyll I think but it seems dead and doesn't support iccv4
joppuyo
2023-02-17 09:11:40
the x-descriptor is was invented when mobile and desktop websites were a separate thing so I don't really see any reason why you would want to use it today when w-descriptor does the same thing but better
Demiurge
2023-02-17 09:11:41
and qcms is also only used by firefox, and has zero development manpower
2023-02-17 09:11:55
like the rest of firefox
2023-02-17 09:12:20
It's their own in-house NIH color engine
joppuyo
2023-02-17 09:14:04
does the iccv4 work even for basic use cases like srgb or adobe rgb? at least https://www.color.org/version4html.xalter shows correctly in firefox for me
190n
joppuyo yeah but I mean like in practice. does it mean one massive image at low quality for all devices. or some thing with srcset and 2x etc. descriptions which is a pain to use in responsive design
2023-02-17 09:32:54
i think both creating @2x/maybe @3x variants of images, and also using lower quality settings for those variants
2023-02-17 09:32:59
cuz supposedly you don't notice as much
Demiurge
2023-02-17 09:36:37
Firefox seems to have extremely basic, partial/broken iccv4 support
2023-02-17 09:37:44
Enough to pass the color.org test but not enough to pass a more thorough stress test that uses more features of ICCv4
joppuyo
2023-02-17 10:02:12
yeah, I guess it's a start so it works for the 80% use case
2023-02-17 10:02:33
would be nice to get full iccv4 support, hopefully it won't take another 10 year or so...
Demiurge
2023-02-17 10:06:09
Sad part is Firefox used to have perfect support when they used lcms but then they switched to their own, broken and non-functional, in-house NIH system
2023-02-17 10:07:22
Also, Mac OS and Windows both have ICCv4 compliant color management libraries that Firefox could use instead of their own in-house qcms garbo
2023-02-17 10:08:13
On those platforms Firefox ought to be using the built in OS-provided color management API
2023-02-17 10:08:58
The default photo viewers on Mac and Windows have no problem with the ICCv4 stress test image.
2023-02-17 10:26:37
https://littlecms.com/img/blog/stress.jpg
2023-02-17 10:26:49
Most software does
2023-02-17 10:27:13
Try downloading and opening the above stress test image in various software.
2023-02-17 10:28:15
Only firefox, and extremely minimalistic image viewers with no color profile support, fail to render the above image.
2023-02-17 10:28:43
such as qimgv
2023-02-17 01:18:18
Why does it seem like everyone but Google and Mozilla are excited about JXL? πŸ€”
2023-02-17 01:18:44
And they were at first too until abruptly reversing course
2023-02-17 01:19:04
Weird πŸ€”
username
2023-02-17 01:25:51
mozilla didn't abruptly reverse course they didn't really seem to care about jxl that much at all and it seems like the only reason firefox got basic jxl support in the first place was so if chrome decided to flip on jxl support by default then mozilla would have a head start with getting their implementation done
Demiurge
2023-02-17 01:27:49
I guess I could see that. They flat out refused to merge basic bug fix patches after all, that would have brought them at parity with Chrome support.
_wb_
2023-02-17 02:04:20
Some speculation: Chrome and Mozilla are heavily into AOM β€” which is by itself of course good, we all want royalty free codecs for the web. They somehow have the idea that they need to make AVIF succeed in order to make AOM succeed (I don't know why they think that, to me it seems like AV1 can be a big success also without AVIF) β€” so they fast-tracked AVIF support, not "experimental behind a flag" but just immediately ship, no questions asked. Then JXL came. Obviously it is a competitor for AVIF, and likely if all browsers would support JXL, it would significantly reduce the chances of AVIF getting traction. Chrome reluctantly allowed us to have jxl support behind a flag, but we never could get the flag enabled by default so it could never actually be used. I'm assuming they were hoping that AVIF would meanwhile get traction, and then JXL would just slowly disappear as nobody would really be interested in it since AVIF is in their minds "clearly better than JXL" (you saw their comparisons: it encodes faster, decodes faster, compresses better, basically it's better in everything except lossless, but who cares about lossless on the web). Meanwhile, <@239702523559018497> started implementing jxl support in firefox, but then as soon as Mozilla leadership saw that, they also blocked it getting enabled by default or making any further progress. Just like Chrome, they don't want to risk getting seen as 'detractors' within AOM by allowing a 'competitor' of AVIF to succeed. They fired all their codec experts (the Daala folks) back in the 2020 layoffs, so they don't have anyone left who can do a serious investigation of the actual technical merits of JXL (or AVIF for that matter), and they basically just believe what Chrome leadership is saying about it, and Chrome leadership gets their results from the AVIF team (which is part of the Chrome codec team).
2023-02-17 02:06:50
I'm just speculating here, I don't work at Google nor at Mozilla so I am just guessing what to me would be the most plausible explanation. If my speculation is true (or close to true), it's a rather frustratingly silly mess of a situation...
ayumi
Demiurge Sad part is Firefox used to have perfect support when they used lcms but then they switched to their own, broken and non-functional, in-house NIH system
2023-02-17 06:32:09
It definitely did not have perfect ICCv4 support, in fact the `lcms` versions used by Firefox share the only-cube-CLUTs limitation with `qcms` . Makes sense, because `qcms` was a `lcms` rewrite. By the time `lcms` developers removed this limitation, `qcms` was being used for more that a year and `lcms` was gone form `mozilla-central`.
2023-02-17 06:33:11
bonnibel
Demiurge Firefox seems to have extremely basic, partial/broken iccv4 support
2023-02-17 08:27:26
though all colour management support is disabled on firefox android for some reason
Demiurge
ayumi
2023-02-18 04:59:16
interesting!
2023-02-18 05:08:00
https://people.csail.mit.edu/ericchan/hdr/hdr-jxl.php These beautiful images look way too dark in waterfox. Anyone tried it out in Chromium fork?
sklwmp
2023-02-18 05:52:57
works a lot better in thorium
2023-02-18 05:52:59
firefox is using the jxl extension, i cant test waterfox atm
2023-02-18 05:58:13
and imageglass absolutely fails at it
_wb_
2023-02-18 09:42:31
https://twitter.com/alexjc/status/1626875879140753410?t=ls8GT_RFnvMSu6EvwXomZQ&s=19
2023-02-18 09:43:00
CanIUse is saying edge 110 still has jxl support behind a flag, can someone verify that?
Deleted User
2023-02-18 09:50:17
just checked edge, 110, jxl doesn't work, edge://flags no jxl
username
2023-02-18 09:50:32
I also checked and edge does not have JXL support anymore
just checked edge, 110, jxl doesn't work, edge://flags no jxl
2023-02-18 09:51:24
JXL never showed up on the flags page you always had to use a command line parameter to enable support
_wb_
2023-02-18 09:52:56
You have to start it with --enable-features=JXL
username
2023-02-18 09:53:41
not sure but they did to the flags page to make it not show up however I believe it wasn't intentional
2023-02-18 09:54:25
either way microsoft seems to be pretty unaware or just not care about JXL so it's not surprising that with the bump to chromium 110 support is just gone
Deleted User
2023-02-18 09:56:47
in Opera it still works, but it is chromium 109
username
2023-02-18 09:59:58
what version of opera is that? would be useful to know since me and a friend plan on archiving as many chromium forks as we can that are on chromium 108 (short term LTS) or 109
diskorduser
2023-02-18 12:26:12
Is thorium available for Android? πŸ€”
Deleted User
2023-02-18 12:31:33
"Opera 95 was released on February 1, 2023, based on Chromium 109" https://en.wikipedia.org/wiki/History_of_the_Opera_web_browser
VcSaJen
2023-02-18 12:36:35
Does not work in Edge 110 and Edge 112.
zamfofex
2023-02-18 01:10:21
If you are willing to waive Chrome, Firefox supports extensions on Android, I’m pretty sure.
diskorduser
2023-02-18 02:01:13
only very few extensions are supported.
2023-02-18 02:01:32
did they change anything recently?
VcSaJen
diskorduser did they change anything recently?
2023-02-18 02:17:19
No, it's still the same "install Nightly, create account, create collection, do million other things, then you'll have installed android extension (if you're lucky and relevant API is implemented)" process. The only thing changed is that they now allow Beta channel to install them.
yoochan
If you are willing to waive Chrome, Firefox supports extensions on Android, I’m pretty sure.
2023-02-18 06:12:25
but I couldn't install your extensions on the mobile version of firefox... don't know why, it is not even listed on the add-on page
Peter Samuels
2023-02-18 08:56:12
Mozilla limited what addons can be installed on mobile Firefox at some point (and removed about:config)
gb82
2023-02-18 11:15:09
Right now, Bromite hasn't been updated since v108, so it still supports JXL behind a flag
Demez
If you are willing to waive Chrome, Firefox supports extensions on Android, I’m pretty sure.
2023-02-19 12:09:00
i use firefox nightly for the primative jxl support and ublock origin
Peter Samuels Mozilla limited what addons can be installed on mobile Firefox at some point (and removed about:config)
2023-02-19 01:22:07
when did they supposedly do this?
2023-02-19 01:22:29
unless it's only available on nightly or something
Peter Samuels
2023-02-19 01:30:33
Idk I am just parroting what I read here
username
2023-02-19 01:32:48
I remember reading the same thing at some point
Demez
2023-02-19 01:33:13
well i used about:config on android firefox nightly to turn on jxl, so it's probably on that one only
yoochan
Demez well i used about:config on android firefox nightly to turn on jxl, so it's probably on that one only
2023-02-19 08:05:34
I'll try nightly. Indeed, in the standard version, add-ons are scarce (perhaps 5% of the store is available) and the about config url return a blank page
Demiurge
2023-02-19 12:27:18
I just tried edge with --enable-features=JXL and it does not seem to work
2023-02-19 12:27:28
But I never tried it before when it did supposedly work
2023-02-19 12:27:44
because... why would I want to use edge...
2023-02-19 12:27:53
ew... gross.
w
2023-02-19 12:41:26
that kind of message is the reason why bing ai wants to kill all humans
Demiurge
2023-02-19 12:44:24
I wonder what the AI thinks if you ask it about other browsers
2023-02-19 12:45:09
Also, what exactly is so "open" about openAI and the censorship harness they use to oversee and restrict their AI?
_wb_
2023-02-19 02:00:50
I don't think there's anything open about openAI
2023-02-19 02:03:50
"open" is to the tech industry what "bio" is to the agro industry: it's a very nice thing but companies tend to use it mostly as a marketing label and will do everything to erode the term of all real meaning so they can get the positive vibes without actually changing much at all in the way they do business
vito45
2023-02-20 06:14:54
If I remembered correctly at start they were open source or they had open access to docs and other things. But as time progressed and they were successful Microsoft and other companies pumped money into them and they started closing everything "open" and now they are basically another company.
gb82
2023-02-22 05:38:58
What's the best Android browser for use with JXL? Using FF Nightly rn
DZgas Π–
gb82 What's the best Android browser for use with JXL? Using FF Nightly rn
2023-02-22 07:28:13
I do not know where to be so that there is a jxl that needs to be viewed on android. Yes FF
gb82
2023-02-22 09:17:27
https://github.com/Alex313031/Thorium/issues/111
_wb_ Some speculation: Chrome and Mozilla are heavily into AOM β€” which is by itself of course good, we all want royalty free codecs for the web. They somehow have the idea that they need to make AVIF succeed in order to make AOM succeed (I don't know why they think that, to me it seems like AV1 can be a big success also without AVIF) β€” so they fast-tracked AVIF support, not "experimental behind a flag" but just immediately ship, no questions asked. Then JXL came. Obviously it is a competitor for AVIF, and likely if all browsers would support JXL, it would significantly reduce the chances of AVIF getting traction. Chrome reluctantly allowed us to have jxl support behind a flag, but we never could get the flag enabled by default so it could never actually be used. I'm assuming they were hoping that AVIF would meanwhile get traction, and then JXL would just slowly disappear as nobody would really be interested in it since AVIF is in their minds "clearly better than JXL" (you saw their comparisons: it encodes faster, decodes faster, compresses better, basically it's better in everything except lossless, but who cares about lossless on the web). Meanwhile, <@239702523559018497> started implementing jxl support in firefox, but then as soon as Mozilla leadership saw that, they also blocked it getting enabled by default or making any further progress. Just like Chrome, they don't want to risk getting seen as 'detractors' within AOM by allowing a 'competitor' of AVIF to succeed. They fired all their codec experts (the Daala folks) back in the 2020 layoffs, so they don't have anyone left who can do a serious investigation of the actual technical merits of JXL (or AVIF for that matter), and they basically just believe what Chrome leadership is saying about it, and Chrome leadership gets their results from the AVIF team (which is part of the Chrome codec team).
2023-02-24 07:46:12
^right here
Deleted User
2023-02-25 07:17:25
Thorium reversal of JXL removal seems successful: https://github.com/Alex313031/Thorium/issues/104
username
2023-02-25 07:22:02
they do seem to have got a compiled build working! however it seems like they are having certain compiling issues seemly as a result of them attempting to update libjxl from 0.7.0RC to 0.8.1
2023-02-25 07:22:28
which is something I recommended they do however I thought there wouldn't be any compiling issues
gb82
2023-02-26 02:31:50
https://github.com/Alex313031/Thorium/issues/111
2023-02-26 03:31:30
https://github.com/bromite/bromite/issues/2574
2023-02-26 03:31:53
bromite will automatically close any issue unrelated to privacy with a bot :P
Deleted User
2023-02-26 07:53:33
"I haven't read the full thread but I just want to voice my opinion that chrome's experimental JPEG XL support has been the *only* way for me to properly view HDR images edited and exported in Adobe Camera Raw (see https://helpx.adobe.com/in/camera-raw/using/hdr-output.html). As a user (and web developer) I do not understand and agree with the motivation for removing the support and I really think this format has great potential and should be supported in chrome (or something better so I can look at my HDR images but this was the best there was)." - https://bugs.chromium.org/p/chromium/issues/detail?id=1178058#c390
gb82
2023-02-26 07:57:29
Haven’t these questions been answered time and time again though?
sklwmp
2023-02-26 08:11:46
https://github.com/Alex313031/Mercury/issues/6 Mercury, a Firefox fork from the same person that made Thorium. I just opened a feature request to enable JXL support OOTB.
gb82
2023-02-26 09:37:51
Sure. I'll approach this tomorrow
2023-02-26 10:31:49
Has anyone opened any issues for Signal's image format support?
2023-02-26 10:37:53
I’ll do it tomorrow in a more well thought out manner than the Bromite one
2023-02-26 10:38:30
The more I think about it, the less I think Bromite is worth bothering, as the app hasn’t been updated since chromium 108
Demiurge
2023-02-26 10:56:12
How about explaining that "the guy who's responsible for forcing webp down peoples' throats with no debate is the same guy unilaterally removing JXL support without addressing the concerns of facebook, shopify, adobe, etc who all asked for it to be enabled by default. And the only explanation he gives is that AVIF, his latest project, is supposedly so great and amazing that there is no need for any other format to be allowed to compete with his precious baby."
gb82
Demiurge How about explaining that "the guy who's responsible for forcing webp down peoples' throats with no debate is the same guy unilaterally removing JXL support without addressing the concerns of facebook, shopify, adobe, etc who all asked for it to be enabled by default. And the only explanation he gives is that AVIF, his latest project, is supposedly so great and amazing that there is no need for any other format to be allowed to compete with his precious baby."
2023-02-26 10:59:50
I'll respond with this, verbatim :D
Demiurge
2023-02-26 10:59:54
Despite literally everyone else saying otherwise
2023-02-26 11:02:20
His assistant publishing a comparison claiming that jxl is slower than the infamously slow avif, despite literally everyone's actual experience with both formats clearly demonstrating otherwise.
2023-02-26 11:03:39
Their own graphs demonstrating that avif is losing by a substantial margin at the most common bitrates.
2023-02-26 11:05:33
Yet those graphs are only shown if you click through the links. All the graphs on the front page are showing preposterously contrived cases where AVIF wins if you cook the numbers by averaging in meaningless data.
2023-02-26 11:06:40
But lol I can continue forever with this and it's TMI at this point. Really all that needs to be said is this guy is clearly fighting for his own legacy and ego or something
2023-02-26 11:07:38
And completely not responding to anything anyone else has asked or said.
2023-02-26 11:10:00
All he talks about is AVIF and how good or "sufficient" it supposedly is
2023-02-26 11:10:39
Never explaining what JXL would need to change
2023-02-26 11:11:26
just "oh my god my AVIF is so good, oh yes give me AVIF right there honey just like that oh god yes"
2023-02-26 11:15:51
Uh sir we're trying to ask you about JXL, can you please pull your pants up and tell us what we need to change to make it accep- "Oh god my AVIF is so amazing! Put your AVIF right there! Yes! Yes!"
2023-02-26 11:16:52
lol I better stop before I get myself into trouble though.
2023-02-26 11:17:02
:)
gb82
2023-02-26 11:22:10
<:kekw:808717074305122316>
2023-02-26 11:55:23
https://github.com/signalapp/Signal-Desktop/issues/6312
2023-02-26 11:55:27
done. fingers crossed
2023-02-27 01:38:54
Read my issue - it works on Android, but not on the desktop client
2023-02-27 01:39:09
That's why I was able to list it as a bug report
Deleted User
2023-02-27 06:55:00
Just updated Opera to 96 and JXL stopped working :/
sklwmp
2023-02-28 12:13:30
https://github.com/Alex313031/thorium-libjxl
gb82
2023-03-01 04:03:53
https://github.com/Alex313031/Mercury/issues/6#issuecomment-1449215125
2023-03-01 04:04:07
Looking good!
username
2023-03-01 04:12:51
I should probably comment about the unmerged jxl patches for firefox
diskorduser
2023-03-01 01:47:52
No linooox version? πŸ˜”
Demiurge
2023-03-01 05:31:38
I would like to interject for a moment. What you are referring to as linooox is, in fact, loonix.
2023-03-01 05:32:43
Or as I like to refer to it, Guhnoo Slash systemdbus.
_wb_
2023-03-02 10:20:06
https://github.com/Alex313031/Thorium/releases/tag/M110.0.5481.178
2023-03-02 10:21:41
Nice to see a M110 with JXL enabled by default β€” almost feels like entering a parallel universe where the bad decision didn't happen and a good decision was made instead πŸ™‚
novomesk
2023-03-03 10:05:17
<@853026420792360980> Is the new ffmpeg able to play JXL animations? The Telegram Desktop is not playing animated JXL so I am thinking if upgrading ffmpeg would help there. On Windows they use following commit in Telegram now: https://github.com/FFmpeg/FFmpeg/commit/cc33e73618
jonnyawsom3
2023-03-03 12:04:16
JXL on Telegram could certainly do with some polish. Naturally if you upload a file and let it 'compress', then it generates a jpeg with worse quality and bpp. Uploading as a file will let you download and then view the image in-app on desktop, but on mobile it will just show a preview and try to load the device's gallery app instead of telegram's in-app viewer. It recognises animated jxl files, will render the first frame and label it as a 'gif', but upon re-selecting the channel the image fails to load at all and shows a play button over empty space, loading the first frame instead as a static image once it's clicked. I probably didn't need to type any of this, but I thought it'd be handy to have the current state of things written down
yoochan
2023-03-03 12:10:19
... since many technological breakthrough came from porn, does someone ever tried to convince a porn hosting website to push jpegxl ? just asking πŸ˜„
jonnyawsom3
2023-03-03 12:55:13
Unironically, I think the main issue there is that most of it is either videos nowadays or booru's where the original file is always best. A test image set for another day :P
Traneptora
novomesk <@853026420792360980> Is the new ffmpeg able to play JXL animations? The Telegram Desktop is not playing animated JXL so I am thinking if upgrading ffmpeg would help there. On Windows they use following commit in Telegram now: https://github.com/FFmpeg/FFmpeg/commit/cc33e73618
2023-03-03 12:58:18
atm no. the nature of the JXL file format makes this difficult. I am planning on adding support but don't expect a merge any time soon
novomesk <@853026420792360980> Is the new ffmpeg able to play JXL animations? The Telegram Desktop is not playing animated JXL so I am thinking if upgrading ffmpeg would help there. On Windows they use following commit in Telegram now: https://github.com/FFmpeg/FFmpeg/commit/cc33e73618
2023-03-03 08:38:40
just sent a patch to the ML to add support it, but knowing the review process it'll take some time to get merged
Demiurge
Unironically, I think the main issue there is that most of it is either videos nowadays or booru's where the original file is always best. A test image set for another day :P
2023-03-04 02:22:07
The original file? You mean like a JPEG or PNG that can be losslessly compressed?
2023-03-04 02:22:28
And save terabytes of space for those image boards?
2023-03-04 02:24:06
People don't like to think about it but, porn is probably the #1 use for image formats.
2023-03-04 02:24:34
So if JXL proves itself useful in compressing the sexy then it will be unstoppable
2023-03-04 02:28:29
No one will be able to do anything about it, especially since it's basically the only format capable of losslessly compressing all of the existing JPG and PNG waifu comics
2023-03-04 02:30:02
If it becomes popular on imageboards for its ability to losslessly compress everyone's waifu then no one will be able to unseat it, not even the Chrome codec team
Kejchi
Demiurge People don't like to think about it but, porn is probably the #1 use for image formats.
2023-03-04 03:37:47
So true. I've already encoded all my PNG doujinshi into JXL and use Tachiyomi to view it
jonnyawsom3
Demiurge The original file? You mean like a JPEG or PNG that can be losslessly compressed?
2023-03-04 03:50:47
Fair point, I suppose with a format around that's *actually* lossless, suddenly 'original' gets a lot more vague
sklwmp
Demiurge So if JXL proves itself useful in compressing the sexy then it will be unstoppable
2023-03-04 04:12:26
That's... actually a pretty good idea. I don't know how one would approach that, though.
2023-03-04 04:12:37
As in, how do we convince them to use JXL (especially without browser support)?
username
2023-03-04 04:21:14
probably as a server side thing if theres no browser support
2023-03-04 04:21:39
aka the server sends jxl files and the client has some form of wasm or js to handle it
Demiurge
2023-03-04 04:41:12
Well you can just write some patches, a lot of image boards use open source software... Install it on a test server and write some patches to add JXL support and test it out and see if uploading works as expected, viewing, image previewing etc...
2023-03-04 04:42:02
Often there are a whole bunch of different sized versions of the same file for thumbnail etc to save bandwidth, maybe JXL's progressive and LQIP features could come in handy there.
2023-03-04 04:44:02
I know JXL contains a table of contents at the beginning of the file, although I'm not very familiar with how the server and client could possibly signal how much of the file to partially download or send.
2023-03-04 04:44:22
I'm not sure how that sort of signalling works in HTTP
2023-03-04 05:22:53
When it comes to partial downloads, I guess there are a lot of questions about how it should be done, whether it should be the client or the server that determines what to send... probably the server since that's what's currently happening.
2023-03-04 05:24:13
It definitely needs to become more convenient for programmers to work with partial JXL files
2023-03-04 05:24:41
currently there is no api at all for dealing with that
2023-03-04 05:25:09
but it would be a pretty nice thing to get rid of multiple size encodings of the same image
jonnyawsom3
2023-03-04 05:35:04
My thought was have the server stop sending data after x KB are sent for example. After looking at some docs, it seems like http supports requesting and sending partial data already for streaming video, download pausing and such. So it should definitely be possible
novomesk
2023-03-04 06:00:53
In https://invent.kde.org/maui/pix/-/issues/14#note_600026 I explained what I did to enable AVIF and JXL support in the app.
jonnyawsom3
My thought was have the server stop sending data after x KB are sent for example. After looking at some docs, it seems like http supports requesting and sending partial data already for streaming video, download pausing and such. So it should definitely be possible
2023-03-04 06:04:29
Looks like someone finally had the same idea with progressive jpeg in 2019, although it doesn't seem to work nearly as well as JXL could https://github.com/McSodbrenner/embedded-image-preview http://embedded-image-preview.cerdmann.com/prototype/
Demiurge
2023-03-04 08:56:59
for some reason cerdman.com is in the oisd blacklist that I use
2023-03-04 09:32:29
Can the chroma channels use modular while the Y channel uses DCT?
jonnyawsom3
2023-03-04 10:32:46
Having watched the clip in <#822105409312653333>, sending partial progressive files instead of generating dozens of thumbnail sizes suddenly seems like a much bigger selling point than I thought. Save on storage and transfer like we've been saying, but also overall processing and power too. Lossless progressive doesn't always seem the best idea though, it made this test file I just rendered over a quarter larger (I'm probably getting outside the scope of this channel now)
_wb_
2023-03-04 11:37:11
Progressive and lossless doesn't mix very well. Lossless coding tools like (local) palette and lz77 inherently cannot really be combined with progressive.
yoochan
2023-03-04 04:16:28
<@794205442175402004> I'm here for a few weeks and I noticed that you answer here a lot a questions about some general technical stuff but the answers often disappears in the oblivion of discord, could a quick "hobbyist encoder FAQ" be created, one that could be pinned on reddit or hosted somewhere else, and which could be an answer to : what kind of settings should be best for photographies, manga, drawings, pixel art, screenshots, etc. What are in a few words the difference between modular and and varDCT, can I use both, what are they best suited for ? What are the impacts of lossless or lossy on the selected algorithm and the final result ? What the link between distance and quality or effort etc πŸ˜„
2023-03-04 04:17:13
I could start to compile a short list of question seen a lot... But I don't know what would be the best place to host the answers
2023-03-04 04:26:44
some answers are already in the --help though
_wb_
2023-03-04 04:28:22
Sounds like something that could be put on jpegxl.info
yoochan
2023-03-04 04:30:34
sounds nice, I'll open a google doc to draft this and then I would try to list some questions and fetch some answers to start (digging the history of these chats)
Fraetor
sklwmp As in, how do we convince them to use JXL (especially without browser support)?
2023-03-04 10:50:31
I guess the thing there would be to use the WASM jxl decoder implementation. The main drawback is that you have to load ~300KB of JS/wasm, but for an image board would quickly save more than that on the images themselves.
sklwmp
2023-03-05 12:26:36
I just realized that the GPL in (https://github.com/Alex313031/thorium-libjxl) might make it more difficult for other Chromium forks to add in libjxl support based on the license...
username
2023-03-05 12:31:13
it seems like this has already been a concern as on the discussion page for ungoogled chromium the license for thorium was brought up.
Demiurge
_wb_ Progressive and lossless doesn't mix very well. Lossless coding tools like (local) palette and lz77 inherently cannot really be combined with progressive.
2023-03-05 01:00:17
Didn't it mix fairly well with FLIF and MANIAC?
VcSaJen
sklwmp As in, how do we convince them to use JXL (especially without browser support)?
2023-03-05 03:35:26
For doujins I guess cbz/cbr viewer support is needed (both on desktop and mobile comic viewer apps)
yoochan
2023-03-05 07:20:55
For online galleries, the wasm polyfill should be good enough, 300kb loaded for hours of scrolling might be an acceptable tradeoff
2023-03-05 07:23:17
If the polyfill could be hosted on a cdn, it could be downloaded once for all (or almost) with some http cache-control
2023-03-05 07:24:38
Cbz/r make little sense with jpegxl, just a tar archive of the files should be enough πŸ˜…
_wb_
Demiurge Didn't it mix fairly well with FLIF and MANIAC?
2023-03-05 07:30:55
For nonphoto images, not really, non-interlaced flif could also be better than interlaced. But the gap was smaller because 1) flif doesn't do lz77, 2) flif's 'progression' is nearest-neighbor, not actual downscales, which makes the previews worse (aliasing artifacts) but does make it possible to mix palette and progressive, 3) flif's compression when doing interlacing comes from being able to predict from 7 of the 8 neighboring pixels. But it comes at a cost in complexity / memory locality, so flif's decode speed is a bit of an issue.
Fraetor
yoochan Cbz/r make little sense with jpegxl, just a tar archive of the files should be enough πŸ˜…
2023-03-05 08:56:01
That is basically what a CBZ is. It is just a zip file (usually uncompressed) sometimes with a metadata `ComicInfo.xml` file as well. ZIP is important here, as it allows independent file access.
Traneptora
2023-03-05 08:59:25
^ no index in tar makes ZIP more attractive here
Fraetor
2023-03-05 09:08:01
Tachiyomi at least supports JXL within CBZ, which is nice.
yoochan
Fraetor That is basically what a CBZ is. It is just a zip file (usually uncompressed) sometimes with a metadata `ComicInfo.xml` file as well. ZIP is important here, as it allows independent file access.
2023-03-06 07:52:42
My bad, I thought tar files were indexed.... Cbz then 😁
Demiurge
_wb_ For nonphoto images, not really, non-interlaced flif could also be better than interlaced. But the gap was smaller because 1) flif doesn't do lz77, 2) flif's 'progression' is nearest-neighbor, not actual downscales, which makes the previews worse (aliasing artifacts) but does make it possible to mix palette and progressive, 3) flif's compression when doing interlacing comes from being able to predict from 7 of the 8 neighboring pixels. But it comes at a cost in complexity / memory locality, so flif's decode speed is a bit of an issue.
2023-03-06 07:16:41
aliasing artifacts are not so bad, it preserves high frequency texture information (a bit too well) :)
_wb_
2023-03-06 07:20:53
Yeah it can be fine in some cases, but in some cases it can be very bad. For a preview it's ok, but for an actual 1:2 or 1:4 downscaled version of the image, it's too crude...
username
2023-03-07 12:12:01
I don't know if this has been mentioned here before but Shopify supports and uses jxl as a part of it's automatic CDN and it seems to make small to medium sized images jxl files
2023-03-07 12:12:27
and this goes for all sites made using Shopify
2023-03-07 12:12:36
heres a good example of one https://www.tentree.ca/pages/about
2023-03-07 12:13:35
^ almost all of the images on that site are jxl due to their small resolutions
2023-03-07 12:15:01
something that has to be noted though is Shopify will only send jxl files if the browser also supports avif
2023-03-07 12:20:07
so that means browsers like palemoon and basilisk will not see jxl files as they do not support avif
Peter Samuels
2023-03-07 01:04:36
weird
gb82
username so that means browsers like palemoon and basilisk will not see jxl files as they do not support avif
2023-03-07 04:32:36
How about Thorium?
improver
2023-03-07 04:37:04
should work in theory
Demiurge
2023-03-08 06:22:03
Hmmm
_wb_
2023-03-08 06:22:25
Wait you made a pdf with a jxl payload?
2023-03-08 06:22:38
Since when is that a thing?
zamfofex
2023-03-08 06:24:29
I’d imagine it’s just a JPEG of the JPEG XL logo to test XYB support.
_wb_
2023-03-08 06:28:05
Ah, an xyb icc profile test
2023-03-08 06:28:56
PDF with actual jxl payload will also be nice, will take a while before that will work though.
Demiurge
2023-03-08 06:42:36
Well most of the image viewers I've tried have proper iccv4 color profile support
2023-03-08 06:42:57
Like the default viewers on Windows and Mac
spider-mario
2023-03-08 08:41:36
from what I can find, ICCv4 support was only added in PDF 1.7
2023-03-08 08:41:41
so it’s relatively recent
2023-03-08 08:41:55
and maybe Adobe Reader requires the PDF to actually be marked as being 1.7?
2023-03-08 08:42:17
does it work better then?
2023-03-08 08:43:53
nope, no difference
Traneptora
2023-03-08 12:27:56
`file` reports that pdf as version 1.3
runr855
username and this goes for all sites made using Shopify
2023-03-08 01:30:49
In Chrome with JXL enabled (when it worked) I've never gotten a Shopify page to show JXL files. Is this worldwide or limited to some regions?
_wb_
2023-03-08 01:40:44
https://github.com/libjxl/libjxl/issues/1832
2023-03-08 01:50:23
when I go to a random shopify page, I see the behavior described in that issue: for small images they use jxl, for larger ones they use webp
2023-03-08 01:51:13
2023-03-08 01:52:36
it's not illogical: doing it with some pixel size cap means they can start deploying jxl without paying much extra cpu and storage
2023-03-08 01:53:34
as long as only a small fraction of clients support jxl, deploying jxl at full scale is from an economics pov not very wise
sklwmp
2023-03-08 01:54:08
it's cool that they even tried it in the first place, though
novomesk
2023-03-08 02:01:34
PhotoQt 3.1 on Linux (not on Windows yet) is now able to show EXIF metadata in JXL files. Metadata is parsed via Exiv2 library. https://photoqt.org/news/photoqt-3.1
_wb_
2023-03-08 02:05:33
does it also work for brotli-compressed metadata?
novomesk
_wb_ does it also work for brotli-compressed metadata?
2023-03-08 02:18:10
Usually no, because released Exiv2 0.27.6 doesn't support it yet. But in main branch, they already have EXIV2_ENABLE_BROTLI option. So in the future it will work.
_wb_
2023-03-08 02:20:12
cool, just a matter of time then for support to percolate then
username
runr855 In Chrome with JXL enabled (when it worked) I've never gotten a Shopify page to show JXL files. Is this worldwide or limited to some regions?
2023-03-08 02:28:34
only some images on shopify sites are jxl files such as small to medium images while larger images are always webp with some small logo images being png
2023-03-08 02:28:57
the site I sent as an example has almost all jxl images
2023-03-08 02:30:03
since almost all the images on that site fit the criteria to be jxl and or avif images with shopify's automatic system
novomesk
2023-03-08 03:01:00
Dolphin uses kfilemetadata. If you wish, you can add new extractor there which uses libjxl directly, and the JXL metada will be complete in dolphin.
Traneptora
2023-03-08 03:05:20
jxl bare codestreams don't have any EXIF data so this is outside the scope of exiv2 tbh
yoochan
2023-03-08 03:07:48
if I read the issue https://github.com/Exiv2/exiv2/issues/1503 it seemed like they wanted to read image size at least, even for a bare codestream
novomesk
2023-03-08 03:08:50
For other formats Exiv2 prints image dimensions even in situation that EXIF is missing.
2023-03-08 03:10:52
They need someone like <@853026420792360980> who knows how to parse JxlBasicInfo from the codestream.
Traneptora
2023-03-08 03:21:51
for just width and height you only need to read like 8 bytes at most iirc
2023-03-08 03:35:57
I lied, 11 bytes at most
2023-03-08 03:36:27
it's not particularly hard, here's some pseudocode
2023-03-08 03:43:43
``` signature = read 16 bits; if (signature != 0x0AFF) return "not a JXL"; div8 = read 1 bit; if (div8) { height = (1 + (read 5 bits)) * 8; } else { ctrl = read 2 bits; switch (ctrl) { case 0: height = 1 + read 9 bits; break; case 1: height = 1 + read 13 bits; break; case 2: height = 1 + read 18 bits; break; case 3: height = 1 + read 30 bits; break; } } ratio = read 3 bits; if (ratio != 0) { switch (ratio) { case 1: width = height; break; case 2: width = height * 12 / 10; break; case 3: width = height * 4 / 3; break; case 4: width = height * 3 / 2; break; case 5: width = height * 16 / 9; break; case 6: width = height * 5 / 4; break; case 7: width = height * 2; break; } return (width, height); } if (div8) { width = (1 + (read 5 bits)) * 8; } else { ctrl = read 2 bits; switch (ctrl) { case 0: width = 1 + read 9 bits; break; case 1: width = 1 + read 13 bits; break; case 2: width = 1 + read 18 bits; break; case 3: width = 1 + read 30 bits; break; } } return (width, height); ```
jonnyawsom3
_wb_ https://github.com/libjxl/libjxl/issues/1832
2023-03-08 03:44:53
Assuming they want lossy compression, -e 4 currently gives the best filesize in most cases at very good speed. If they want lossless then it's just a case of picking what balances best, or sticking with WebP. If it's jpeg source files, then the re-compression usually takes a second at most for me even at -e 9. Probably worth mentioning that many sites still reference or use old versions of libjxl, so that could be a factor too
Traneptora
2023-03-08 03:45:13
luckily, it appears the size header always fits into 9 bytes
2023-03-08 03:45:25
but not 8
2023-03-08 03:45:37
specifically it's always at most 68 bits
2023-03-08 03:45:47
so there's very little that has to be read
2023-03-08 03:45:56
84 bits if you include the signature
veluca
2023-03-09 08:14:02
it's a pain that's what it is πŸ˜„ usually you do that with a combination of reading bytes and using bit shifts and bit masks to remove the unnecessary bits
yoochan
2023-03-09 08:23:16
<@456226577798135808> if you want to dive into coding (may be you want), I strongly advise you to pick a language (python, C, javascript), find a toy project you start from scratch... like reading the header of jxl file πŸ˜„ but you rarely learn insightful skills when just reading an overly complex existing project πŸ™‚
veluca
2023-03-09 08:32:29
nah, most formats that were not designed by a committee that enjoys adding 4 zero bytes "for future extensions" that have *never been used in 20+ years* (I'm looking at you, ICC) do some form of bit packing πŸ™‚
2023-03-09 08:34:41
the answer to what makes JXL's headers smaller is that we managed to standardize a version of the headers that didn't have huge "designed by committe" components (because *what if you want to reuse your color image as your alpha image? with heif you could!*)
gb82
2023-03-11 07:22:48
https://gitlab.torproject.org/tpo/applications/tor-browser/-/issues/41664
improver
2023-03-11 12:11:48
this is definitely not tor's territory when they ship ways to limit even font selection & js support due to advantages of reduction of attack target surface
2023-03-11 12:12:15
like you'd expect them to remove stuff sooner than add any
jonnyawsom3
2023-03-11 12:15:50
It's amazing how quickly opinions can be changed
improver
It's amazing how quickly opinions can be changed
2023-03-11 12:18:12
yeah. internalizing & trusting someone who provide wise & well-sourced perspective works that way
jonnyawsom3
2023-03-11 12:19:39
I mean, literally in the links Thorin posted it says "We don't know why they disabled support since it never got a chance to live"
2023-03-11 12:20:14
But it does make sense TOR won't add it. Chicken and the egg situation, can't add it until it's widespread, can't be widespread until it's added
improver
2023-03-11 04:16:02
rip. this stuff is truly silly
jonnyawsom3
2023-03-11 04:23:18
Knowing Elon, just tweeting at him and saying "Hey, wanna help a direct jpeg replacement" would probably make him flip the switch overnight
BlueSwordM
It's amazing how quickly opinions can be changed
2023-03-11 05:24:05
It's because they're freaking lazy.
2023-03-11 05:24:25
Most of these people are just looking for ways to not work as much as possible.
gb82
Knowing Elon, just tweeting at him and saying "Hey, wanna help a direct jpeg replacement" would probably make him flip the switch overnight
2023-03-11 10:02:20
That honestly might work
Fraetor
2023-03-12 04:28:18
Sure you can! MIT allows relicencing, so you you are free to use it under GPL. If it is an issue I don't mind putting that code under an even less restrictive licence (CC0 I guess?).
2023-03-12 04:29:25
I need to spend some more time on pyJXL. I'd at least like it able to get header information from a raw codestream.
novomesk
2023-03-14 11:53:33
Yes, that's how it works now.
Deleted User
2023-03-15 03:01:44
https://github.com/Alex313031/Thorium-Special/releases?q=android Thorium 110 for Android with working JPEG XL
Demiurge
It's amazing how quickly opinions can be changed
2023-03-15 11:41:35
Should mention that the support is essentially completed and done after merging the patches that have already been tested in other firefox forks
2023-03-15 11:44:23
It's infuriating that progress is stalling and halted for essentially no reason and when people ask why, completely unaccountable people respond with some non-sequitor "avif, avif!" response and this has nothing to do with avif
2023-03-15 11:47:32
completely unaccountable people in leadership roles who can't answer a question about JXL without bringing up a non sequitor that nobody asked about or frankly cares about as much. It has basically zero usage across the web despite being fast track enabled in every browser
_wb_
2023-03-15 11:49:43
If "too much effort" is really the issue, I think we can find plenty of people who can do the actual work (which is not much, all the integration code is already written). But I suspect that "too much effort" is often just a polite way to say "nah, I don't want it". Maybe not in this case, but in the case of mainline Chrome and Firefox, it's hard to believe they really cannot spare the effort when some of their tiny forks have can.
Demiurge
2023-03-15 11:49:46
there's zero enthusiasm because nobody asked for yet-another-format that brings absolutely nothing game changing to the table
_wb_
2023-03-15 11:51:54
TBH I do think avif brings at least one game changer: it beats GIF by an order of magnitude. Then again, they could also just have allowed video formats in an img tag instead of wrapping it in an avif container...
Demiurge
2023-03-15 11:52:39
exactly...
2023-03-15 11:52:52
what is the point of yet another container format...
2023-03-15 11:53:00
nobody wants that or asked for that
2023-03-15 11:53:29
they could have done that instead of making webp too
jonnyawsom3
2023-03-15 11:55:54
At least JXL *can* beat GIF most times if you just want a blanket conversion, although with pre-existing highly dithered ones you really have to crank up the effort (although thankfully GIFs are usually small too because they're so bad)
Demiurge
2023-03-15 11:55:55
And they didn't need to invent such a ludicrous name, they could have stuck with the .mkv suffix convention
jonnyawsom3
2023-03-15 11:57:42
.mp4 used to be the guaranteed "this will work" file extension, now in the limbo of transition it's kinda a dice roll (ignoring HEVC)
Demiurge
2023-03-15 11:57:58
personally I don't name any files .webm, I use the normal, long standing convention of mkv for video and mka for audio
2023-03-15 11:58:24
mp4 is complete trash
jonnyawsom3
2023-03-15 11:58:36
I record to MKV by default and remux when I need to share files
Demiurge
2023-03-15 11:58:57
moov atom normally at the end of the file so playing the file is impossible unless you have the end of the file
jonnyawsom3
2023-03-15 12:00:50
Having to re-write the entire file just to move the moov
Demiurge
2023-03-15 12:01:11
the only reason mp4 is still used is probably apple, idk why anyone would actually want to use such a dumb format
jonnyawsom3
2023-03-15 12:01:51
It's essentially entwined with H264, accepted everywhere no questions asked
Demiurge
2023-03-15 12:02:12
and I'm sure apple had a lot to do with that
jonnyawsom3
2023-03-15 12:02:39
If you hand someone a .WEBM or .HEVC, some people might not even know they're videos
Demiurge
2023-03-15 12:02:55
mkv doesn't have any weird surprises or idiosyncrasies.
2023-03-15 12:03:03
It just does what it's supposed to
jonnyawsom3
2023-03-15 12:03:29
But it's also rarely supported anywhere outside of recording or editing
Demiurge
2023-03-15 12:03:35
It even works on Windows now
jonnyawsom3
2023-03-15 12:03:52
Huh, that I'll have to test
Demiurge
2023-03-15 12:04:08
yeah, windows has built in support
2023-03-15 12:04:21
I'm surprised how long it took for Apple to support flac
2023-03-15 12:04:29
for the longest time apple refused to add flac support
2023-03-15 12:04:35
then they silently added it recently
2023-03-15 12:05:09
now flac is supported ootb on all apple devices
2023-03-15 12:05:17
but it took this damn long
2023-03-15 12:05:25
for such a simple thing
2023-03-15 12:05:53
even though it was by far the most popular lossless format and it was unbelievably superior to apple's terrible ALAC
jonnyawsom3
2023-03-15 12:06:01
I should also really rethink my videos. I've got 600GB+ of MKVs sat on my one and only 2TB drive, just sitting there doing nothing apart from archival purposes. Had 2 HDDs die in as many years but don't have the money for a big SSD to last a few more years
Demiurge
2023-03-15 12:07:01
if you are looking for a new ssd I recommend getting a hynix
2023-03-15 12:07:20
I swear that's not a sexual word
2023-03-15 12:08:10
they're one of the big 3 manufacturers of memory along with samsung and micron
jonnyawsom3
2023-03-15 12:09:11
Either too small or too expensive
2023-03-15 12:10:31
My use case is literally perfect for HDDs, large, long term, low use storage. But with 2 dying for no reason, with no errors, in a year each, I'm not sure I trust them anymore
Demiurge
2023-03-15 12:21:25
what brand?
2023-03-15 12:21:37
hitachi? fujitsu? wd?
2023-03-15 12:23:05
the hynix drives are pretty decently priced 2TB drives, that's why I mention them.
diskorduser
Demiurge if you are looking for a new ssd I recommend getting a hynix
2023-03-15 01:04:54
SK hynix?
jonnyawsom3
2023-03-15 01:05:45
Seagate, which I know had a bad reputation, but 0 errors and dead in a year? Come on....
2023-03-15 01:06:11
Looking at prices it seems most M.2 drives are around the same price at 2TB now, about Β£120
2023-03-15 01:06:32
A bit different to the Β£350 I paid for the SATA SSD I'm running now
Fraetor
2023-03-15 01:09:39
I think you are still better off with hard drives. You can get a 2 TB hard drive for Β£50, so if you just want to reliably archive data you would be better off just buying two, one as a primary and one as a backup.
diskorduser
2023-03-15 01:26:37
I have one Seagate from 2009. Still running fine.
jonnyawsom3
Fraetor I think you are still better off with hard drives. You can get a 2 TB hard drive for Β£50, so if you just want to reliably archive data you would be better off just buying two, one as a primary and one as a backup.
2023-03-15 01:47:52
That's what I had, then they both died after a year
2023-03-15 01:49:26
Ideally I'd just be cloning my main drive occasionally and have a secondary drive for replaceable data
2023-03-15 01:50:39
How would I know?
2023-03-15 01:52:35
One was SMR the other was PMR by the looks of it
Traneptora
Demiurge the only reason mp4 is still used is probably apple, idk why anyone would actually want to use such a dumb format
2023-03-15 08:51:15
index at the end of the file is a great idea
Demiurge mkv doesn't have any weird surprises or idiosyncrasies.
2023-03-15 08:52:07
matroska is *full* of weirdness
2023-03-15 08:52:33
it's an absurdly complex specification that contains a truckload of weirdness
_wb_
Traneptora index at the end of the file is a great idea
2023-03-15 08:59:10
For encoding, yes. Not for streaming decode though...
Traneptora
2023-03-15 08:59:46
Yea, but you can move it to the front if you really need to do that
Demiurge
Fraetor I think you are still better off with hard drives. You can get a 2 TB hard drive for Β£50, so if you just want to reliably archive data you would be better off just buying two, one as a primary and one as a backup.
2023-03-15 11:33:31
Not a good idea. There's no point in having two, since, in cold storage, you would not be able to tell if one of them fails unless you are testing both of them regularly.
Traneptora it's an absurdly complex specification that contains a truckload of weirdness
2023-03-15 11:34:33
in practice it seems to "just work" with no surprises.
Traneptora
Demiurge in practice it seems to "just work" with no surprises.
2023-03-16 12:19:00
having had to debug matroska weirdness in mpv I assure you that it's not true that generic matroska files "just work"
2023-03-16 12:19:12
in any way that ISOBMFF doesn't
Demiurge
2023-03-16 12:23:41
From the end-user's perspective it is different.
WAZAAAAA
2023-03-16 12:42:35
hey what's better for streaming, moov atom at the top or fragmented?
Traneptora
Demiurge From the end-user's perspective it is different.
2023-03-16 01:14:07
from and end-user's perspective practically all containers are the same
WAZAAAAA hey what's better for streaming, moov atom at the top or fragmented?
2023-03-16 01:14:55
depends on if you expect the user to have the start of the file. fragmented has slightly more overhead but you can start in the middle of a file
Demiurge
Traneptora from and end-user's perspective practically all containers are the same
2023-03-16 04:30:08
from an end user's perspective mov/mp4 is trash
Traneptora
Demiurge from an end user's perspective mov/mp4 is trash
2023-03-16 04:32:49
how?
2023-03-16 04:33:14
have you ever seen software or websites not work with mp4 files with H.264/AAC embedded inside
diskorduser
Demiurge from an end user's perspective mov/mp4 is trash
2023-03-16 04:38:32
How?
Demiurge
diskorduser How?
2023-03-16 05:52:04
Not being able to play a partial file.
Traneptora how?
2023-03-16 05:53:18
not being compatible with certain codecs
2023-03-16 05:54:02
by comparison mkv just works as a universal "I-don't-give-a-shit" format that does not give a shit about partial files or arbitrary codecs
2023-03-16 06:01:54
MP4 is "hurr durr I don't like that codec combination and I can't play the file until the whole thing is downloaded"
WAZAAAAA
2023-03-16 08:32:32
I mean there's many containers, MKV sure is the best one but I'd rank MP4 on at least 2nd place due to its vast compatibility, and you can get around the index problem thing by moving the moov atom to the top or fragmenting it (Avidemux example)
DZgas Π–
2023-03-16 08:40:39
mp4 is an international ISO standard. And recently it supports both opus and av1 and even vp9
2023-03-16 08:43:06
Mp4 is much simpler. While mkv contains the whole EBML markup language, literally html inside
Demiurge
2023-03-16 09:37:15
It uses a binary version of XML.
2023-03-16 09:39:28
the great compatibility of mp4 is only contingent on what your target playback environment supports, which is usually very strict and picky. It's not like just because a device "supports MP4" it necessarily supports your use case.
2023-03-16 09:40:32
Most playback environments only support an extremely specific usecase of mp4
2023-03-16 09:41:06
so compatibility is not really anything special in mp4's favor
2023-03-16 09:43:28
from an end-user point of view, I can tell ffmpeg to put any combination of a/v/subtitle codecs I want into a matroska file and never had a problem with incomplete/partial files
2023-03-16 09:44:56
remuxing and demuxing matroska with ffmpeg has always been extremely straightforward, reliable, and predictable.
2023-03-16 09:45:13
the format itself has very low overhead as well.
2023-03-16 09:46:36
the files work just fine in browsers, and in the built in tools on Windows.
2023-03-16 09:46:56
They can be played back even if part of the file is missing.
2023-03-16 09:47:46
I have not read the format specification but from this perspective as an end user it could not be more straightforward to use.
2023-03-16 09:49:00
mp4 on the other hand is fragile garbage that feels like something a committee must have voted on.
w
2023-03-16 09:49:38
you can't remux fragments of mkv with ffmpeg
2023-03-16 09:49:43
same issue with streaming
2023-03-16 09:51:05
or specifically, mkv doesnt work at all without the header
improver
2023-03-16 09:54:25
>>><#794206087879852106>
_wb_
2023-03-16 08:25:24
It's kind of disappointing that after https://github.com/mozilla/standards-positions/pull/741#issuecomment-1414685282 and some sensible questions from Jyrki, they just locked the thread as "too heated" instead of answering...
2023-03-16 08:31:50
Also the combination of > We don't make these assessments lightly, and > our assessment is not based on our own testing is quite strange. How can you make any assessment without doing at least some amount of testing? Are they really that short-staffed that they cannot have even just one person spending an afternoon encoding some images, looking at the results, either with metrics or with eyes or both, and forming some opinion of their own?
gb82
2023-03-16 08:51:20
Rather unfortunate that someone came in & started being rude
_wb_
2023-03-16 08:54:26
Yes, that is very counterproductive. But it is not really an excuse to ignore polite questions.
jonnyawsom3
2023-03-16 09:25:44
> Why do you follow Google every goddamn step? Why do we need Firefox if we can have the SAME stuff in Chrome? Considering Chrome is the one that shot JXL in the first place, I'm not even sure what they were trying to say
improver
2023-03-16 09:52:58
if you oversimplify & zoom out enough that may look weird, but following chrome and adopting format that happens to be jointly developed with some google research devs and non-google devs is not the same thing
2023-03-16 09:53:56
like modular part of it isn't from google at all
2023-03-16 09:54:54
maybe some things contributed though but FLIF/FUIF research that led to large parts of it wasn't from google
2023-03-16 09:58:21
not to mention that mainstream google and google research are kinda different politically
Foxtrot
2023-03-18 06:57:56
Question about Google Chrome. I see, that many JPEG XL developers also work at Google. Do I understand correctly, that these devs have no or very little influence about JXL adoption in Chrome, even thou they work directly in Google? Thanks.
monad
2023-03-18 07:11:43
Yup.
jonnyawsom3
2023-03-18 07:31:27
Same company, very different divisions
_wb_
2023-03-18 07:35:23
Google is a pretty big company.
Foxtrot
2023-03-18 07:36:34
Ok, thanks for clarification πŸ™‚
username
2023-03-19 03:35:52
( continuing discussion from <#803645746661425173> message link: https://discord.com/channels/794206087879852103/803645746661425173/1086853850079694929 ) <@238552565619359744> it might be better to just try to add support directly to blender itself, I don't see much of a reason why they would decline
2023-03-19 03:36:14
the webp implementation could possibly be used as reference https://archive.blender.org/developer/D1598
jonnyawsom3
2023-03-19 01:18:38
Huh, I didn't know they were essentially hosting github locally, that explains why I couldn't find much info about issues/updates in the past https://projects.blender.org/blender/blender
sklwmp
2023-03-19 01:28:05
it's gitea, pretty cool!
Demiurge
2023-03-20 04:33:27
Did librewolf apply the jxl patches or is it still buggy?
_wb_ Yes, that is very counterproductive. But it is not really an excuse to ignore polite questions.
2023-03-20 04:34:44
It's way easier to have zero accountability and not answer sensible questions. Way less work.
2023-03-20 04:35:19
Of course they will choose the easier option.
2023-03-20 04:44:37
What's more ridiculous and frustrating, is... in the time it took to type this excuse, the patch could have been reviewed and merged.
2023-03-20 04:44:42
https://phabricator.services.mozilla.com/D119700#3977128
2023-03-20 08:17:22
I just installed librewolf on my Steam Deck. It's so awesome!
2023-03-20 08:17:37
I love how the default settings are very forgetful.
2023-03-20 08:18:17
So I don't have a bunch of cache junk taking up space on my Deck's SSD
Toggleton
2023-03-20 02:55:04
<:HYPERS:677894832424878137> ARCH ffmpeg has jxl enabled by default now https://github.com/archlinux/svntogit-packages/commit/f2ea8e9559bf9e8c2d5d6f4b673d30de676bb900
Traneptora
2023-03-20 02:57:34
<:poggies:853085814032302122>
sklwmp
2023-03-20 11:14:40
I guess the maintainer finally changed their mind...
novomesk
2023-03-22 11:01:04
I'd like to see output of: ldd /usr/lib64/qt5/plugins/kf5/kfilemetadata/kfilemetadata_exiv2extractor.so
2023-03-22 01:43:19
Sorry, I do not see problem here.
_wb_
2023-03-23 12:34:12
https://github.com/brave/brave-browser/issues/28411#issuecomment-1480668264
2023-03-23 12:34:51
> Brave follows upstream Chromium's release schedule very closely; Brave Nightly is built on Chromium 112.0.5615.29 as of 5 days ago. We've also been actively working on the upgrade to Chromium 113 since even earlier this month. > > As far as I can see, the libjxl patches are only available for 111.0.5563.69. For my draft PR, I had to branch off of Brave 1.51.43, which was the last version on Chromium 111. > > We'll definitely need to see a faster update cadence of the libjxl Chromium patches for this to be feasible.
2023-03-23 12:35:44
<@795684063032901642> can we do something here?
Moritz Firsching
2023-03-23 12:38:59
I'm surprised to see the patch failing so quickly, what changed in chrome? Did they update highway again?
username
2023-03-23 12:42:17
maybe it's due to how the thorium devs setup their patches/repo? as it seems that the thorium-libjxl github has both patch files and just modified pre-patched files sitting in the repo and for the brave draft pr they didn't see or use the patch files and manually created them based on the pre-patched files in the thorium-libjxl repo
2023-03-23 12:45:50
also doesn't help that it seems like the patch files and pre-modified files aren't kept in sync
2023-03-23 12:51:01
I commend the efforts of the thorium devs trying to keep a repo for easily apply-able jxl patches for chromium however I'm not sure if they are up to the task fully or at the very least there are some problems that have to be worked out
Demiurge
2023-03-25 01:06:16
holy dll hell...
gb82
2023-03-25 03:59:59
Can Chromium on Android be patched like it was on OpenMandriva out of the box for certain ROMs?
diskorduser
2023-03-25 06:03:14
Why not. It is possible
TheBigBadBoy - π™Έπš›
2023-03-28 03:48:06
Are they any websites providing content in JXL ? I asked Vivaldi for supporting JXL but they asked which websites use JXL, and unfortunately I don't even know one <:KekDog:805390049033191445>
Foxtrot
2023-03-28 03:50:00
chicken and egg problem πŸ˜„ but fundamentally broken argument... you cannot expect websites to use some format is browsers dont support said format Thats like asking if Vivaldi should support Javascript in 1995...
Traneptora
TheBigBadBoy - π™Έπš› Are they any websites providing content in JXL ? I asked Vivaldi for supporting JXL but they asked which websites use JXL, and unfortunately I don't even know one <:KekDog:805390049033191445>
2023-03-28 03:53:43
shopify is a particularly big-name site that serves jxl if the browser marks it as supported
2023-03-28 03:54:06
(via `accept:` headers)
username
Traneptora shopify is a particularly big-name site that serves jxl if the browser marks it as supported
2023-03-28 03:55:38
Shopify's support is slightly busted though it will only serve JXL files to browsers/clients that also support AVIF
Traneptora
2023-03-28 03:56:03
that's true, but if both are sent via accept headers it does serve JXL files
username
2023-03-28 03:57:22
also yeah Shopify is a somewhat big deal as they have many many many websites under their name/service
2023-03-28 03:59:53
I came across one in the wild a few days ago
2023-03-28 04:00:06
and a friend also came across one a few days ago and messaged me saying they saw a jxl file (they use waterfox)
Traneptora
2023-03-28 04:03:33
does mercury support JXL? the thorium for firefox
username
Traneptora does mercury support JXL? the thorium for firefox
2023-03-28 04:04:52
don't think it does yet. there is this issue page for it currently https://github.com/Alex313031/Mercury/issues/6
Traneptora
2023-03-28 04:05:03
ah ty
Foxtrot
2023-03-28 04:09:41
hmm, I checked this and sadly no mention of JPEG XL https://cdn.shopify.com/
username
TheBigBadBoy - π™Έπš› Are they any websites providing content in JXL ? I asked Vivaldi for supporting JXL but they asked which websites use JXL, and unfortunately I don't even know one <:KekDog:805390049033191445>
2023-03-28 04:10:48
every single shopify site supports serving jxl files, here is a small list of random shopify sites as an example: https://victrola.com/products/the-nerves-one-way-ticket https://magicholz.de/ https://www.tentree.ca/pages/about
TheBigBadBoy - π™Έπš›
2023-03-28 04:11:15
Thanks !
username
2023-03-28 04:11:16
that last one especially
Foxtrot
2023-03-28 04:14:14
you should mention, that it uses .jpg extension even for JPEG XL πŸ˜„ i thought it doesnt work until I tried to save the image
username
Foxtrot you should mention, that it uses .jpg extension even for JPEG XL πŸ˜„ i thought it doesnt work until I tried to save the image
2023-03-28 04:15:09
what browser are you using? because if it's palemoon or waterfox you can press CTRL + i and go under the media tab and it will tell you what format each image is
2023-03-28 04:15:28
think you have to wait until the site is fully loaded though
Foxtrot
2023-03-28 04:15:58
waterfox, thx
2023-03-28 04:20:10
<@693503208726986763> i have read you new comment, maybe add link to this: https://chromium-review.googlesource.com/c/chromium/src/+/4257656 and this https://bugs.chromium.org/p/chromium/issues/detail?id=1416530 they dont have to maintain it much, they just have to merge this prepared commit that enables JPEG XL in chromium
TheBigBadBoy - π™Έπš›
2023-03-28 04:21:04
Ok thank you very much ! I'll add it
username
2023-03-28 04:21:11
wait !
TheBigBadBoy - π™Έπš›
2023-03-28 04:21:15
ok
2023-03-28 04:21:19
xD
2023-03-28 04:21:59
but still, quite interesting to have a patch to reenable JXL in chromium <:YEP:808828808127971399>
username
2023-03-28 04:22:07
those commits/pages do lay most of the ground work for adding JXL support back to chromium however they aren't a full drop in solution
Foxtrot
2023-03-28 04:22:20
ohh, sorry for my misunderstanding
username
Foxtrot ohh, sorry for my misunderstanding
2023-03-28 04:25:45
it's fine
2023-03-28 04:26:03
something like this https://github.com/Alex313031/thorium-libjxl or this https://github.com/OpenMandrivaAssociation/chromium-browser-stable/blob/master/chromium-restore-jpeg-xl-support.patch would be a more "full"/easier solution
2023-03-28 04:27:35
however I have noticed the thorium-libjxl repo isn't setup the best and has the possible problem of licensing as the repo is put up under "GPL 3.0", I haven't really checked out that other patch though
Foxtrot
2023-03-28 04:38:49
made issue request about licence https://github.com/Alex313031/thorium-libjxl/issues/8
username
Foxtrot made issue request about licence https://github.com/Alex313031/thorium-libjxl/issues/8
2023-03-28 04:44:06
the person behind thorium seems to be someone who is very into FOSS so unsure how much they would be willing to change the license
Foxtrot
2023-03-28 04:44:33
we will see, asking cant hurt
username
2023-03-28 04:47:59
yeah although for me personally I usually get pretty bad anxiety around asking stuff so I usually try to gauge how likely the answer to a question/request is "yes" before I ask
2023-03-28 04:48:14
it's probably hindered me a lot over time
Fraetor
2023-03-28 07:32:26
Isn't chromium GPL? Or am I misremembering?
2023-03-28 07:32:54
Ah I guess it is BSD now.
2023-03-28 07:33:13
I was thinking that KHTML was GPL, but I guess they have rewritten most of it.
2023-03-28 07:33:31
Which I guess they would have to as Chrome doesn't distribute its source.
gb82
2023-03-28 10:23:37
https://elk.zone/disobey.net/@gianni/110102992288181670
2023-03-28 10:23:58
https://github.com/Alex313031/Mercury/issues/10
sklwmp
Foxtrot made issue request about licence https://github.com/Alex313031/thorium-libjxl/issues/8
2023-03-29 03:27:14
DZgas Π–
2023-03-29 09:03:12
There is not a single program on android that I could watch JPEG XL ?
yoochan
2023-03-29 09:09:39
tateyomi ?
2023-03-29 09:09:59
a comic reader compatible with jpegxl
DZgas Π–
yoochan tateyomi ?
2023-03-29 09:14:15
died from my image
yoochan
2023-03-29 09:14:31
lol
2023-03-29 09:15:07
is the problem in tateyomi or in your image πŸ˜„ I think the developpement is open, you could try to speak with the devs
DZgas Π–
2023-03-29 09:15:39
I also asked my friend with a more powerful smartphone. it just died
gameplayer55055
DZgas Π– I also asked my friend with a more powerful smartphone. it just died
2023-03-29 09:18:43
lol
DZgas Π–
yoochan is the problem in tateyomi or in your image πŸ˜„ I think the developpement is open, you could try to speak with the devs
2023-03-29 09:18:46
meh. the question remains - There is not a single program on android that I could watch JPEG XL ?
gameplayer55055
2023-03-29 09:19:11
a phone is kinda linux so i think libjxl should be available
DZgas Π–
gameplayer55055 a phone is kinda linux so i think libjxl should be available
2023-03-29 09:20:11
no, it doesn't work that way. Because my smartphone is 5 years old
gameplayer55055
DZgas Π– no, it doesn't work that way. Because my smartphone is 5 years old
2023-03-29 09:27:35
manufacturers dont update them
w
2023-03-29 09:31:09
problem is that libjxl doesnt have memory limited option
DZgas Π–
gameplayer55055 manufacturers dont update them
2023-03-29 09:31:24
Well, no. I don't need an update. after all, as usual, they shat shit into it. I have returned the old factory version which is why my smartphone is still working. I have already been updated, I have a smartphone j4 2018. after updating to android 9, its price dropped 3 times in a couple of months because it became impossible to use the smartphone
2023-03-29 09:32:51
and. well, also. OneUI is vile
w problem is that libjxl doesnt have memory limited option
2023-03-29 09:35:05
It's not a problem. And there is no need to make such mechanisms. From any image, be it Jpeg or Png, you can make a bomb. because memory is spent not on Decoding, but on Rendering an already decoded image, which is stored in memory in its pure form Better tell me how to open a JXL image on android
yoochan
2023-03-29 09:35:37
edit: an humonguous JXL image
2023-03-29 09:35:52
would it work in PNG ? isn't the issue in the image buffer ?
DZgas Π–
2023-03-29 09:36:05
☝️ any according to the documentation
yoochan would it work in PNG ? isn't the issue in the image buffer ?
2023-03-29 09:36:31
try it yourself
yoochan
2023-03-29 09:36:41
in png ?
DZgas Π–
2023-03-29 09:36:51
in all
yoochan
2023-03-29 09:37:09
I'll try... but my smartphone is almost as old as yours πŸ˜„
w
2023-03-29 09:37:38
a lot of memory is spent on the decoding
DZgas Π–
yoochan I'll try... but my smartphone is almost as old as yours πŸ˜„
2023-03-29 09:37:42
I'm sure that's not a problem
w
2023-03-29 09:38:51
an 8MP image can take just 24mb in memory, but will take hundreds of mb from libjxl
2023-03-29 09:39:10
because of that, on https://embed.moe i had to hack in a swapfile in the container so it wouldnt crash instantly on any image
DZgas Π–
w because of that, on https://embed.moe i had to hack in a swapfile in the container so it wouldnt crash instantly on any image
2023-03-29 09:40:54
you just need to read the resolution of the image before decoding. and count the number of pixels
w
2023-03-29 09:41:04
and do what?
2023-03-29 09:41:06
not decode it?
DZgas Π–
2023-03-29 09:41:12
yep
w
2023-03-29 09:41:25
so you would want your viewer to not show you your image?
DZgas Π–
2023-03-29 09:43:09
I have 48 megapixels of jpeg xl when decoding in the browser use 1 gigabyte of memory. it also means that for my personal work I limit myself to 100 megapixels in general
w
2023-03-29 09:43:22
well that's a you issue
2023-03-29 09:43:52
everyone else would want to be able to see it
DZgas Π–
w well that's a you issue
2023-03-29 09:43:53
You wanted to say the solution?
w
2023-03-29 09:44:10
not sure what you're complaining about
DZgas Π–
w everyone else would want to be able to see it
2023-03-29 09:44:37
no. you can not be able to see 100000x100000 image
w not sure what you're complaining about
2023-03-29 09:44:51
??
gameplayer55055
DZgas Π– Well, no. I don't need an update. after all, as usual, they shat shit into it. I have returned the old factory version which is why my smartphone is still working. I have already been updated, I have a smartphone j4 2018. after updating to android 9, its price dropped 3 times in a couple of months because it became impossible to use the smartphone
2023-03-29 09:45:07
like why the f does it become obsolete in like 2 years
DZgas Π–
w because of that, on https://embed.moe i had to hack in a swapfile in the container so it wouldnt crash instantly on any image
2023-03-29 09:45:15
YOU say that you have crash