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
2025-01-31 06:52:48
Doesn't it seem like a form of "stalling for time" or something, that they're just sitting on those bugfix patches without merging them, and waiting for a new codec and new glue code to be rewritten from scratch so they can delete all the existing jxl support code just like chromium did?
RaveSteel
2025-01-31 06:53:36
Whether you agree or disagree with their decision, they outlined their reasoning quite clearly.
2025-01-31 06:53:51
I'd also like for it to be adopted/included faster
Demiurge
2025-01-31 06:55:29
jxl-oxide is in really good condition and honestly seems like it's more stable and reliable than libjxl is. I know jxl-rs will probably be even better when it's finished. But in the meantime, why stall until jxl-rs is finished? Why not just use oxide in the meantime? oxide is really, really good!
2025-01-31 06:56:51
If they really care about rust so much, and that's really the main issue here, like they claim it is, then they could start with fitting in oxide first while they wait for jxl-rs to be complete.
2025-01-31 06:57:48
Although their rust argument is really weak. do they have a rust webp decoder too?
2025-01-31 06:59:43
It's frustrating because libjxl integration is already there in firefox and waiting to be enabled by them. But they are refusing to merge basic bug fixes in or enable it in non-nightly builds
2025-01-31 07:00:15
It just feels like stalling for time somehow...
2025-01-31 07:00:37
Meanwhile Apple is using libjxl in literally all of their products right now...
AccessViolation_
2025-01-31 07:00:55
I could see why they wouldn't spend time integrating jxl-oxide only to replace it with jxl-rs a few months later
Demiurge
2025-01-31 07:01:22
And the whole world is basically just waiting for these weird browserlords to flip the switch already so everyone can start using it
AccessViolation_ I could see why they wouldn't spend time integrating jxl-oxide only to replace it with jxl-rs a few months later
2025-01-31 07:02:29
Yeah, jxl-rs might have a different API, for all I know.
2025-01-31 07:02:41
But still, all this waiting around is laaaame...
AccessViolation_
2025-01-31 07:03:13
Technically it would be an easy flip of a switch to get the original implementation 'working' again in nightly, but the whole point of nightly is that you get to test things before you ship them to everyone, and given that that specific implementation will never be shipped because it's going to be replaced with jxl-rs, that wouldn't make sense from their point of view
Demiurge
2025-01-31 07:03:18
Especially when libjxl integration is already there and waiting to be flipped on
AccessViolation_
2025-01-31 07:04:54
They'd also have to fix transparency and animation, or people are going to see corrupted images
Demiurge
2025-01-31 07:05:25
They like to do staggered rollouts, don't they? So they could enable it at compile time and have it disabled by default in `about:config` like they usually do, and then enable it in stages like they usually do using their shady telemetry and experiments mumbo jumbo that mozilla likes so much these days.
AccessViolation_
2025-01-31 07:06:16
is that regarding rolling out the libjxl impl to stable?
Demiurge
2025-01-31 07:07:02
Yeah...
2025-01-31 07:07:11
Something they already decided against...
AccessViolation_
2025-01-31 07:07:53
their reasoning, regardless of whether it's valid, is that they don't want multithreaded C++ in there because of safety concerns, so it makes sense why they wouldn't do that among the other reasons
Demiurge
2025-01-31 07:11:23
I mean, libwebp is c++ also, and I doubt they have a rust version of that... I think I heard someone say their image decoders are sandboxed in a separate process.
2025-01-31 07:13:09
don't know if that's true though, but it would make sense.
AccessViolation_
2025-01-31 07:14:22
They're not able to replace all C++ with Rust all at once, instead they use various sandboxing techniques, they gradually rewrite components in Rust, and crucially they refrain from introducing *more* C++
Demiurge
2025-01-31 07:14:30
especially after that ACE vulnerability in libwebp
AccessViolation_ They're not able to replace all C++ with Rust all at once, instead they use various sandboxing techniques, they gradually rewrite components in Rust, and crucially they refrain from introducing *more* C++
2025-01-31 07:15:30
rewriting software in rust is not a replacement for sandboxing and other sensible security protocols
2025-01-31 07:15:55
logic errors can still lead to serious security flaws
AccessViolation_
2025-01-31 07:16:02
That's true
lonjil
2025-01-31 07:32:10
logic errors in safe rust code won't lead to RCE though
AccessViolation_
2025-01-31 07:36:16
I assume they said that because with how I phrased that I made it sound like sandboxing was an alternative to writing code in Rust
2025-01-31 07:36:31
And browsers should definitely sandbox things regardless
lonjil
2025-01-31 07:38:33
why? sandboxing slows things down. Maybe if chips had CHERI for cheap sandboxing, it'd be reasonable to do light sandboxing for everything.
AccessViolation_
2025-01-31 07:40:25
Actually, hmm. Now that I think about it sandboxing tabs for example is to prevent them from accessing or overwriting each others memory if something goes wrong, but Rust should make something like that impossible if every tab is its own instance of some datatype
2025-01-31 07:40:47
And stuff like a site performing system I/O when it shouldn't be able to without permission, isn't something a sandbox is going to solve either
2025-01-31 07:41:23
I'm sure the term is broad enough to include things it would cover that Rust wouldn't, I just can't think of anything atm
lonjil why? sandboxing slows things down. Maybe if chips had CHERI for cheap sandboxing, it'd be reasonable to do light sandboxing for everything.
2025-01-31 07:51:33
Firefox does something interesting for risky components that are too small to be worth a slow sandbox. Iirc they do something like: compile the C++ to Wasm, then compile the Wasm back to machine code during the build process, and that final compile process ensures the code can only interact with a set of special endpoints
2025-01-31 07:52:26
font parsing is or was one thing that's done like that iirc
lonjil
AccessViolation_ Actually, hmm. Now that I think about it sandboxing tabs for example is to prevent them from accessing or overwriting each others memory if something goes wrong, but Rust should make something like that impossible if every tab is its own instance of some datatype
2025-01-31 08:21:34
the big reason for doing this is Spectre. Attacker-controlled code (like javascript) can exploit CPU bugs to read data from the same process. but media libraries and such only need sandboxing if they might have bugs that cause them to do bad stuff explicitly, like reading arbitrary pointers or w/e.
Demiurge
lonjil logic errors in safe rust code won't lead to RCE though
2025-01-31 08:25:18
I thought W^X bit is supposed to solve that
lonjil
2025-01-31 08:27:46
that isn't very widely used unfortunately
HCrikki
2025-02-01 01:39:49
**hydrus** now fully supports jxl images as of v607 https://github.com/hydrusnetwork/hydrus/releases/tag/v607a
AccessViolation_
2025-02-01 04:49:50
There were no recent developments that lead up to me sharing this, I'm just putting it here to potentially plant a seed ;) [[stalled] Add support for JPEG XL: allow JXL uploads in MediaWiki](<https://phabricator.wikimedia.org/T270855>)
2025-02-01 04:50:17
(specifically, jxl is *not* supported and this issue has been stagnant for a while)
Mine18
2025-02-03 08:14:59
aw man, that's so cringe
Meow
2025-02-03 08:55:50
MediaWiki can't support Alpha in WebP thumbnails
Demiurge
AccessViolation_ There were no recent developments that lead up to me sharing this, I'm just putting it here to potentially plant a seed ;) [[stalled] Add support for JPEG XL: allow JXL uploads in MediaWiki](<https://phabricator.wikimedia.org/T270855>)
2025-02-03 05:54:55
They use Debian? Maybe in 12 or 24 years
AccessViolation_ Firefox does something interesting for risky components that are too small to be worth a slow sandbox. Iirc they do something like: compile the C++ to Wasm, then compile the Wasm back to machine code during the build process, and that final compile process ensures the code can only interact with a set of special endpoints
2025-02-03 06:03:01
pledge and unveil really need to become standard... a multiprocess model where each process simply asks the kernel to restrict its privileges and view of the filesystem and revokes its own powers ahead of time is a trivially easy way for programmers to contain and limit damage from malfunctioning software
2025-02-03 06:03:31
With no performance overhead
2025-02-03 06:04:04
But most importantly, no mental complexity overhead for the programmer.
strawberry pie
2025-02-07 03:04:35
Vite <https://vite.dev> v6.1.0 supports Jpeg-xl!
Meow
2025-02-09 04:18:06
The script for macOS Quick Action updated for preserving Birth Time > `on run {input, parameters} > set filePaths to "" > repeat with thisFile in input > set filePaths to filePaths & " " & quoted form of POSIX path of thisFile > end repeat > > tell application "Terminal" > activate > do script "for f in" & filePaths & "; do cjxl \"$f\" \"${f%.*}.jxl\" -d 0 -v && touch -t $(date -r $(stat -f %B \"$f\") +%Y%m%d%H%M.%S) \"${f%.*}.jxl\" && touch -t $(date -r $(stat -f %m \"$f\") +%Y%m%d%H%M.%S) -m \"${f%.*}.jxl\"; done" > end tell > end run` > > (AppleScript)
Demiurge
2025-02-09 09:49:45
The "touch" command is the standard, posix way to change timestamps
Meow
Demiurge The "touch" command is the standard, posix way to change timestamps
2025-02-09 11:16:27
I originally used `touch` but it didn't work as my expectation
RaveSteel
2025-02-09 11:17:48
How so?
Meow
2025-02-09 11:19:28
The modification time is also affected
RaveSteel
2025-02-09 11:19:54
You only want ctime to be changed?
Meow
2025-02-09 11:20:30
Why not? If the alternative can realise that why can't I use?
RaveSteel
2025-02-09 11:20:52
No you can, but what is the reason for not wanting to change mtime?
2025-02-09 11:21:26
mtime is more commonly used after all
Meow
2025-02-09 11:22:36
I want to preserve when the input file was created
2025-02-09 11:23:46
This is for macOS as Windows does for it differently
RaveSteel
2025-02-09 11:24:19
Alright
Meow
2025-02-09 11:24:55
If you copy one file on Windows, the new file will be appended with a new creation time
2025-02-09 11:25:56
Make it get created after it's got edited
2025-02-09 02:18:44
Damn I missed "time"
2025-02-09 02:38:27
Now both the birth time and modification time will be appended correctly
2025-02-09 02:51:38
And it seems the initial part can't be removed or reading multiple files would fail
Demiurge
2025-02-09 04:18:39
ctime is file metadata change, mtine is file contents change. birthtime is creation time
2025-02-09 04:18:58
Idk if touch allows you to change the birthtime
RaveSteel
2025-02-09 04:22:59
I read a bit into it and birthtime seems to be filesystem specific and outside of POSIX, apparently
Meow
2025-02-09 04:40:46
At least I saw the output using identical ones
Demiurge
2025-02-09 04:48:50
Yep, birthtime is nonstandard unfortunately. ctime is not the same thing
2025-02-09 05:07:23
Nearly all filesystems have it though
2025-02-09 05:08:13
Even FAT
Meow
Demiurge Yep, birthtime is nonstandard unfortunately. ctime is not the same thing
2025-02-10 08:34:15
https://www.gnu.org/software/coreutils/manual/html_node/File-timestamps.html
2025-02-10 08:34:33
> Standard POSIX files have three timestamps: the access timestamp (atime) of the last read, the modification timestamp (mtime) of the last write, and the status change timestamp (ctime) of the last change to the file’s meta-information. Some file systems support a fourth time: the birth timestamp (birthtime) of when the file was created; by definition, birthtime never changes.
2025-02-10 08:35:14
Non-standard but recognised
Demiurge
2025-02-10 07:57:38
Why isn't it called btime I wonder
HCrikki
2025-02-11 04:39:30
**OpenComic** added support through jxl-oxide-wasm. Releasing in 1.5.0 but for now dev posted a testable nightly for windows https://github.com/ollm/OpenComic/issues/165
Quackdoc
2025-02-11 05:05:28
neat
TheBigBadBoy - 𝙸𝚛
2025-02-12 03:34:41
Meow
2025-02-12 03:39:49
But no thumbnails for JXL on OneDrive for iOS
lonjil
2025-02-12 04:00:11
they aren't taking orientation into account
Meow
2025-02-12 04:09:11
Looks like a JXL art
lonjil
2025-02-12 04:17:28
yeah
2025-02-12 04:18:28
by jon somewhere in <#824000991891554375>
spider-mario
lonjil by jon somewhere in <#824000991891554375>
2025-02-12 04:52:25
how many bytes is it? that might make it easier to find
lonjil
2025-02-12 04:52:44
183 bytes
spider-mario
2025-02-12 04:54:10
ah, is it this one? https://discord.com/channels/794206087879852103/824000991891554375/1267787251815809034
lonjil
2025-02-12 04:55:47
no, but almost. Jon must've posted a non-HDR version somewhere else, because I have both that one and and an SDR version. Both are 183 bytes.
2025-02-12 04:56:37
I found a file in <#824000991891554375> called sunset.jxl, but it looks like it doesn't have that sun reflection, though is otherwise similar.
jonnyawsom3
2025-02-12 05:02:07
Well you made me stumble across this 'animated' JXL art https://discord.com/channels/794206087879852103/824000991891554375/846709763324248075 Interestingly, Irfanview locks up for quite a while before displaying it, while waterfox loads instantly. Probably due to Irfanview not doing any progressive loading
2025-02-12 05:17:39
And yeah, I looked around but the only sunsets here have no actual sun setting. Maybe it was a non-HDR version Jon posted to Twitter in the past
lonjil
2025-02-12 05:19:20
oh yeah, and he probably had a download link to get the jxl file from his website
_wb_
2025-02-12 07:22:08
https://sneyers.info/sunset/
RaveSteel
2025-02-12 07:37:17
Samsung Gallery interprets the sunset AVIF in a quite interesting manner
jonnyawsom3
2025-02-12 07:59:25
https://tenor.com/view/aurora-borealis-steamed-hams-the-simpsons-simpsons-super-intendent-chalmers-gif-26950836
CrushedAsian255
RaveSteel Samsung Gallery interprets the sunset AVIF in a quite interesting manner
2025-02-12 08:01:23
"artistic liberties"
AccessViolation_
https://tenor.com/view/aurora-borealis-steamed-hams-the-simpsons-simpsons-super-intendent-chalmers-gif-26950836
2025-02-12 09:11:06
i spent a good part of today practicing voice acting chalmers and seymour in the steamed hams bit, and for a little bit my brain didn't know how to process seeing it in a different context after watching it like 20 times earlier
Demiurge
_wb_ https://sneyers.info/sunset/
2025-02-12 11:25:28
Nice spline sig
diskorduser
Meow But no thumbnails for JXL on OneDrive for iOS
2025-02-13 08:16:35
Some jxl files working on onedrive android
Meow
2025-02-13 08:42:45
Hmm I may try browsing smaller JXL images
2025-02-13 08:46:41
Maybe the decoder is just too weak for huge images
2025-02-13 08:47:42
I described the image dimension not the contents
Demiurge
2025-02-13 11:15:30
Microsoft momentum confirmed?
2025-02-13 11:15:58
Would be cool if they make their own jxl codec...
2025-02-13 11:16:20
Jxrlib seems pretty well made
0xC0000054
Demiurge Microsoft momentum confirmed?
2025-02-13 11:27:44
I hope so, but based on their poor WebP and AVIF implementations I am not optimistic. Both of those codecs were released in a beta state then abandoned.
2025-02-13 11:28:53
Ironically, Microsoft's AVIF codec can't even correctly load all the test images they submitted to the AVIF conformance repository.
Demiurge
2025-02-13 11:29:01
libwebp is extremely complicated last I checked. Even more complicated than libjxl
2025-02-13 11:29:31
Even though the codebase is better organized than libjxl the code itself is much more complicated seeming
2025-02-13 11:30:59
But third party codecs jxlatte and jxloxide already exist and are very simple and beautiful by comparison
0xC0000054
2025-02-13 11:32:23
LibWebP does have a complex API. They split the image API into basic and advanced versions, with the latter being required for animations and metadata IIRC.
CrushedAsian255
2025-02-13 11:33:02
Could also be more complex looking due to it being more optimised
Demiurge
2025-02-13 11:34:18
It's almost incomprehensibly complex. I thought libjxl was complex but libwebp is somehow better organized and cleaner yet even more complex at the same time
0xC0000054
2025-02-13 11:35:24
But at least libwebp got the error handling correct for a library. AFAIK libavif still calls `abort()` for some error conditions, which is unacceptable for use in many types of software (e.g. an image editor).
Demiurge
2025-02-13 11:35:35
Also I thought Microsoft just uses dav1d because that's the obvious asm/C decoder everyone uses
0xC0000054
2025-02-13 11:36:43
I had to write my own AVIF container handling to avoid that issue with my Paint.NET AVIF plugin. I maintain the AVIF and WebP plugins for Paint.NET.
Demiurge
2025-02-13 11:37:53
Wow. I didn't know you made all of those plugins, plus the jxl plugin. It's almost scary how knowledgeable you are of different codec APIs
2025-02-13 11:39:03
Plus the C/C# cross-compatibility interface is probably a huge pain in the ass only the most masochistic techpriests can hope to master
0xC0000054
2025-02-13 11:43:51
A lot of the AVIF code was derived from the few public ISO specs and libavif, because using expensive ISO specifications as references for your file format is a great way to ensure your new FOSS codec is widely adopted. 🙄
Demiurge Plus the C/C# cross-compatibility interface is probably a huge pain in the ass only the most masochistic techpriests can hope to master
2025-02-13 11:51:50
That part usually isn't that difficult, you just need to wrap whatever API you are using in a C-style interface.
Demiurge
2025-02-13 11:53:24
Hmm... jxl is pretty expensive and ISO-ized...
2025-02-13 12:00:20
But at least it's got multiple separate and complete codec implementations
2025-02-13 12:00:34
In multiple languages
0xC0000054
2025-02-13 12:02:42
Another advantage of writing my own AVIF container support is that I could add features that libavif didn't have. My AVIF 'grid image' encoder ended up [being used as a comparison](<https://github.com/AOMediaCodec/libavif/issues/331>) to find optimization issues with the libavif version after it added that feature. I think my next project with the Paint.NET AVIF plugin is improving the color management and HDR handling. My Photoshop AVIF plugin has basic HDR support, I plan to reuse some of the code. But it also has the problem of users leaving one or two star reviews on Adobe's site due to the plugin being 'too basic' or because they failed to read the description stating that Mac isn't supported.
2025-02-13 12:03:54
I find it funny that Adobe is a member of the AOM group, and yet they don't have native AVIF support in Photoshop after 4+ years of user requests.
Demiurge
2025-02-13 12:13:38
You mean like automatic fixed size tiles?
A homosapien
2025-02-13 12:15:10
2025-02-13 12:15:10
This is what he's talking about
Demiurge
2025-02-13 12:19:29
That's what I thought...
0xC0000054 I find it funny that Adobe is a member of the AOM group, and yet they don't have native AVIF support in Photoshop after 4+ years of user requests.
2025-02-13 12:21:08
Personally I'm glad that Adobe seemed to immediately rush to adopt jxl while completely ignoring avif like it doesn't even want to bother with such a half baked and low effort attempt at webp 2.0
2025-02-13 12:26:48
The on2 team back at it again. Especially after they were put in charge of Chrome and tried to say there's "not enough interest" in jxl and it should be removed from the browser on that ridiculous basis, I decided avif deserves all the shade and failure it gets from then on.
2025-02-13 12:28:33
On that basis alone avif deserves to be utterly spurned
2025-02-13 12:30:52
I had no idea that jxl and avif were competitors in some kind of "format war" until that happened
2025-02-13 12:31:32
I always thought they would coexist in their own appropriate niches, with avif replacing animated gif and webp
2025-02-13 12:32:22
Lossy video
2025-02-13 12:33:54
But apparently on2 doesn't want that. They only want 1 format. So I say, okay, let's give them 1 format! ;)
2025-02-13 12:34:52
May the best one win
CrushedAsian255
2025-02-13 12:52:02
As AVIF is very good for lossy animations as it is just AV1
Meow
Meow Hmm I may try browsing smaller JXL images
2025-02-13 02:04:06
Hmm not showing on the iOS/iPadOS app
_wb_
2025-02-13 03:07:43
https://ddisoftware.com/tech/qimage-ultimate-wish-list/support-of-jpeg-xl-file-format-is-that-a-realistic-wish/ > Right now the format is too obscure to be of any use in Qimage. There is too little support for the format and in the few samples I was able to find, there is no sign of an ICC profile in the image. Without an embedded profile, the image is useless. Could someone explain that the libjxl decoder can always give you an ICC profile and that the reason that he cannot find it is that jxl has compressed color space signaling?
jonnyawsom3
2025-02-13 03:12:25
This is from their second comment > Color profiles are supported - this was one of my first tests before I converted my biggest TIFF space hogs to JXL.
Kremzli
2025-02-13 06:08:27
https://github.com/web-platform-tests/interop/issues/700#issuecomment-2657324694 > Thank you for proposing JPEG XL image format for inclusion in Interop 2025. > > We wanted to let you know that this proposal was not selected to be part of Interop this year. > > On behalf of the entire Interop team, thank you for submitting this proposal for consideration. We got many more proposals than we could include in this year's project, necessitating some difficult choices. Please note this should not be taken as a comment on the technology as a whole, or our willingness to consider it for Interop in the future. We appreciate the work you put into your proposal, and would welcome your participation in future rounds of Interop. > > For an overview of our process, see proposal selection. Thank you again for contributing to Interop 2025. > > Posted on behalf of the Interop team.
HCrikki
2025-02-13 06:26:27
process was designed to be gamed behind the scenes from the beginning. secrecy breeds scheming to sink proposals and avoid real discussions on merits and opinions, it doesnt result in honest wholesome voting
2025-02-13 06:27:37
for tech talks on adoptions, voting should always be informed and for the highest impact proposals actually have argumentations mandatory and public so that any failures to understand their impact can be understood, corrected or adressed
lonjil
2025-02-13 06:31:49
interop is about interop, and with only one major browser supporting jxl, it still makes perfect sense that jxl isn't in interop.
HCrikki
2025-02-13 06:36:16
chromium and firefox still have perfectly working patches that could be deployed anytime. not currently part of a browser's stable/other official releases doesnt mean the support doesnt already exist
lonjil
2025-02-13 06:47:05
How is that relevant?
2025-02-13 06:47:30
You think Interop is a magic charm that would force Chrome and Firefox to merge those JXL patches tomorrow?
2025-02-13 06:49:09
Since Firefox will add support using jxl-rs later this year, JXL would make sense in Interop 2026, since at that point there'd actually be potential differences between two major browsers that need to be worked out and harmonized.
novomesk
0xC0000054 I find it funny that Adobe is a member of the AOM group, and yet they don't have native AVIF support in Photoshop after 4+ years of user requests.
2025-02-13 07:06:44
I find it sad. Such expensive software and they did not allocate few days of developer time to implement the feature.
Demiurge
2025-02-13 09:07:09
Maybe they intentionally decided not to support avif since jxl is better suited for their needs and they already have great support for jxl?
2025-02-13 09:08:14
It looks like they intentionally decided to spend all their time fully integrating jxl support and utterly ignore avif as if it's a total waste of everyone's time :)
lonjil interop is about interop, and with only one major browser supporting jxl, it still makes perfect sense that jxl isn't in interop.
2025-02-13 09:14:33
Inconsistent codec support is an interop issue that ought to be discussed openly though rather than behind closed doors. Lots of major commercial interests are waiting to flip the jxl switch and the only thing holding them back is non-Apple platforms dragging their feet. Plus maybe devs can discuss prospective APIs for partial image retrieval
jonnyawsom3
Demiurge It looks like they intentionally decided to spend all their time fully integrating jxl support and utterly ignore avif as if it's a total waste of everyone's time :)
2025-02-13 09:17:24
Except they didn't. You need to use CameraRAW to import or export JXL files
Demiurge
2025-02-13 09:18:30
I thought they have builtin jxl export?
A homosapien
2025-02-14 01:43:06
Not complete support
2025-02-14 01:45:10
To load it straight onto photoshop you still need a plugin
jonnyawsom3
2025-02-16 03:47:57
Not sure if this was old or only just became available, but along with the other recommendation by TWAIN, it seems near-guaranteed that JPEG XL will be added to PDF https://pdfa.org/wp-content/uploads/2021/06/pdf-heic-1.pdf
sklwmp
2025-02-16 08:36:14
ngl seeing "Philippines" in one of the slides surprised me 😅
CrushedAsian255
sklwmp ngl seeing "Philippines" in one of the slides surprised me 😅
2025-02-16 09:02:05
The JXL in that slide looks like lossy modular rather than vardct to me
2025-02-16 09:02:58
Also legacy jpeg seems to handle the barcodes better
jonnyawsom3
Not sure if this was old or only just became available, but along with the other recommendation by TWAIN, it seems near-guaranteed that JPEG XL will be added to PDF https://pdfa.org/wp-content/uploads/2021/06/pdf-heic-1.pdf
2025-02-17 02:01:15
Just found this, may be worth casting our votes https://www.surveymonkey.com/r/QW595Y8?
CrushedAsian255
2025-02-17 03:31:12
where is jpeg xl?
Quackdoc
2025-02-17 03:35:03
lol
Meow
2025-02-17 04:15:40
I would like to know the forward compatibility of JPEG XL
Quackdoc
2025-02-17 04:49:28
the renpy issue for jxl seems to be picking up again quite a bit https://github.com/renpy/renpy/issues/3865#issuecomment-2661911280
_wb_
2025-02-17 07:50:29
Avif speed 0 and jxl effort 10? Seems a bit excessive. For lossy jxl, I am not even convinced that e9 actually produces better results than e7.
damian101
2025-02-17 01:10:02
Avif speed 1 often produces better results than speed 0 while being way faster.
novomesk
2025-02-20 10:13:00
https://apps.kde.org/glaxnimate/ Windows nightly build of Glaxnimate (open-source vector animation and motion design desktop application) can open JXL pictures. The installer is available at https://cdn.kde.org/ci-builds/graphics/glaxnimate/master/windows/
VcSaJen
lonjil interop is about interop, and with only one major browser supporting jxl, it still makes perfect sense that jxl isn't in interop.
2025-02-20 01:49:56
Interop is about intent to do something, not about what's already done.
Demiurge
2025-02-21 06:50:55
jxl is being discussed behind closed doors. The reasons everyone is forced to wait for contrived delays, are shielded from scrutiny and discussion. The webp/avif team captain is leveraging his position to force through his own formats and prevent better designed alternatives from competing with them. I think the arguments pro and contra really should be aired out in public
2025-02-21 06:54:29
More importantly I think people should start thinking about the best way to support a partial download request API for thumbnails and progressive loading
2025-02-21 06:57:12
A new and more efficient spec to replace thumbnail URLs
2025-02-21 06:57:43
A way for the client to know how much partial data to request
2025-02-21 07:00:30
People who think jxl fails to meet the same bar as webp and avif (lol) should air their concerns and maybe they can even be addressed with a revision like what happened with webp
2025-02-21 07:01:02
But keeping all this behind closed doors is really bad
2025-02-21 07:02:32
It's an interop issue with lots of very big commercial interests involved and it's already being used successfully on the Apple platform
Meow
2025-02-21 07:08:30
The strategy of JXL for ProRAW creates a good reputation among Apple premium users
2025-02-21 07:09:07
Even though it's not the standalone JXL
Demiurge
2025-02-21 07:17:10
Hopefully they fix the flaws with proraw or replace it with true jxl
2025-02-21 07:18:10
Since there are flaws with proraw that true jxl doesn't have
jonnyawsom3
Demiurge More importantly I think people should start thinking about the best way to support a partial download request API for thumbnails and progressive loading
2025-02-21 08:08:58
It already exists for video use, should work fine for images but I don't have a way to test it https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/206
CrushedAsian255
2025-02-21 11:42:10
maybe something like `X-Image-Size` with options `lqip, thumbnail, preview, maxres` ?
2025-02-21 11:42:31
only thing is how to signify what you already have?
2025-02-21 11:43:29
like maybe first request would be ``` X-Image-Size: thumbnail ``` response with `206 Partial Content` then something like ``` X-Image-Size: maxres; have=thumbnail ``` will send the rest of the image?
2025-02-21 11:43:45
or maybe it could be integrated with the preexisting `Range` header
2025-02-21 11:44:36
Ahh, `Range` supports defining different units https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Range#unit
2025-02-21 11:45:42
so, maybe `Range: image=0-thumbnail` to get just the thumbnail `Range: image=thumbnail-` to get the rest ?
2025-02-21 11:47:36
nevermind, the spec says `<range-start>` and `<range-end>` have to be integers
Demiurge
It already exists for video use, should work fine for images but I don't have a way to test it https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/206
2025-02-21 02:34:47
That's only a small piece of the puzzle. Clients need to know how to make smart informed choices on how much to request at first
MSLP
2025-02-21 07:00:26
The client part is probably easier, as browsers are updating constantly, opposed to http servers, and once eg. a custom attribute on img tag is agreed on and implemented then the support for it will be avaiable globally - especially if it will have application to currently supported image formats (and it can be applied to progressive jpegs and interlaced PNGs) Meanwhile in http servers world where even getting image/jxl MIME-type served for .jxl extension by default may not happen, thumbnail-range is unlikely to be implemented in general-purpose servers, and even when it is the time which would take to upgrade to major release which would support it will be long. Such server feature probably would be only available in specialized CDNs.
2025-02-21 07:02:26
Maybe just some attribute on img tag, that would point the browser to the full-size image, and contain the byte range for getting thumbnail from full-size would be better
2025-02-21 07:03:06
If a browser recognizes it, it'll download part of full size img, otherwise it'd just download the regular thumbnail from img src
derberg🛘
Just found this, may be worth casting our votes https://www.surveymonkey.com/r/QW595Y8?
2025-02-22 09:42:32
Sleep is for the weak, I watch PDF instead
𝕰𝖒𝖗𝖊
Avif speed 1 often produces better results than speed 0 while being way faster.
2025-02-24 12:02:56
What's the theoretical evidence here? I mean what can be the reason?
damian101
𝕰𝖒𝖗𝖊 What's the theoretical evidence here? I mean what can be the reason?
2025-02-24 12:07:48
Perceptual optimizations being "optimized" away by less well tuned components. The higher levels of pruning at speed 1 can prevent such excessive optimization in the wrong direction.
𝕰𝖒𝖗𝖊
Perceptual optimizations being "optimized" away by less well tuned components. The higher levels of pruning at speed 1 can prevent such excessive optimization in the wrong direction.
2025-02-24 12:08:41
Isn't this a sign of faulty implementation in the first place?
damian101
𝕰𝖒𝖗𝖊 Isn't this a sign of faulty implementation in the first place?
2025-02-24 12:09:54
No, don't forget that aom devs target psnr first, ssim second, and sometimes vmaf.
𝕰𝖒𝖗𝖊
2025-02-24 12:10:11
Oh, okay. That's the reason.
damian101
2025-02-24 12:10:28
Yeah, cpu-used 0 will always be more efficient than cpu-used 1 when only looking at psnr scores.
𝕰𝖒𝖗𝖊
2025-02-24 12:10:29
Suddenly forgot that it's a video based image format after all
2025-02-24 12:11:16
What about svt-av1-psy though? I am wondering if that has a similar output for this example
_wb_
2025-02-24 07:40:35
As a rule of thumb, optimizing "too much" for any metric has this tendency of not improving quality but only improving metric scores, kind of revealing flaws in the metric.
CrushedAsian255
2025-02-24 10:20:25
it's like ML model overfitting
jonnyawsom3
2025-02-24 10:47:46
And it should always be checked visually in the end *cough cough* <#1278292301038227489>
juliobbv
𝕰𝖒𝖗𝖊 Isn't this a sign of faulty implementation in the first place?
2025-02-24 08:26:43
there are some rare cases where cpu-used 6 beats slower settings 💀
𝕰𝖒𝖗𝖊
juliobbv there are some rare cases where cpu-used 6 beats slower settings 💀
2025-02-24 08:29:06
Both perceptually and on metrics?
juliobbv
𝕰𝖒𝖗𝖊 Both perceptually and on metrics?
2025-02-24 08:29:14
just perceptually
2025-02-24 08:29:38
cpu-used 6 limits transforms to a max of 32x32px, which most of the time it's not the right call for max metric scores, but for images with a ton of noise or film grain, the result can end up looking too blurry (kind of like what happens with <@207980494892040194>'s examples)
𝕰𝖒𝖗𝖊 What about svt-av1-psy though? I am wondering if that has a similar output for this example
2025-02-24 08:30:52
for svt-av1-psy, I've seen cases where preset -1 beats -2 perceptually
2025-02-24 08:31:43
in a way that you can tell it'll help psnr scores, but most likely not anything else
_wb_ Avif speed 0 and jxl effort 10? Seems a bit excessive. For lossy jxl, I am not even convinced that e9 actually produces better results than e7.
2025-02-24 08:58:43
also, using ssim with effort 10 is just outright crippling jxl's perception, as 🧈 iterations lowers ssim scores most of the time in my experience
2025-02-24 09:00:53
while libaom is using tune ssim, so duh of course it'll perform better on ssim
username
2025-02-27 10:17:58
2025-02-27 10:17:59
Seems like the next version of [Paint.NET](https://getpaint.net/) is going to have JXL support by default!
Traneptora
2025-02-27 11:59:08
holy crap this website looks like it is from 2003
0xC0000054
Traneptora holy crap this website looks like it is from 2003
2025-02-27 12:05:13
Yeah. Paint.NET has only one main developer, and I don't think updating the website has been high priority. But the app itself has received numerous updates.
w
2025-02-27 01:20:39
soul
_wb_
2025-02-27 02:53:30
I cannot really see the website between all those ads
Meow
2025-02-27 02:55:44
It's called nostalgia
AccessViolation_
_wb_ I cannot really see the website between all those ads
2025-02-27 06:27:50
it always surprises me when i hear things like this. i can't imagine not using an adblocker
2025-02-27 06:28:10
that's not entirely true, sometimes i disable it just for fun, to see what i'm missing, and to me the web becomes literally unusable
2025-02-27 06:31:03
*oh it's bad*
2025-02-27 06:31:23
i can't believe google is still doing those borderline scam ads that trick you into thinking the buttons on the ads are a part of the website
username
2025-02-27 06:32:28
you know it's funny the reason I started using a blocker years ago in the first place wasn't because I found ADs annoying, no it was because ADs would literally make both my computer and internet cry so I had to use one to make browsing the web not unbearably slow
2025-02-27 06:33:40
even now my internet still sucks so I still use a blocker because without it websites take noticeably longer to load still
jonnyawsom3
2025-02-27 06:49:47
Still better than the No Man's Sky website... I should really message them about fixing it
username
Still better than the No Man's Sky website... I should really message them about fixing it
2025-02-27 06:51:20
their website loads everything all at once right? (i forgot)
jonnyawsom3
username their website loads everything all at once right? (i forgot)
2025-02-27 06:53:39
With unoptimised 8K PNGs and full HD videos all autoplaying at once
2025-02-27 07:06:44
My GPU decode hits 100%, then falls back to CPU at 50% with my network maxed out and RAM usage increasing by around 2GB 💀
_wb_
AccessViolation_ it always surprises me when i hear things like this. i can't imagine not using an adblocker
2025-02-27 07:55:57
I generally just avoid pages with ads, especially excessive ads. Seeing them is a useful indicator to me of the expected reliability of the information.
spider-mario
AccessViolation_ i can't believe google is still doing those borderline scam ads that trick you into thinking the buttons on the ads are a part of the website
2025-02-27 08:09:29
I’ll check but I think it might go against their policies, in which case you might be able to report it
2025-02-27 08:12:52
https://support.google.com/adspolicy/answer/6020955 > The following is not allowed: > > Ads that make it difficult for the user to understand they are interacting with an ad > > Examples (non-exhaustive): Ads that resemble system or site warnings/error messages; ads that simulate messages, dialog boxes, menus, or request notifications; hosted ads that are indistinguishable from other content; ads depicting features that do not work, such as close buttons, text input boxes, multiple choice options; download/install buttons or icons in image ads; ads with a transparent background; images that are segmented; an image that contains multiple copies of itself within the ad; images that appear to be more than one ad; moving and clicking arrows; ads that use surreptitious techniques to disguise their nature; standalone buttons in image ads that lack clear context explaining their function, or whose prominence relative to the surrounding ad content is disproportionate.
AccessViolation_
2025-02-27 08:13:38
it's been a common occurrence every time i tried disabling my adblocker. they're especially common on download pages. i kind of doubt reporting them makes a difference, especially since the whole 'google ads division' has been fairly shady as reported by media, but honestly it's been a long time since i read about it
2025-02-27 08:15:51
of course if i saw them again i would still report them
2025-02-27 08:16:38
yeah i got the same ads again, let me do that
2025-02-27 08:17:58
also this one which says "continue" in dutch
2025-02-27 08:19:57
I get normal ads on cnn.com to test, i guess they were just hijacking a software download page with fake button ads
spider-mario
2025-02-27 08:21:40
I get similar ones on that page, ironically for anti-ad/malware software
2025-02-27 08:21:53
AccessViolation_
2025-02-27 08:23:05
they became the very thing they swore to destroy
2025-02-27 08:23:10
adblocker ads are always funny
jonnyawsom3
2025-02-27 08:36:27
I used Bullguard antivirus for many years, mostly out of naivety, then eventually stopped paying them when I realised I'm smart enough not to click the big flashing button saying "Free Robux"
AccessViolation_
2025-02-27 08:40:36
"too much belly fat in your 50's? put this in your shoes" glad to see ads are still as deranged as I remember
username
2025-02-27 08:41:03
I wonder if the old Kaspersky alert sound has ever caused someone to die of a heart attack
AccessViolation_
2025-02-27 08:43:52
i don't know what i did in these 10 minutes that made google think i'm a lonely 50 year old man with belly fat, a bad heart and broken legs looking for a partner
username
2025-02-27 08:47:36
afaik the ads are based off the current network or something as whenever I would go into different people's houses or join people's mobile hotspots I noticed the ads I would get would be vaguely related to whoever lives in the house or uses the same network frequently
jonnyawsom3
2025-02-27 08:50:39
I tend to get a lot about recent topics I was discussing on Discord
AccessViolation_
2025-02-27 09:36:25
I don't think ads can be based off your discord messages. maybe you do things related to your interests on other websites which you then both discuss on discord and start seeing ads for
2025-02-27 09:37:23
I suppose it's possible your mobile keyboard app uses the things you type for target ads. afaik discord doesn't sell anything to advertisers
2025-02-27 09:37:36
yet
CrushedAsian255
AccessViolation_ "too much belly fat in your 50's? put this in your shoes" glad to see ads are still as deranged as I remember
2025-02-28 08:26:26
Sounds like a 5 minute crafts video
Jabster28
I tend to get a lot about recent topics I was discussing on Discord
2025-02-28 09:54:24
keyboards (supposedly) don't track you, it's just that google doesn't need much to get a pretty good idea of what you're into
2025-02-28 09:55:03
you're also more likely to realise "oh this ad i saw relates to this conversation i had" than to say "oh this ad i saw doesn't have anything to do with this conversation i had"
2025-02-28 09:55:17
-# off topic sorry
jonnyawsom3
2025-02-28 10:04:28
It's generally in voice channels and about completely unrelated topics. Like I started getting ads for hydraulic actuators and concrete vibrators after talking to a friend about their engineering studies
AccessViolation_
2025-02-28 10:36:37
that sounds like confirmation bias like jabster said. in general the phenomenon that ads appear personalized based on information they shouldn't have access to is a combination of cognitive biases and the fact that ads are just really good at being relevant to your situation based on the information they *do* have access to. specifically, the idea that your phone is always listening to you and basing ads off of what you say is a commonly believed variant of this and has been refuted plenty
CrushedAsian255
2025-02-28 10:37:13
I have started getting defence force (specifically air force) ads lately
AccessViolation_
2025-02-28 10:38:04
of course there are many intrusive data collection practices that google and other advertising companies do employ, but at least for google, listening to an always-on microphone on android phones isn't one of them
CrushedAsian255
2025-02-28 10:39:08
also always-on microphone spying would be easily noticed as it would probably kill your battery (and data cap)
2025-02-28 10:39:31
Either the audio is being sent over to the server which would use a ton of data, or its being processed on device which would use lots of energy
AccessViolation_
2025-02-28 10:40:19
yeah, they do do some variant of this for the 'hotword detection' which is always listening and waiting for you to say "hey google" but I believe that's even hardware accelerated, at least on some phones
2025-02-28 10:41:33
pixel phones also have (or had?) that shazam-like feature where the mic is always listening for songs around you and it'll use on-device processing to show you which song is playing
RaveSteel
CrushedAsian255 also always-on microphone spying would be easily noticed as it would probably kill your battery (and data cap)
2025-02-28 10:42:29
Not necessarily, the data wouldn't need to be sent continuously and some codecs, like OPUS, are still quite usable even under 10kbit/s. So if 128Kbit/s are 1MB/minute, then 10Kbit/s are 12 minutes/MB. Not, that I believe in constant aural supervision, but it is technically feasible
AccessViolation_
2025-02-28 10:43:51
but to be very clear, if you don't tune your android settings, android collects an *insane* amount of data on you - I don't want to downplay surveillance capitalism because it's actually *really bad*, i'm just saying that the methods by which people think data is collected aren't always accurate
CrushedAsian255
2025-02-28 10:45:15
its probably because: people know their phone is spying -> they talk about something and then get an ad about it (for whatever reason; location; chat app; microphone spying; whatever) -> they try to think how the phone would know
Quackdoc
CrushedAsian255 also always-on microphone spying would be easily noticed as it would probably kill your battery (and data cap)
2025-02-28 11:16:09
always on mic is cheap technically speaking and would have no effect on your data cap
2025-02-28 11:16:48
I can gurantee you if they wanted to track you, ISPs would be all for it and give exemptions
2025-02-28 11:17:05
ISPs often give services exemptions for data all the time
2025-02-28 11:17:18
Isp in this case being the data broker
2025-02-28 11:20:12
It's important to keep in mind that Android devices are already constantly listening to you to detect keywords you talk and that still requires processing power. So it really would be pretty much nothing to detect when someone's talking. Transcode it into an opus with a very light preset. Keep in mind that computers aren't done either and that's what your phone is. You can easily set up a background and code that takes extremely little processes and just sits and waits until you get connection to Wi-Fi again.
Demiurge
2025-02-28 12:52:12
Last time isps wanted to give an exemption and give people free data for making facetime calls and stuff, people threw a shitfit and the fcc banned it
2025-02-28 12:52:20
Over getting free data
2025-02-28 12:53:00
Because it was an exemption that unfairly benefit some services (facetime) and not others
2025-02-28 12:53:50
Even though at the end of the day you're getting something for free that's strictly a benefit, people hated that
2025-02-28 12:55:00
Because it was theoretically unfair and maybe theoretically a gateway to even more unfair hypothetical scenarios
2025-02-28 12:55:25
That might have theoretically happened in a theoretical future
2025-02-28 12:56:51
Like being charged per-website, and other hypothetical and increasingly less plausible business models
_wb_
2025-02-28 03:13:09
this is an interesting discussion but maybe move it to <#806898911091753051> ?
HCrikki
2025-03-02 11:30:08
Microsoft apparently made the jpegxl wic codec *public* on the windows store. Publisher looks to be real microsoft corporation with the apps, codecs, office and gamepass apps. Powered by libjxl, for xbox, mobile, win, hololense, surface hub, lets win view and save jxl https://apps.microsoft.com/detail/9mzprth5c0tb?hl=en-US&gl=US
2025-03-02 11:35:42
From cursory look this appears to be the wic encoder+decoder hinted at before in registry. requires win11 (for now?)
2025-03-02 12:01:10
anyone installed to check ? store interface errored for me but i got it using winget (type in terminal *winget install 9MZPRTH5C0TB* )
dogelition
2025-03-02 12:02:10
just got out of bed to test it, sec
2025-03-02 12:08:29
right click -> set as background works, not sure what else does... can't seem to open images in photos
2025-03-02 12:09:02
okay i renamed a jxl to png and that works
2025-03-02 12:11:41
no jxl support in edge
HCrikki
2025-03-02 12:37:41
jxl thumbnails display in explorer for singe images and folders showing mini previews of their content, desktop, file open, setting wallpapers/slideshows. huge resolutions take a long time thumbnailing. imgs can be rotated left/right from explorer (jxl apparently not mimed in win as an image format so its not yet associable with or selectable in some apps/file picker like Photos)
0xC0000054
HCrikki From cursory look this appears to be the wic encoder+decoder hinted at before in registry. requires win11 (for now?)
2025-03-02 01:00:41
I doubt that Microsoft will be backporting that to Win10, as it goes out of support on October 14, 2025. But Paint.NET 5.1.5 (currently in [beta](<https://forums.getpaint.net/topic/133371-paintnet-515-beta-build-9191/>)) can provide JXL thumbnails in Windows Explorer independently of the Microsoft codec, Paint.NET 5.1.5 works on Win10 21H2 or newer.
HCrikki
2025-03-02 01:01:34
apps and codecs are supposed to be updatable separately from os and out of cycle. hopefully this reaches win10 as it doesnt seem to require any special win10-specific sauce
couleur
2025-03-02 01:02:13
Are there any script that accept a directory as input, and recursively encode jpeg files to jxl?
spider-mario
2025-03-02 01:04:15
```bash find "$directory" '(' -iname '*.jpg' -o -iname '*.jpeg' ')' -print0 | parallel -0 --dry-run cjxl '{}' '{.}.jxl' ```
couleur
2025-03-02 01:05:26
is `{.}` shorthand for filename without extension?
spider-mario
2025-03-02 01:05:30
yes
2025-03-02 01:05:33
in `parallel`
2025-03-02 01:06:25
ah, wait, missing parentheses
2025-03-02 01:06:50
without them, `print0` would bind to the second `-iname` and the first would effectively do nothing
2025-03-02 01:07:56
you can optionally pass `--progress --bar` to `parallel` if you’d like, well, a progress bar
0xC0000054
2025-03-02 01:08:04
I tested the Microsoft JXL codec before upgrading to Paint.NET 5.1.5 and rebooting, it worked with the few Images I tried. Hopefully the fact that Microsoft used libjxl means that they support CMYK, images with transparency, etc. I have no idea if they support Gray + Alpha, but they could just convert it to RGBA. Windows Imaging Component does not have a Gray + Alpha pixel format.
2025-03-02 01:09:50
Microsoft's AVIF codec is/was very limited. It couldn't even load the AVIF images with transparency that they provided to the official AVIF test suite.
couleur
2025-03-02 01:10:15
```ps1 Get-ChildItem -Recurse | Where-Object Extension -in ".jpeg", ".jpg" | ForEach-Object -Parralel {cjxl $_.FullName [io.path]::ChangeExtension($_.FullName, "jxl"} ```
2025-03-02 01:10:30
thats probably the powershell equivalent
2025-03-02 01:10:32
havent tested it
0xC0000054 I tested the Microsoft JXL codec before upgrading to Paint.NET 5.1.5 and rebooting, it worked with the few Images I tried. Hopefully the fact that Microsoft used libjxl means that they support CMYK, images with transparency, etc. I have no idea if they support Gray + Alpha, but they could just convert it to RGBA. Windows Imaging Component does not have a Gray + Alpha pixel format.
2025-03-02 01:11:26
wait that wic codec makes paint.net outright support it??
0xC0000054
couleur wait that wic codec makes paint.net outright support it??
2025-03-02 01:16:01
No, Paint.NET uses its own plugin for JXL and also uses the plugin to provide Windows Explorer thumbnails. So you don't need the Microsoft JXL and AVIF codecs for that feature. As I mentioned above, Microsoft's AVIF codec is broken in various ways.
couleur
2025-03-02 01:17:00
what makes the wic codec unsupported on windows 10
0xC0000054 No, Paint.NET uses its own plugin for JXL and also uses the plugin to provide Windows Explorer thumbnails. So you don't need the Microsoft JXL and AVIF codecs for that feature. As I mentioned above, Microsoft's AVIF codec is broken in various ways.
2025-03-02 01:17:42
[this](<https://github.com/0xC0000054/pdn-jpegxl>) ?
0xC0000054
2025-03-02 01:18:00
Note that Paint.NET providing the Windows Explorer thumbnails is not the same as the WIC codecs, it won't work in other apps that use WIC.
couleur [this](<https://github.com/0xC0000054/pdn-jpegxl>) ?
2025-03-02 01:19:00
Yes. As for why the WIC codec doesn't support Win10, you would have to ask Microsoft that.
2025-03-02 01:21:01
Also you need to be using Paint.NET 5.1.5 or later to get the Windows Explorer thumbnail support, it bundles the Jpeg XL plugin as part of the standard install.
couleur
0xC0000054 Also you need to be using Paint.NET 5.1.5 or later to get the Windows Explorer thumbnail support, it bundles the Jpeg XL plugin as part of the standard install.
2025-03-02 01:22:25
where can you get 5.1.5
0xC0000054
2025-03-02 01:22:47
https://forums.getpaint.net/topic/133371-paintnet-515-beta-build-9191/
2025-03-02 01:24:17
It is also available through the built-in updater if you opt-in to beta releases.
couleur
2025-03-02 01:24:39
thanks
HCrikki
2025-03-02 01:46:22
about *win10* support for the jxl wic codec just made public by ms, it seems to be locked behind activedomain/entra id ? not sure what to make of this but this suggests the support actually exists and store limitation is currently arbitrary
couleur
HCrikki about *win10* support for the jxl wic codec just made public by ms, it seems to be locked behind activedomain/entra id ? not sure what to make of this but this suggests the support actually exists and store limitation is currently arbitrary
2025-03-02 01:47:49
what is that
2025-03-02 01:50:25
https://store.rg-adguard.net/
2025-03-02 01:52:46
AppBundleManifest.xml has ```xml <b4:TargetDeviceFamily Name="Windows.Universal" MinVersion="10.0.26100.0" MaxVersionTested="10.0.26100.0"/> ```
2025-03-02 01:54:40
```xml <uap4:MediaCodec DisplayName="JpegXLImageExtension" Description="JPEG XL Image Extension" Category="videoDecoder" wincap3:ActivatableClassId="JXLDecoder.CJPEGXLWICDecoder" wincap3:Path="x64\msjpegxl_store.dll" wincap3:ProcessorArchitecture="x64"> ``` videoDecoder???
0xC0000054
couleur AppBundleManifest.xml has ```xml <b4:TargetDeviceFamily Name="Windows.Universal" MinVersion="10.0.26100.0" MaxVersionTested="10.0.26100.0"/> ```
2025-03-02 02:03:13
From [MSDN](<https://learn.microsoft.com/en-us/windows/release-health/windows11-release-information>), 10.0.26100.0 is Windows 11 24H2.
couleur
2025-03-02 02:05:24
you can find `msjpegxl_store.dll` in `\Microsoft.JpegXLImageExtension_8wekyb3d8bbwe.x64.appx\x64\`
2025-03-02 02:06:19
i suppose you can put that dll in System32 and register it with `regsvr32`
VcSaJen
2025-03-02 02:18:01
So it's a manual install? I hoped for it to be bundled with OS, like 7zip support.
couleur
VcSaJen So it's a manual install? I hoped for it to be bundled with OS, like 7zip support.
2025-03-02 02:20:11
OC?
VcSaJen
2025-03-02 02:20:49
typo
couleur
2025-03-02 02:31:06
well its easily installable on windows 11
2025-03-02 02:31:13
you might need to go through sone hoops for 10 though
jonnyawsom3
2025-03-02 02:46:37
This was a very good way to wake up after apparently falling asleep in the VC
2025-03-02 02:46:51
Now if only I could run Windows 11
couleur
Now if only I could run Windows 11
2025-03-02 02:51:26
what os are you running?
jonnyawsom3
2025-03-02 02:59:33
Usually Windows 10, but I use ImageToolbox on my Android phone pretty often
Mine18
HCrikki Microsoft apparently made the jpegxl wic codec *public* on the windows store. Publisher looks to be real microsoft corporation with the apps, codecs, office and gamepass apps. Powered by libjxl, for xbox, mobile, win, hololense, surface hub, lets win view and save jxl https://apps.microsoft.com/detail/9mzprth5c0tb?hl=en-US&gl=US
2025-03-02 03:02:31
yooo that's really cool
username
dogelition no jxl support in edge
2025-03-02 03:46:30
when/if this comes I wonder how complete it will be? https://discord.com/channels/794206087879852103/822105409312653333/1290990472289976371
2025-03-02 03:47:36
it's still kinda weird'ish that Chromium Edge is setup to use system codecs for stuff imo
2025-03-02 03:47:56
with Legacy Edge it made more sense
HCrikki
2025-03-02 04:02:55
updated adoption. zen browser had only basic jxl support (inherited from firefox nightly but enabled by default), now includes animation/transparency/color profile/progressive. for upcoming version based on *ff136* - for linux users, the flathub listing simplifies adoption https://github.com/zen-browser/desktop/pull/5634
jonnyawsom3
HCrikki Microsoft apparently made the jpegxl wic codec *public* on the windows store. Publisher looks to be real microsoft corporation with the apps, codecs, office and gamepass apps. Powered by libjxl, for xbox, mobile, win, hololense, surface hub, lets win view and save jxl https://apps.microsoft.com/detail/9mzprth5c0tb?hl=en-US&gl=US
2025-03-02 04:32:47
Made a Reddit post so people are aware outside of this server, quoting your messages about what works and Windows 10 support
pshufb
HCrikki Microsoft apparently made the jpegxl wic codec *public* on the windows store. Publisher looks to be real microsoft corporation with the apps, codecs, office and gamepass apps. Powered by libjxl, for xbox, mobile, win, hololense, surface hub, lets win view and save jxl https://apps.microsoft.com/detail/9mzprth5c0tb?hl=en-US&gl=US
2025-03-02 07:18:27
Have there been any public announcements about this? It seems strange to just drop it out of nowhere.
couleur
2025-03-02 07:27:25
https://github.com/deckerst/aves/issues/730
2025-03-02 07:27:30
keeping an eye on this 👁️
jonnyawsom3
pshufb Have there been any public announcements about this? It seems strange to just drop it out of nowhere.
2025-03-02 07:35:56
Apple did the same, and IIRC it's always been the case for Windows codecs. At most I'd expect a footnote in the next Windows update
pshufb
Apple did the same, and IIRC it's always been the case for Windows codecs. At most I'd expect a footnote in the next Windows update
2025-03-02 07:37:06
Apple included it in the iOS 18 keynote in the graphic showing the list of new Safari features. Here, Microsoft just dumped it. There was no event or post or anything where you could see that this was coming, *that I have seen*.
2025-03-02 07:37:18
I'll look out for the next update notes, ty.
jonnyawsom3
2025-03-02 07:38:05
I mean, there *was* what we thought to be a typo saying they allowed JXL files to be set as the background in Windows 11 months ago. But it was only in the file picker, no actual support
couleur
2025-03-02 07:47:20
what SHA-256 checksum are you guys getting for `msjpegxl_store.dll` for x86-64
Meow
HCrikki Microsoft apparently made the jpegxl wic codec *public* on the windows store. Publisher looks to be real microsoft corporation with the apps, codecs, office and gamepass apps. Powered by libjxl, for xbox, mobile, win, hololense, surface hub, lets win view and save jxl https://apps.microsoft.com/detail/9mzprth5c0tb?hl=en-US&gl=US
2025-03-03 01:51:02
"Lol who cares about the tiny market share of ... Windows!"
2025-03-03 02:05:23
This is real, JXL thumbnail
2025-03-03 02:06:41
But it appends the black background on the preview panel
Meow "Lol who cares about the tiny market share of ... Windows!"
2025-03-03 02:16:18
This is downvoted on Reddit🤔 Still some people don't know about the Google Chrome team
Demiurge
HCrikki anyone installed to check ? store interface errored for me but i got it using winget (type in terminal *winget install 9MZPRTH5C0TB* )
2025-03-03 08:40:17
Does it need to be upcase? Looks the same as the URL
Aerocatia
HCrikki Microsoft apparently made the jpegxl wic codec *public* on the windows store. Publisher looks to be real microsoft corporation with the apps, codecs, office and gamepass apps. Powered by libjxl, for xbox, mobile, win, hololense, surface hub, lets win view and save jxl https://apps.microsoft.com/detail/9mzprth5c0tb?hl=en-US&gl=US
2025-03-03 09:39:45
With this plugin some images fail to decode, while they were decoded correctly by jxl-winthumb.
2025-03-03 09:43:56
Seems like it might be based on image dimensions
0xC0000054
Aerocatia With this plugin some images fail to decode, while they were decoded correctly by jxl-winthumb.
2025-03-03 09:46:13
Unfortunately that isn't surprising to me, Microsoft's WIC plugins for AVIF and WEBP also fail to decode many images correctly.
Aerocatia
2025-03-03 10:00:43
Doing a quick by hand binary search on some particular image, 3673x2066 is the highest in can be to generate a thumbnail, 3674x2067+ fails.
Meow
2025-03-03 10:03:05
For me the decoder only works for thumbnails on File Explorer
Aerocatia
2025-03-03 10:03:32
Content/what made it matters, I made a new image that is 3674x2067 and it works....
2025-03-03 10:08:23
The plugin makes "Set as desktop background" work however you never want to use that as it converts it to original JPEG, I can see the jpegery.
2025-03-03 10:09:04
I believe it does that for any format that is not JEPG or PNG
monad
2025-03-03 10:09:23
are you sure it isn't filesize rather than resolution?
Aerocatia
monad are you sure it isn't filesize rather than resolution?
2025-03-03 10:10:30
maybe.. I did try dropping the effort way down low on the failing image and it still failed, but maybe I should look at that more.
2025-03-03 10:11:00
still, I tried lossless and lossy
2025-03-03 10:15:44
<@833420862334042152> Hey, did your PDN plugin ever expose distance directly, or did it always only expose quality?
0xC0000054
Aerocatia <@833420862334042152> Hey, did your PDN plugin ever expose distance directly, or did it always only expose quality?
2025-03-03 10:17:14
It always only exposed quality.
Aerocatia
2025-03-03 10:20:35
Would you consider exposing distance since it gives you better control? I'm not sure how to make that not confusing for people though who would want quality. Maybe I am wrong and this as changed, but I read a while ago quality 99 was meant to map visually to JPEG quality 99, with the difference being size. If you want better quality than JPEG you have to use distance directly.
2025-03-03 10:23:42
Anyway, if you increase the distance enough the failing image starts working, but I doubt it is file size because distance 0.2, half the size of the working lossless image 1px larger still fails
2025-03-03 10:31:00
it starts working at `-d 0.5001`
jonnyawsom3
2025-03-03 10:35:19
That's when gaborish is enabled....
0xC0000054
Aerocatia Would you consider exposing distance since it gives you better control? I'm not sure how to make that not confusing for people though who would want quality. Maybe I am wrong and this as changed, but I read a while ago quality 99 was meant to map visually to JPEG quality 99, with the difference being size. If you want better quality than JPEG you have to use distance directly.
2025-03-03 10:39:38
I will not be exposing the distance directly, because as you pointed out having both is confusing. The approach my bundled Paint.NET plugins take is to expose simple options that most users would need, and direct people to using other tools like `cwebp` or `cjxl` if they need more control over the compression options.
2025-03-03 10:47:28
The [quality mapping](<https://github.com/0xC0000054/pdn-jpegxl/blob/main/src/Interop/QualityToDistanceLookupTable.cs>) I use is based on the libjxl GIMP plugin.
Aerocatia
2025-03-03 10:48:25
Oh, what I said before likely does not apply then
2025-03-03 10:49:41
I found cjxl's --quality left a lot on the table in some use cases.
2025-03-03 10:54:09
cjxl does `0.1 + (100 - quality) * 0.09` ~~that would make 99 0.1 then.....~~ maybe it just got better compared to when I last used it with --quality. it was a long time ago.
2025-03-03 10:55:41
oh
2025-03-03 10:55:48
```c float JxlEncoderDistanceFromQuality(float quality) { return quality >= 100.0 ? 0.0 : quality >= 30 ? 0.1 + (100 - quality) * 0.09 : 53.0 / 3000.0 * quality * quality - 23.0 / 20.0 * quality + 25.0; } ```
2025-03-03 10:55:58
would help if I read the whole thing
0xC0000054
Aerocatia cjxl does `0.1 + (100 - quality) * 0.09` ~~that would make 99 0.1 then.....~~ maybe it just got better compared to when I last used it with --quality. it was a long time ago.
2025-03-03 11:00:32
I use the same calculation for quality values above 29, here is the GIMP code I based mine on: ```cpp float dist; if (quality >= 30) { dist = 0.1 + (100 - quality) * 0.09; } else { dist = 6.4 + pow(2.5, (30 - quality) / 5.0) / 6.25; } if (dist > 15) { distance = 15; } else { distance = dist; } ```
Aerocatia
2025-03-03 11:17:28
I see
CrushedAsian255
2025-03-03 11:17:37
Aerocatia
2025-03-03 11:18:05
yours is better because 100 does not remove 0.1 by mapping it to lossless
2025-03-03 11:18:22
the difference between 0.1 and 0.19 can be big in real images
2025-03-03 11:19:54
I noticed that anyway, maybe it is not common?
CrushedAsian255
2025-03-03 11:19:55
So your formula has 100 just be 0.1 and 101 is lossless?
Aerocatia
2025-03-03 11:20:25
The PDN plugin has you select lossless separately
2025-03-03 11:20:40
so 100 maps to 0.1 and there is no 101
Meow
Aerocatia The plugin makes "Set as desktop background" work however you never want to use that as it converts it to original JPEG, I can see the jpegery.
2025-03-03 11:39:20
It converts every accepted format to JPEG
RaveSteel
2025-03-03 11:44:19
And if you want to increase the quality of windows' background image conversion you'll have to adjust a registry key
dogelition
Meow It converts every accepted format to JPEG
2025-03-03 12:13:19
since some w11 update you can have hdr jxr wallpapers, those definitely stay as jxr
RaveSteel
2025-03-03 12:50:00
How did you verify this?
dogelition
2025-03-03 02:32:50
by looking at the files in `%appdata%\Microsoft\Windows\Themes\TranscodedWallpaper`
2025-03-03 02:33:20
there are some restrictions (file size? resolution?) where it will just convert it to sdr jpeg
2025-03-03 02:33:53
but if it fits within those, then you get an jxr file in there and an actual hdr wallpaper
2025-03-03 02:35:43
if you wanna try it, here are some files from ms https://aka.ms/hdr-backgrounds-wip
couleur
dogelition but if it fits within those, then you get an jxr file in there and an actual hdr wallpaper
2025-03-03 03:13:36
whats jxr, hdr jxl?
dogelition
2025-03-03 03:14:30
jpeg xr, older format initially designed by microsoft for windows under the name "hd photo", later standardized as a jpeg format
2025-03-03 03:15:24
hdr jxr files on windows are 16 bit linear half float scRGB (meaning the primaries are sRGB and `(1,1,1`) is 80 nits white, wider colors use negative values)
Meow
2025-03-03 03:33:29
JXR has a revival thanks to recent HDR promotion
spider-mario
2025-03-03 03:52:21
and perhaps thanks to some confusion with jxl
2025-03-03 03:52:34
(I mean, I’m mostly joking, but who knows)
Meow
2025-03-03 03:52:48
Yeah HDR variant of JXL
_wb_
2025-03-03 04:55:03
https://en.wikipedia.org/wiki/Perception_of_English_/r/_and_/l/_by_Japanese_speakers
2025-03-03 04:55:27
^ this might also not help
rickbrew
0xC0000054 No, Paint.NET uses its own plugin for JXL and also uses the plugin to provide Windows Explorer thumbnails. So you don't need the Microsoft JXL and AVIF codecs for that feature. As I mentioned above, Microsoft's AVIF codec is broken in various ways.
2025-03-03 05:04:08
worth noting, from what I can tell, if you install MSFT's JPEG XL codec then it will take over thumbnails for *.jxl files. This mostly affects images with alpha, their code seems to apply a bi-level threshold instead of providing a proper alpha channel
2025-03-03 05:04:38
I don't know if the order of installation (MSFT WIC JPEG XL codec vs. PDN 5.1.5+) affects things
2025-03-03 05:06:49
probably not though, because the first thing PDN's thumbnail provider does is to ask `CLSID_PhotoThumbnailProvider` if it can handle it. This ensures PDN doesn't potentially make thumbnail processing worse, or just change it in some way, for things like JPEG, PNG, etc.
Kremzli
2025-03-03 10:52:43
The windows jxl plugin only works for setting jxl files as background? File explorer doesn't thumbnail them for me, and the photos app doesn't open .jxl
HCrikki
2025-03-03 11:06:30
some components may need an update rolled for themselves, like to update their file picker, associations or descriptions of format as image-related. probably gonna see those rolling to insider branches of windows/apps first if not already
username
2025-03-03 11:09:41
was the same ever fully rolled out for WebP and AVIF?
HCrikki
2025-03-03 11:10:10
from description and the purpose of wic, we know its meant to cover decoding and encoding so thats at least the photos and paint apps. iinm wic allows to use those formats in ms office documents too, and should cover other browsing/import operations like when you connect a device with images
username
2025-03-03 11:11:18
Microsoft stopped properly following WIC in Windows 10
2025-03-03 11:11:30
it's just a mess now and I'm not even sure if they care
2025-03-03 11:12:00
afaik the last proper first party WIC codec was for JPEG XR back in Windows 8/8.1
HCrikki
2025-03-03 11:12:26
well its a big potential deployment so id suppose itd be good if the jxl devs were in contact with whoever handles this extension at ms
username
2025-03-03 11:14:30
I don't think it's a problem that can be solved within the space of the extension. it seems to be more fundamental issues with modern Windows and Microsoft itself
jonnyawsom3
username was the same ever fully rolled out for WebP and AVIF?
2025-03-03 11:57:50
WebP only got modern Photos support when the app was updated a year or two ago, before that the codec was installed but only did thumbnails
Demiurge
username was the same ever fully rolled out for WebP and AVIF?
2025-03-04 03:51:02
Yes
2025-03-04 03:51:42
Once they update the file associations database it should probably automatically prompt you to install the plugin in the future
2025-03-04 03:51:59
Whenever you click on an image file when you don't have the codec
2025-03-04 03:52:30
If you rename .jxl to .jpg it will open correctly
VcSaJen
HCrikki from description and the purpose of wic, we know its meant to cover decoding and encoding so thats at least the photos and paint apps. iinm wic allows to use those formats in ms office documents too, and should cover other browsing/import operations like when you connect a device with images
2025-03-04 03:55:07
I think their new metro Photos app ignores system codecs entirely, it uses own.
Meow
Demiurge If you rename .jxl to .jpg it will open correctly
2025-03-04 04:01:58
Tested it and Photos did open ".jpg" JXL
jonnyawsom3
2025-03-04 04:19:19
"jpg XL"
username
"jpg XL"
2025-03-04 04:23:28
https://esenthel.com/?id=feature_list#:~:text=JPG-,jpg%20xl,-WEBP
Demiurge
2025-03-04 05:24:59
It's such good news really.
2025-03-04 05:25:39
I expect the rough edges will be smoothed out in an upcoming os update so the os can recognize file extensions.
2025-03-04 05:26:18
I wish ".jjxl" and ".jxll" might catch on as file extensions too.
2025-03-04 05:27:23
Makes it easier to mark and identify the names of files which use lossless compression
2025-03-04 05:32:14
Which is desirable sometimes, despite what some here might be tempted to argue. Lossless files can be reversibly transformed back and forth to different formats as many times as you like, and that's useful to know
Meow
Demiurge I wish ".jjxl" and ".jxll" might catch on as file extensions too.
2025-03-04 06:27:09
Not that useful. APNG can be .apng too but nobody actually uses it
Demiurge
2025-03-04 06:44:04
There is no .agif so why do we need .apng
2025-03-04 06:44:53
But naming files .png and .jpg is convenient!
2025-03-04 06:45:26
It's annoying when you download a .png but inspect the data and find out it's jpeg data, and vice versa
VcSaJen
2025-03-04 06:46:49
Viewers really should always fail to display image when it's the wrong extension. I think IrfanView already shows a warning message and suggestion to rename.
Demiurge
2025-03-04 06:47:04
It's nice to know that one file is "stuck" that way and a different file can be infinitely and reversibly transformed as many times as you want and still go back again.
VcSaJen Viewers really should always fail to display image when it's the wrong extension. I think IrfanView already shows a warning message and suggestion to rename.
2025-03-04 06:48:08
What? But it's just a file name. I don't think apps should care, actually. I think it's stupid that windows cares. We aren't in DOS era anymore.
2025-03-04 06:48:56
Filenames are just for convenience.
Yay295
2025-03-04 07:16:44
The file extension is really just there to tell Windows which application it should use to open it.
couleur
2025-03-04 08:26:10
how's premiere pro, ae and photohop at supporting jxl?
VcSaJen
Demiurge What? But it's just a file name. I don't think apps should care, actually. I think it's stupid that windows cares. We aren't in DOS era anymore.
2025-03-04 08:40:42
They should be able to open extensionless files, yes. But wrong extension is wrong, too much abuse
Demiurge
2025-03-04 08:50:40
I dunno. I like to give my files any name I want, and I like it when programs aren't opinionated on how I name my files unless there is a very good and specific reason.
2025-03-04 08:51:25
For example I like naming jxl files with the .jjxl suffix or .jxll suffix
2025-03-04 08:52:32
For lossless jpeg or regular lossless
2025-03-04 08:53:35
Or maybe .jpxl or .jpegxl just for fun, longer, alternate suffix
2025-03-04 08:54:44
Maybe .j1xl for "JPEG1 -> XL" transcode or .jjxl for "jpeg -> jxl"
2025-03-04 08:56:22
Really I think people should use whatever creative name suffix they want. It's just a shame Windows is so primitive that it needs to keep track of a suffix database.
2025-03-04 08:59:06
If you wanna name it .jxls or .ajxl for an animation, or .jpegxl-lossless even, hey, whatever you like, whatever works best for your file system...
2025-03-04 09:00:42
People name JPEG1 files by many names. .jpg .jpeg .jfif and sometimes even stupid and goofy things like .jpg-large
Meow
2025-03-04 09:38:43
`jxlinfo` can display whether JXL is (possibly) lossless or lossy. Other softwares can implement this
RaveSteel
2025-03-04 10:11:59
I think the "(possibly) lossless" should not show if a JPEG bitstream for possible reconstruction is detected because that means it is lossy from source
Demiurge
RaveSteel I think the "(possibly) lossless" should not show if a JPEG bitstream for possible reconstruction is detected because that means it is lossy from source
2025-03-04 10:49:08
I used to think so too, but technically it's a form of lossless, reversible compression where you can get the original (jpeg file) back, haha
2025-03-04 10:50:00
It's a strange and unique case. But to make it fast and easy to visually identify them I like naming them .jjxl
2025-03-04 10:50:43
So I know I can easily turn the file back into its old jpeg1 form
2025-03-04 10:51:17
It's convenient to help me remember the file's compression is reversible
2025-03-04 10:53:56
To distinguish them from lossy .jxl files that I can never get back at the same size again if I try to replace them
2025-03-04 10:55:05
I might change my mind if libjxl gets a "no decode recompress" mode for all jpeg/jxl input
2025-03-04 10:55:57
Where you can reduce quality/precision of jpeg/jxl input WITHOUT fully decoding to pixels, and guarantee the file size will NEVER increase when using lossy compression on lossy input
Traneptora
Meow `jxlinfo` can display whether JXL is (possibly) lossless or lossy. Other softwares can implement this
2025-03-04 11:47:24
generally it's not possible to determine if the original encode was done losslessly
2025-03-04 11:47:45
mostly because lossy modular exists
2025-03-04 11:47:55
there's no real way to determine if the squeeze had quantized residuals
2025-03-04 11:48:08
I proposed adding an Annex N extension that included coding parameters
2025-03-04 11:48:25
but there were other priorities
_wb_
2025-03-04 12:06:07
there will never be a way to prevent people from doing the equivalent of saving a jpeg as a png: storing coding params as metadata will not give you a guarantee about the full workflow/lifecycle being lossless
2025-03-04 12:07:23
and if all you have is a camera JPEG then recompressing that is the most lossless thing you can do, it's certainly "more lossless" than converting it to an 8-bit PNG...
Traneptora
2025-03-04 12:21:33
That's not often what people want
2025-03-04 12:22:28
people often want to know if they can decompress a file and work with it, or if it's best to leave it as is
2025-03-04 12:22:53
for files encoded lossily you generally want to leave them as-is if possible
2025-03-04 12:23:27
but if it was encoded losslessly then you can at least convert to other lossless formats (and back) without worry
Demiurge
2025-03-04 12:25:37
Exactly. But if you want to include your encoder version and params that can probably be added to a comment box or maker tag or something.
Traneptora
2025-03-04 12:25:56
ohgod makernote
Demiurge
2025-03-04 12:26:32
Maybe a cjxl flag to optionally write one
2025-03-04 12:26:55
But most of the time that's not desired
2025-03-04 12:27:24
Unless someone wants to add extra metadata on purpose
monad
RaveSteel I think the "(possibly) lossless" should not show if a JPEG bitstream for possible reconstruction is detected because that means it is lossy from source
2025-03-04 12:50:13
IMO, it is most consistent for jxlinfo to inform about the JXL encoding process only. whatever happened in the history of the information before that point is impractical to judge in general.
Meow
2025-03-04 01:44:29
It just says how the file was encoded last time
2025-03-04 01:44:53
Better than nothing
Crite Spranberry
2025-03-04 09:47:42
I haven't sent new releases in a while. (Hope this is correct channel because r3dfox supports JXL) https://github.com/Eclipse-Community/r3dfox/releases/tag/v135.0.1
Meow
2025-03-05 03:46:27
Yeah ||JXL|| ".jpg" with the Alpha channel on Photos
2025-03-05 03:51:26
Safer SFW one
Demiurge
2025-03-05 05:11:20
Is alpha channel working?
Meow
Demiurge Is alpha channel working?
2025-03-05 07:06:02
Yes as the background in this window actually reflects the contents beneath
Demiurge
2025-03-05 07:07:04
I can't believe I'm saying this, but I am proud of Microsoft (and Apple)
Meow
2025-03-05 07:13:45
A black background would appear initially and it would be gone in several seconds
2025-03-05 07:14:30
It's presumed to be its thumbnail in the beginning
Demiurge
2025-03-05 07:16:54
the way the Photo's app work, it loads the stretched out thumbnail first while it's decoding the image
Meow
2025-03-05 07:21:13
And the JXL thumbnails on Windows are now always with a black background if there's an Alpha channel
Demiurge
2025-03-05 08:10:23
Is that normal for other alpha formats on windows too?
0xC0000054
Demiurge Is that normal for other alpha formats on windows too?
2025-03-05 08:18:37
No, it is not. Windows displays proper transparency for PNG, etc. rickbrew noted in a [reply](<https://discord.com/channels/794206087879852103/803574970180829194/1346166265114263706>) above that the Microsoft JXL decoder appears to be applying a bi-level threshold instead of providing a proper alpha channel.
2025-03-05 08:20:32
I don't have the Microsoft JXL codec installed, so I didn't test its behavior. But Paint.NET 5.1.5 renders the JXL thumbnails in Windows Explorer with the correct transparency.
Demiurge
2025-03-05 08:22:30
I didn't know pdn has a thumbnailer provider. That's neat
0xC0000054
Demiurge I didn't know pdn has a thumbnailer provider. That's neat
2025-03-05 08:31:12
Yeah. In addition to its native format (PDN), it handles AVIF, DDS, JXL, TGA, and WEBP. Of those 6 formats, all but PDN and TGA also have WIC codecs that are broken in various ways.
2025-03-05 08:33:31
The poor DDS support is particularly ironic, given that it is a format they created. For some reason, WIC's DDS codec can only handle the DirectX 9-era DXT formats (DXT1 - BC1, DXT3 - BC2, DXT5 - BC3).
Demiurge
2025-03-05 09:37:56
So the pdn thumbnailer does not have the issues the microsoft thumbnailer has?
2025-03-05 09:38:18
For those 4 codecs I mean
2025-03-05 09:38:56
Interesting, I didn't even know windows had a targa codec
0xC0000054
Demiurge Interesting, I didn't even know windows had a targa codec
2025-03-05 09:48:26
Windows does not have a TGA codec. And yes, the Paint.NET thumbnailer doesn't have the same issues as Microsoft's thumbnailer.
Demiurge
2025-03-05 10:57:51
Oh
username
2025-03-05 11:00:31
there's one that exists here (and also a fast VTF codec that's nice as well): https://www.fastpictureviewer.com/codecs/ although their optimized JPEG decoder fails at decoding a bunch of JPEGs so that sucks and also this is paid.
SEO-Master1337
2025-03-07 03:07:49
I do search engine optimization as a profession and only deal with images in that regard, but I am unbelievably upset about Google killing/not supporting JPEG-XL. Besides the interop and devs posting on forums, has there ever been an actual social movement for this kind of change?
2025-03-07 03:09:55
I'm thinking that maybe the Chrome team hasn't had the right....motivators pushing them towards making this change. Performance, image optimization, and quality is probably the biggest issue most websites face these days. I'm thinking that if the image devs and the SEOs power up, we might be able to put some real pressure. So I've been brainstorming
2025-03-07 03:13:14
Having the SEO aspect provides the argument that this is more than having nice, easy images to work with - this can directly affect a businesses bottom line in terms of losing leads to slow website, technical debt of constantly having to compress images, save multiple copies for fallback, and the reliance on CDNs to meet bare minimum performance. This isn't my expertise, so I'd love to hear your thoughts on if maybe we've been pushing at it from the wrong angle.