|
yoochan
|
2024-09-04 11:19:13
|
I see it as a recurring gag, a bit like gif vs gif
|
|
|
lonjil
|
2024-09-04 11:19:18
|
you know what looks coolest?
|
|
2024-09-04 11:19:19
|
JXL
|
|
|
Demiurge
|
|
yoochan
And even if it shouldn't be a practical limit for web images, wuffs can not handle buffers bigger than max uint16 pixels
|
|
2024-09-04 11:21:17
|
So, no images wider/taller than 65,536 pixels? That's kinda tiny!!
|
|
|
CrushedAsian255
|
|
Demiurge
So, no images wider/taller than 65,536 pixels? That's kinda tiny!!
|
|
2024-09-04 11:23:06
|
what about my 5 GPx images? 😦
|
|
|
Foxtrot
|
2024-09-04 11:57:02
|
Jpeg xl sounds like the image will be larger than regular jpeg. So I prefer JXL
|
|
2024-09-04 11:58:11
|
I mean, when will user see next to each other jpeg xl and jpeg xs they will think xs will be smaller 😄
|
|
|
CrushedAsian255
|
2024-09-04 12:46:03
|
are my jpeg xl images being sen to google?
|
|
|
username
|
2024-09-04 12:48:11
|
the comments section on Phoronix is commonly unhinged
|
|
|
lonjil
|
2024-09-04 12:48:12
|
I have never seen him reply to people pointing out his mistakes.
|
|
|
yoochan
|
2024-09-04 01:31:37
|
too much work ?
|
|
|
Foxtrot
|
2024-09-04 02:08:04
|
making youtube video = money
reply to people pointing out mistakes = not money 😄
|
|
|
Meow
|
2024-09-04 03:01:09
|
That typeface almost made me vomit honestly
|
|
2024-09-04 03:02:56
|
The reliability of contents using Comic Sans-like typefaces is always questionable
|
|
|
VcSaJen
|
|
username
honestly I think "JPEG-XL" looks cooler then "JPEG XL" so I don't mind too much, also it seems to be something that some people have done in the past when talking prior JPEG standards as well so this isn't exclusive to JPEG XL
|
|
2024-09-04 06:18:57
|
"JPEG-XL" is actually searchable. Trying to search JPEG XL or JXL results in "too few symbols" error in most sites
|
|
|
|
afed
|
2024-09-04 06:19:37
|
"JPEG XL"
|
|
|
VcSaJen
|
2024-09-04 06:19:57
|
Does not work in some sites, sadly
|
|
|
_wb_
|
2024-09-04 06:22:38
|
https://letmegooglethat.com/?q=JPEG+XL
|
|
|
Quackdoc
|
2024-09-04 06:28:45
|
it's not bad for search engines, but discord's god awful search still messes it up a lot
|
|
|
_wb_
|
2024-09-04 06:28:49
|
If a search engine can manage to produce results for "hot dog" that are not all about sweating pitbulls, it should also be able to return sensible results for "jpeg xl".
|
|
|
VcSaJen
|
2024-09-04 06:31:09
|
You overestimate most site engines. Many don't even use Elastic(Open)Search/Lucene, just plain SQL.
|
|
|
Quackdoc
|
2024-09-04 06:33:04
|
every search engine should support three modes of operation, Grep, Fuzzy, and whatever discord does, I don't know why on earth people want that, but apparently some do
|
|
|
yoochan
|
|
_wb_
If a search engine can manage to produce results for "hot dog" that are not all about sweating pitbulls, it should also be able to return sensible results for "jpeg xl".
|
|
2024-09-04 06:33:16
|
there was a campaign at the time for the lycos search engine (Lycos !) which put side by side Enceinte (speaker) and Enceinte (pregnant) to brag about their context aware search engine
|
|
|
|
afed
|
2024-09-04 06:36:23
|
yeah, for discord even "jpegli" is unsearchable, it will be anything that contains jpeg or something even worse
|
|
|
KKT
|
2024-09-05 03:02:13
|
OK, some decent news! ATP read the follow-up email I sent in to them. Episode 603, 16:10
https://atp.fm
|
|
|
jonnyawsom3
|
2024-09-05 03:19:35
|
A pretty good followup, wasn't expecting effort levels to be mentioned but they seemed to like it. Might've been worth getting some more ideas here before sending the email, but still good to hear them talk about it nonetheless
|
|
|
KKT
|
2024-09-05 03:32:10
|
So it started out VERY long and it was suggested I trim it waayyy down, which I did. I ran it by <@794205442175402004> quickly. Unfortunately they didn't read it all (not surprisingly). I knew John would be into the tech details of cjxl, so I tried to throw in as many of those as I could.
|
|
|
jonnyawsom3
|
2024-09-05 05:00:59
|
Ahh right, fair
|
|
|
daniilmaks
|
|
Of all the images to see in an article, I didn't expect that one
|
|
2024-09-05 06:12:19
|
huh, trying to generate this image on browser throws `R is undefined` error on firefox
|
|
2024-09-05 06:13:58
|
and then on chromium it throws `Cannot read properties of undefined (reading 'byteLength')`
|
|
|
Meow
|
2024-09-05 07:07:29
|
JPEG-XL is comparable to Iphone and MacOS
|
|
2024-09-05 07:08:01
|
Seeing them always makes me disgusted
|
|
|
spider-mario
|
2024-09-05 07:15:20
|
what about “Archlinux”?
|
|
|
|
afed
|
2024-09-05 07:18:12
|
X.264/X.265
|
|
|
spider-mario
|
2024-09-05 07:23:06
|
xHTML
|
|
|
jonnyawsom3
|
2024-09-05 07:25:33
|
x.com
|
|
|
Meow
|
2024-09-05 07:32:03
|
Even Apple is wrong by spelling USB 4
|
|
2024-09-05 07:33:49
|
If the trend can't be stopped, we will see JPGX, jpegXL, etc.
|
|
|
_wb_
|
2024-09-05 07:45:55
|
Jpeg_Xl
|
|
|
jonnyawsom3
|
|
_wb_
|
2024-09-05 07:47:44
|
J.P.E.G. extra-large
|
|
2024-09-05 07:51:16
|
Actually to get really pedantic, the correct spelling is "JPEG XL"
|
|
2024-09-05 07:51:38
|
That's a non-breaking space between the JPEG and the XL, not a regular space
|
|
|
spider-mario
|
2024-09-05 07:51:49
|
I’d just like to interject for a moment…
|
|
2024-09-05 07:52:57
|
(Stallman’s response to the text is almost funnier than the original https://www.gnu.org/gnu/incorrect-quotation.en.html)
|
|
|
_wb_
|
2024-09-05 07:53:17
|
JPEG XL JPEG XL JPEG XL JPEG XL JPEG XL JPEG XL JPEG XL JPEG XL JPEG XL JPEG XL JPEG XL JPEG XL JPEG XL JPEG XL JPEG XL JPEG XL JPEG XL JPEG XL JPEG XL JPEG XL JPEG XL JPEG XL JPEG XL JPEG XL JPEG XL JPEG XL JPEG XL JPEG XL JPEG XL JPEG XL JPEG XL JPEG XL JPEG XL JPEG XL JPEG XL JPEG XL JPEG XL JPEG XL JPEG XL JPEG XL JPEG XL JPEG XL see how it never breaks the line at the wrong spot JPEG XL JPEG XL JPEG XL JPEG XL JPEG XL JPEG XL JPEG XL JPEG XL JPEG XL JPEG XL JPEG XL JPEG XL JPEG XL JPEG XL JPEG XL JPEG XL JPEG XL
|
|
|
yoochan
|
2024-09-05 07:56:14
|
lol, a failed test for me as it cutted nonetheless between *it* and *never*
|
|
|
spider-mario
|
2024-09-05 07:56:30
|
you can play around with resizing the window
|
|
|
yoochan
|
2024-09-05 07:57:02
|
I did, but the defaut rendering was funny
|
|
|
_wb_
|
2024-09-05 08:00:08
|
Having the linebreak between JPEG and XL is kind of awkward, and I suspect one of the reasons some people like to write "JPEG-XL" is that it is easier to type (or to remember how to type) a hyphen than a non-breaking-space.
|
|
|
jonnyawsom3
|
2024-09-05 08:01:10
|
Almost certainly, I wasn't even aware non-breaking spaces existed
|
|
|
yoochan
|
2024-09-05 08:01:38
|
really ? but what to you put between text and colon : or text and exclamation mark !? or text and question mark ?!
|
|
|
_wb_
|
2024-09-05 08:05:43
|
In English there is no space before exclamation/question mark, so it's not an issue. In French there is, but I expect most layout engines would be smart enough not to do the linebreak just before the punctuation, even if a regular space is being used?
|
|
|
spider-mario
|
2024-09-05 08:07:01
|
Facebook’s layout engine is most definitely not smart
|
|
2024-09-05 08:07:10
|
it even goes as far as replacing my non-breaking spaces with normal ones
|
|
2024-09-05 08:07:10
|
I hate it
|
|
|
yoochan
|
2024-09-05 08:07:12
|
Word/Libreoffice just auto replace the space with a non breaking space while you type IIRC, I don't even know the shortcut to insert one with a fr keyboard layout 😄 (ubuntu one)
|
|
|
lonjil
|
2024-09-05 08:07:59
|
whydoweevenbothertohavespaces?
|
|
|
spider-mario
|
2024-09-05 08:08:09
|
in bépo, it’s Shift+Space for a non-breaking space and Shift+Alt Gr+Space for a thin non-breaking space
|
|
|
yoochan
|
2024-09-05 08:08:15
|
bépo !
|
|
2024-09-05 08:08:18
|
indeed
|
|
|
spider-mario
|
2024-09-05 08:08:22
|
(you’re actually supposed to use the thin kind before punctuation)
|
|
|
yoochan
|
|
lonjil
whydoweevenbothertohavespaces?
|
|
2024-09-05 08:08:48
|
japanesestyle
|
|
|
spider-mario
|
2024-09-05 08:08:52
|
well, not quite “before”, but rather “inside”
|
|
2024-09-05 08:09:18
|
which, for colons, semi-colons and exclamation and question marks, is before
|
|
|
lonjil
|
2024-09-05 08:09:27
|
reminds me of the SI units library for LaTeX, which has the amazing feature of putting the correct amount of space between the number and the unit
|
|
|
spider-mario
|
2024-09-05 08:09:43
|
yes, I love that package
|
|
2024-09-05 08:09:56
|
also the correct dash for ranges
|
|
|
yoochan
|
2024-09-05 08:10:20
|
I love typography for its infinite possible amount of pedantism 😄 (without offending anybody)
|
|
|
spider-mario
|
|
yoochan
I love typography for its infinite possible amount of pedantism 😄 (without offending anybody)
|
|
2024-09-05 08:10:45
|
https://thejenkinscomic.wordpress.com/2024/05/02/pedants-club/
|
|
|
lonjil
|
2024-09-05 08:11:08
|
TeX is probably the only place in the whole universe that still puts more space after sentences than between words
|
|
|
spider-mario
|
2024-09-05 08:11:27
|
nah, some people put two spaces after full stops
|
|
|
_wb_
|
|
lonjil
whydoweevenbothertohavespaces?
|
|
2024-09-05 08:19:03
|
You sovnd like an ancient Greek or Roman.
|
|
|
lonjil
|
2024-09-05 08:19:33
|
😄
|
|
2024-09-05 08:19:51
|
let's bring back roman cursive and using wax tablets for note taking
|
|
|
_wb_
|
2024-09-05 08:20:47
|
Breaking news: Apple announces the iWax!
|
|
2024-09-05 08:22:16
|
It may look a bit old-fashioned, but it's gonna be a very hip thing to carry around. And the battery life is amazing!
|
|
|
lonjil
|
2024-09-05 08:23:09
|
warning: users may experience issues in warmer climates
|
|
|
spider-mario
|
|
_wb_
You sovnd like an ancient Greek or Roman.
|
|
2024-09-05 08:25:06
|
or a Fortran programmer
|
|
2024-09-05 08:25:51
|
(in fixed form, spaces are optional)
|
|
|
_wb_
|
2024-09-05 08:25:52
|
Of course it comes with a very expensive iStylus with a gold-plated tip, and an iScratcher made of precision-milled aluminum that you can use to wipe the wax to reset it to a perfectly clean state.
|
|
|
spider-mario
|
2024-09-05 08:26:02
|
```fortran
programbcch
implicitnone
externalcch
reala,b,tol,cch
integeribis,nmax
read*,a,b,tol,nmax
callbis(a,b,cch,tol,nmax,ibis)
print*,a,b,cch(a),cch(b),ibis
endprogrambcch
```
|
|
2024-09-05 08:26:21
|
well, almost, you do need the initial 6 spaces so that the code starts on the 7th column
|
|
|
lonjil
|
|
spider-mario
|
2024-09-05 08:28:16
|
I like how it causes Discord’s syntax highlighting to only recognise “print”
|
|
|
drkt
|
|
_wb_
Having the linebreak between JPEG and XL is kind of awkward, and I suspect one of the reasons some people like to write "JPEG-XL" is that it is easier to type (or to remember how to type) a hyphen than a non-breaking-space.
|
|
2024-09-05 10:02:00
|
JPEG XL
|
|
|
WAZAAAAA
|
2024-09-06 02:26:30
|
just shorten it, JPG-XL <:megapog:816773962884972565>
|
|
|
CrushedAsian255
|
|
spider-mario
which, for colons, semi-colons and exclamation and question marks, is before
|
|
2024-09-06 02:31:32
|
is this for one of those languages that puts question marks around the whole sentence?
|
|
|
_wb_
Of course it comes with a very expensive iStylus with a gold-plated tip, and an iScratcher made of precision-milled aluminum that you can use to wipe the wax to reset it to a perfectly clean state.
|
|
2024-09-06 02:32:16
|
planned obsolescence: you can only use it so much before you reach a metal block in the middle that could have easily not existed
|
|
2024-09-06 02:44:33
|
x-post from AV1 for Dummies
https://www.macitynet.it/jpeg-xl-jxl/
|
|
|
jonnyawsom3
|
2024-09-06 03:22:07
|
It's actually a pretty comprehensive explanation, I'm impressed
|
|
|
CrushedAsian255
|
2024-09-06 03:50:25
|
apparently fab wrote it
|
|
2024-09-06 03:50:41
|
i would read it but firefox's internal translator sucks
|
|
|
Meow
|
|
lonjil
whydoweevenbothertohavespaces?
|
|
2024-09-06 03:57:25
|
In early days there's no space in article titles on Wikipedia
|
|
2024-09-06 03:57:49
|
Such as WhatsTheRelationshipBetweenWikipediaAndNupedia
|
|
|
CrushedAsian255
|
|
Meow
Such as WhatsTheRelationshipBetweenWikipediaAndNupedia
|
|
2024-09-06 03:58:21
|
ListofListsofLists
|
|
2024-09-06 03:59:13
|
imagine this article https://en.wikipedia.org/wiki/Cneoridium_dumosum_(Nuttall)_Hooker_F._Collected_March_26,_1960,_at_an_Elevation_of_about_1450_Meters_on_Cerro_Quemaz%C3%B3n,_15_Miles_South_of_Bah%C3%ADa_de_Los_Angeles,_Baja_California,_M%C3%A9xico,_Apparently_for_a_Southeastward_Range_Extension_of_Some_140_Miles
|
|
|
Meow
|
2024-09-06 04:00:54
|
The old wiki software is the easiest to add JXL support however
|
|
|
CrushedAsian255
|
2024-09-06 04:03:09
|
MediaWiki JXL?
|
|
|
Meow
|
2024-09-06 04:03:29
|
No, UseModWiki
|
|
2024-09-06 04:03:59
|
Just add jxl in one line and it's done
|
|
|
CrushedAsian255
|
2024-09-06 04:04:21
|
Is it basically just registering it as an image format?
|
|
|
Meow
|
2024-09-06 04:05:14
|
As there's zero process on handling images like most of other softwares
|
|
|
CrushedAsian255
|
2024-09-06 04:05:47
|
So it’s literally as simple as adding a new MIME type to EngineX?
|
|
|
Meow
|
2024-09-06 04:07:00
|
$ImageExtensions = "(gif|jpg|png|bmp|jpeg)";
|
|
2024-09-06 04:11:10
|
Also for MediaWiki https://phabricator.wikimedia.org/T270855
|
|
|
TheBigBadBoy - 𝙸𝚛
|
2024-09-06 06:15:41
|
JPEG-XL
JPEGーXL
JPEG—XL
JPEG⸺XL
JPEG⸻XL
All one symbol dashes <:YEP:808828808127971399>
3rd one actually looks good
|
|
|
Demiurge
|
2024-09-06 10:47:50
|
I wasn't aware of the existence of a non-breaking space
|
|
2024-09-06 10:47:55
|
until now
|
|
2024-09-06 10:48:30
|
Wonder if the next codec will be called JPEG XXL
|
|
2024-09-06 10:48:39
|
and then JPEG XXXL
|
|
|
CrushedAsian255
|
2024-09-06 10:49:17
|
sony and philips may hear about JPEG-XL and make their own slightly different format called JPEG+XL
|
|
|
Demiurge
|
2024-09-06 10:49:20
|
JPEG Super Extra Extremely Bigger Edition
|
|
|
CrushedAsian255
|
|
Demiurge
JPEG Super Extra Extremely Bigger Edition
|
|
2024-09-06 10:49:34
|
maybe JPEG 1 should be the one named JPEG XL
|
|
2024-09-06 10:50:05
|
and the format this server is focused on should be JPEG XS
and what is currently JPEG XS , im not sure what we could call that, as it's not really a distribution format
|
|
|
Oleksii Matiash
|
|
Demiurge
I wasn't aware of the existence of a non-breaking space
|
|
2024-09-06 10:50:05
|
Often used in wikipedia
|
|
|
CrushedAsian255
|
|
TheBigBadBoy - 𝙸𝚛
JPEG-XL
JPEGーXL
JPEG—XL
JPEG⸺XL
JPEG⸻XL
All one symbol dashes <:YEP:808828808127971399>
3rd one actually looks good
|
|
2024-09-06 10:50:49
|
em dash?
|
|
|
Demiurge
|
|
TheBigBadBoy - 𝙸𝚛
JPEG-XL
JPEGーXL
JPEG—XL
JPEG⸺XL
JPEG⸻XL
All one symbol dashes <:YEP:808828808127971399>
3rd one actually looks good
|
|
2024-09-06 11:01:47
|
i dunno, I like JPEG extremely-long XL
|
|
|
TheBigBadBoy - 𝙸𝚛
|
|
CrushedAsian255
em dash?
|
|
2024-09-06 11:05:54
|
longest is "three em dash" yeah
<https://en.wikipedia.org/wiki/Dash#Unicode>
|
|
|
spider-mario
|
|
CrushedAsian255
sony and philips may hear about JPEG-XL and make their own slightly different format called JPEG+XL
|
|
2024-09-06 01:15:57
|
and then the FSF will create JPEG/XL
|
|
2024-09-06 01:16:22
|
a JPEG system with XL kernel
|
|
|
CrushedAsian255
|
2024-09-06 01:18:12
|
Apple's gonna call it "JPEG ProXL" or something stupid
|
|
|
_wb_
|
2024-09-06 01:58:56
|
on the Google Pixel 9 it will be called it "Ultra XL" and on the Samsung Galaxy S25 it will be "Super XL"
|
|
|
CrushedAsian255
|
2024-09-06 02:17:48
|
Nintendo will probably write XL in such tiny font that it looks like a slight revision over the original JPEG
|
|
|
jonnyawsom3
|
2024-09-06 02:27:34
|
My phone already has `JPG-L` for a jpeg at the actual sensor resolution, I was very dissapointed when I tried it after a firmware update and imagined an X in there too :P
|
|
|
novomesk
|
2024-09-06 02:43:07
|
an article in German. Mentions XnConvert and IrfanView
https://www.chip.de/news/Das-Ende-von-JPG-Wer-den-Bilder-Koenig-vom-Thron-stossen-koennte_185424775.html
|
|
|
𐑛𐑦𐑕𐑣𐑸𐑥𐑩𐑯𐑦 | 最不調和の伝播者 | 異議の元素
|
|
CrushedAsian255
Apple's gonna call it "JPEG ProXL" or something stupid
|
|
2024-09-06 04:18:23
|
iJPEG XL
|
|
|
Oleksii Matiash
|
|
novomesk
an article in German. Mentions XnConvert and IrfanView
https://www.chip.de/news/Das-Ende-von-JPG-Wer-den-Bilder-Koenig-vom-Thron-stossen-koennte_185424775.html
|
|
2024-09-06 04:39:06
|
IrfanView plugin is buggy and limited, unfortunately
|
|
|
Meow
|
2024-09-07 09:41:38
|
Reminded me the chaos between DVD-R/RW and DVD+R/RW
|
|
|
Traneptora
|
2024-09-08 04:14:48
|
(that was indeed the joke)
|
|
|
Meow
|
2024-09-08 04:28:01
|
The fourth result of "jpeg xl" on DuckDuckGo is JPEG XL, the New Image Format Nobody Wanted or Needed
|
|
|
CrushedAsian255
|
2024-09-08 04:28:56
|
For me it’s entry 9
|
|
2024-09-08 04:30:33
|
> nobody needed or wanted
Meta, Intel, Apple, Shopify, The Guardian, Cloudinary, 3/4 of Google
|
|
|
Meow
|
|
spider-mario
|
2024-09-08 04:30:54
|
it’s not even among the first ~70 results for me
|
|
|
CrushedAsian255
|
|
Meow
|
|
2024-09-08 04:31:01
|
What region are you set to?
|
|
|
Meow
|
2024-09-08 04:31:22
|
I've disabled the region option
|
|
|
CrushedAsian255
|
2024-09-08 04:31:39
|
I turned mine on and it’s now 16th
|
|
|
Meow
|
2024-09-08 04:32:16
|
Safe search disabled too
|
|
|
CrushedAsian255
|
2024-09-08 04:32:40
|
Never use it personally
|
|
|
spider-mario
|
|
CrushedAsian255
What region are you set to?
|
|
2024-09-08 04:33:02
|
Switzerland, French language
|
|
|
Meow
|
2024-09-08 04:33:21
|
Wow that reaches top 3 when safe search is set to moderate
|
|
|
spider-mario
|
2024-09-08 04:33:46
|
I’m curious as to what result was downgraded due to safe search
|
|
|
Meow
|
2024-09-08 04:34:43
|
caniuse
|
|
|
CrushedAsian255
|
2024-09-08 04:35:18
|
Ah yes, CanIUse, the most objectionable site ever
|
|
|
Meow
|
2024-09-08 04:35:41
|
Sometimes results may be slightly different after refreshing
|
|
2024-09-09 04:18:13
|
The following post https://x.com/stalman/status/1832957792187261415
|
|
|
Demiurge
|
2024-09-09 11:57:17
|
Hmm... The "Signature Dish" comparison between JPEG and JXL, when you select "compare size" and it's normalized to SSIMU2=50, low quality... the JXL version is clearly visually inferior to the JPEG in terms of visual acuity and retention of details, despite the matching SSIMU2 score.
|
|
2024-09-09 11:58:36
|
Someone ought to look into that as that's an obvious fault with ssimu2. Maybe a better comparison image can be chosen too, in order to better illustrate the strengths of the libjxl encoder for particular types of images.
|
|
2024-09-09 12:00:11
|
The press website for jxl/libjxl should be as positive as possible and easy for journalists to understand the benefits even when the journalists lack the training and discipline to understand the complicated nuances of lossy codec comparison
|
|
|
CrushedAsian255
|
2024-09-09 12:00:26
|
This is probably another instance where JPEG XL is overblurring high-distance images
|
|
|
Demiurge
|
2024-09-09 12:01:55
|
It's more of an issue with ssimu2 failing to recognize that the JXL image is extremely blurred and nowhere close to matching the same level of detail and fidelity as the JPEG.
|
|
2024-09-09 12:03:20
|
This is tricky for algorithms to recognize because it's hard for a computer to distinguish between distortion that interferes with human perception and changes the nature of the image, and uncorrelated high-frequency noise that's easy for a human brain to filter out and see through.
|
|
2024-09-09 12:06:57
|
The JPEG probably contains more absolute, objective "noise" or "distortion" compared to the original, than the JXL version does... The difference is that in the JPEG the noise is almost invisible to human eyes and brain because it's mostly-uncorrelated HF noise, whereas the JXL blurs and pixellates the image which is extremely noticeable to the human brain and changes the image in a fundamental way.
|
|
2024-09-09 12:08:38
|
This, in my opinion, is the most painful Achilles of libjxl and ssimu2 right now
|
|
|
CrushedAsian255
|
2024-09-09 12:10:44
|
agreed
|
|
|
Demiurge
|
2024-09-09 12:13:39
|
Scrolling down further, to the AVIF comparison, the same failure can be observed, where the AVIF image consistently has sharper defined features and more texture compared to the JXL counterpart at the same SSIMU2 score.
|
|
|
CrushedAsian255
|
2024-09-09 12:14:16
|
if this is about https://jpegxl.info, we should probably talk about this in <#1256302117379903498>
|
|
|
Demiurge
|
2024-09-09 12:14:49
|
I realize this might not be the most well received comment, in a server about JXL, but I am only bringing it up because I'm also a fan of JXL and I hope it succeeds and becomes the new universal image interchange.
|
|
|
jonnyawsom3
|
2024-09-09 12:15:09
|
Yeah, we talked about it before there that anything above e4 blurs it to oblivion
|
|
|
Demiurge
|
2024-09-09 12:15:28
|
Yeah, <#1256302117379903498> could be better. But it's mostly a problem with the ssimu2 scoring software, actually.
|
|
|
CrushedAsian255
|
|
Demiurge
|
2024-09-09 12:17:47
|
Since the image comparisons are normalized with it, and it consistently fails in most of these comparisons to give a reasonable estimate of what is considered "equal quality"
|
|
2024-09-09 12:19:09
|
Maybe it would be better to hand-select some images where the difference and the advantages of libjxl would be most obvious at a glance to a layman or member of the press.
|
|
2024-09-09 12:19:59
|
I don't want to get too off topic here so that's all that I'll say in this channel. I hope my feedback manages to be constructive.
|
|
2024-09-09 12:23:12
|
On the topic of <#822105409312653333> though, I will say this: I think more frequent releases, with more emphasis in the release notes on quality improvements, with before-and-after comparisons, would do wonders for positive press coverage and awareness of libjxl, since news outlets often report on whatever interesting-looking highlights they see in the release notes.
|
|
2024-09-09 12:47:31
|
It's like the classic case where applying a small amount of uniform noise throughout an image is considered by the algorithm to be worse than changing a photo of a dog into a photo of a cat...
In audio codecs there is a well established theory and practice of psychoacoustic "masking" and the same theory also works with images as well... but I don't think it's really applied and exploited to the same extent as it is in audio. Visual metrics don't seem to be capable of recognizing when uncorrelated noise is masked by the original input signal and thereby rendered imperceptible.
|
|
|
_wb_
|
|
Demiurge
Hmm... The "Signature Dish" comparison between JPEG and JXL, when you select "compare size" and it's normalized to SSIMU2=50, low quality... the JXL version is clearly visually inferior to the JPEG in terms of visual acuity and retention of details, despite the matching SSIMU2 score.
|
|
2024-09-09 12:55:13
|
I agree, the 38 kb JPEG does preserve more detail than the 22 kb JXL. Then again it also has pretty noticeable ringing artifacts around most edges, and some obvious blockiness. I personally prefer the JPEG over the JXL (it preserves more information), but I also think it's true that if you don't have access to the original image and just see an image on a website, the JXL looks blurry but has no _obvious_ compression artifacts, while the blockiness and ringing of the JPEG makes it obviously compressed too much.
Just to say: I'm not sure if this is an obvious fault with ssimu2. The JPEG and JXL are very different at ssimu2=50. I'm not sure if it's true that the JXL is clearly visually inferior. To me it is, but not by a huge margin — I dislike the loss of detail of the jxl (and I would never use distance=6.4 on my own images), but I also dislike the mosquitoes around the edges in the jpeg, and the blocking. Different people have different tastes when it comes to artifacts: some people don't seem to mind smoothing/blur much but they hate ringing, while other people like ringing ("looks sharper") and hate blur.
|
|
|
Demiurge
|
2024-09-09 12:58:21
|
I agree with you, Jon, when you said in the past that fidelity to the original, and preservation of information, should be the priority, not things like appeal or smoothing that would fundamentally alter the nature of the original image.
|
|
2024-09-09 01:00:23
|
I would prefer artifacts that are easier for the human visual system to "see through" or "cancel out" to get a better idea of what was underneath the artifacts.
|
|
|
_wb_
I agree, the 38 kb JPEG does preserve more detail than the 22 kb JXL. Then again it also has pretty noticeable ringing artifacts around most edges, and some obvious blockiness. I personally prefer the JPEG over the JXL (it preserves more information), but I also think it's true that if you don't have access to the original image and just see an image on a website, the JXL looks blurry but has no _obvious_ compression artifacts, while the blockiness and ringing of the JPEG makes it obviously compressed too much.
Just to say: I'm not sure if this is an obvious fault with ssimu2. The JPEG and JXL are very different at ssimu2=50. I'm not sure if it's true that the JXL is clearly visually inferior. To me it is, but not by a huge margin — I dislike the loss of detail of the jxl (and I would never use distance=6.4 on my own images), but I also dislike the mosquitoes around the edges in the jpeg, and the blocking. Different people have different tastes when it comes to artifacts: some people don't seem to mind smoothing/blur much but they hate ringing, while other people like ringing ("looks sharper") and hate blur.
|
|
2024-09-09 01:02:00
|
The same issue can be consistently observed in the AVIF comparison images too. SSIMU2 consistently gives equal scores to images that preserve a lot less information and that look "obviously worse" to my own eyes.
|
|
2024-09-09 01:04:56
|
I long for a day where modern psychovisual models are as good as modern psychoacoustic models, and images with obvious compression artifacts are as rare as audio with obvious compression artifacts.
|
|
|
_wb_
|
2024-09-09 01:05:50
|
At lower scores, ssimu2 is more about appeal than about fidelity. It was tuned with cid22, tid13 and kadid10k. Cid22 is mostly about higher qualities and fidelity, the two others are mostly about low quality and appeal. So the end result is a bit of a mix of those two things...
|
|
2024-09-09 01:07:14
|
I think ssimu2 < 60 should just be avoided in most use cases.
|
|
|
Demiurge
|
2024-09-09 01:07:59
|
Nothing wrong with appeal, in my book, as long as it doesn't come at the expense of preferring a completely different image to a slightly-noisy image, otherwise we're back at the embarrassing cat vs dog situation again
|
|
2024-09-09 01:09:00
|
It looks more like a failure to take into account the effects of noise masking to lessen the impact of certain types of distortion
|
|
|
_wb_
|
2024-09-09 01:09:44
|
You're not gonna get cat vs dog with ssimu2, but yes, it will prefer blur over less appealing artifacts. In particular it really dislikes banding and blocking.
|
|
|
Demiurge
|
2024-09-09 01:10:32
|
Like for example, if someone uses a filter to remove the film grain from an image, and then they add the film grain back by using synthetic film grain, that would probably get a huge score penalty from algorithms like this, even though a human wouldn't really notice or care.
|
|
|
_wb_
|
2024-09-09 01:12:24
|
yes, synthetic noise is something all classical metrics have a really hard time with
|
|
|
Demiurge
|
2024-09-09 01:13:23
|
Banding and blocking are really bad and it's good that ssimu2 punishes them severely. But blurring is basically just as bad, to most people's eyes I would think, especially since it also has potential to alter the image insidiously. If blurring was punished just as harshly as the others, and decorrelated and masked noise was punished less, that would be perfect.
|
|
2024-09-09 01:14:38
|
Well, maybe not just as harshly... But at least half as harshly.
|
|
|
_wb_
|
2024-09-09 01:16:51
|
I hope with AIC-3 we'll at some point get more good subjective data to tune metrics, so I can make a ssimu2.2 or ssimu3 that does a better job. For now, I mostly had to use old datasets like tid13 where blur is not punished very harshly due to the testing methodology they used — side by side comparisons, as opposed to the in-place ones we're using in AIC-3. When doing in-place comparisons, blur is way more visible/problematic than when doing side-by-side comparisons.
|
|
|
Demiurge
|
|
_wb_
yes, synthetic noise is something all classical metrics have a really hard time with
|
|
2024-09-09 01:20:53
|
It's very crucial to the future of image compression that the noise problem is addressed some day... In the audio world at least, it seems to be a long-solved problem...
|
|
|
_wb_
|
2024-09-09 01:39:12
|
The livestream where the iPhone 16 will be announced: https://www.youtube.com/watch?v=uarNiSl_uh4
(10am PT / 7pm CEST, in about 4h20m)
|
|
|
Demiurge
|
2024-09-09 01:41:52
|
Could always have an optional "metric mode" that loves blurring and a "psycho mode" that completely throws metric scores out of the window and does worse than JPEG according to metrics but uses uses a lot of noise masking techniques to retain the most texture and fidelity better than anything else out there.
|
|
|
CrushedAsian255
|
2024-09-09 01:41:55
|
today was september 8th though
|
|
|
Demiurge
Could always have an optional "metric mode" that loves blurring and a "psycho mode" that completely throws metric scores out of the window and does worse than JPEG according to metrics but uses uses a lot of noise masking techniques to retain the most texture and fidelity better than anything else out there.
|
|
2024-09-09 01:42:10
|
i think this is a great idea
|
|
2024-09-09 01:42:26
|
like further psycovisual tuning but at the detriment of the objective metrics?
|
|
2024-09-09 01:42:32
|
sounds like svt-av1-psy
|
|
2024-09-09 01:42:35
|
all for the idea
|
|
|
Demiurge
|
2024-09-09 01:44:00
|
Honestly I think tuning for metrics is a wasted effort in the first place unless you're optimizing for manipulating the press and manipulating the results of (common but lazy) automated evaluation.
|
|
|
CrushedAsian255
|
2024-09-09 01:44:25
|
objective measurements will never be as good at saying what looks better than your eyes
|
|
2024-09-09 01:44:32
|
(unless you're me)
|
|
|
Demiurge
|
2024-09-09 01:46:52
|
Maybe you could call the one optimized for humans "psycho mode" and the one optimized for computers "sicko mode" :)
|
|
|
Oleksii Matiash
|
|
_wb_
I agree, the 38 kb JPEG does preserve more detail than the 22 kb JXL. Then again it also has pretty noticeable ringing artifacts around most edges, and some obvious blockiness. I personally prefer the JPEG over the JXL (it preserves more information), but I also think it's true that if you don't have access to the original image and just see an image on a website, the JXL looks blurry but has no _obvious_ compression artifacts, while the blockiness and ringing of the JPEG makes it obviously compressed too much.
Just to say: I'm not sure if this is an obvious fault with ssimu2. The JPEG and JXL are very different at ssimu2=50. I'm not sure if it's true that the JXL is clearly visually inferior. To me it is, but not by a huge margin — I dislike the loss of detail of the jxl (and I would never use distance=6.4 on my own images), but I also dislike the mosquitoes around the edges in the jpeg, and the blocking. Different people have different tastes when it comes to artifacts: some people don't seem to mind smoothing/blur much but they hate ringing, while other people like ringing ("looks sharper") and hate blur.
|
|
2024-09-09 01:48:15
|
This again returns me to the question about what is changing on e4 -> e5, because all that blurring starts on e5, and with e4 jxl image looks much more like jpeg 🤷♂️
|
|
|
Demiurge
Maybe you could call the one optimized for humans "psycho mode" and the one optimized for computers "sicko mode" :)
|
|
2024-09-09 01:51:14
|
Humans are too different 😦 Jon says he does not like ringing and blockines on par with blur (if I get him correct), but for me blurring out details is much worse than ringing
|
|
|
Demiurge
|
2024-09-09 01:53:33
|
Most humans are accustomed to ringing artifacts without even realizing they are there, because ringing is common in a lot of digital cameras. In the built in digital filters that you can't even disable. In a lot of image resizing and sharpening filters. Most humans can't even notice excessive amounts of ringing until you point it out to them several times.
|
|
2024-09-09 01:55:05
|
Blockiness is very bad but not as bad as banding, and arguably equally bad as blurring. Both blockiness and blurring can usually be eliminated by resizing the image. Blockiness usually retains information better than blurring though.
|
|
|
Oleksii Matiash
|
2024-09-09 01:55:10
|
They're grown on low quality jpeg 🙂 Especially older people who saw dial-up internet and floppies
|
|
|
Demiurge
|
2024-09-09 01:55:23
|
When viewed in 1:1 scale, blockiness is harder to notice than blurring.
|
|
2024-09-09 01:57:12
|
I don't think it's as complicated as it sounds to optimize for human perception, as long as you stay focused on the task of optimizing for detail retention and fidelity as the ultimate goal.
|
|
2024-09-09 01:57:20
|
Instead of appeal.
|
|
2024-09-09 01:58:14
|
If you ignore what looks best to your eyes and your own subjective sense of appeal, and only ask yourself, which one contains more information about the original image and less deceit, then it's a much, much simpler task to optimize for human perception.
|
|
|
CrushedAsian255
|
|
Demiurge
Most humans are accustomed to ringing artifacts without even realizing they are there, because ringing is common in a lot of digital cameras. In the built in digital filters that you can't even disable. In a lot of image resizing and sharpening filters. Most humans can't even notice excessive amounts of ringing until you point it out to them several times.
|
|
2024-09-09 02:00:00
|
What’s ringing again?
|
|
|
Demiurge
|
2024-09-09 02:00:33
|
Halo-like waves around sharp edges
|
|
|
CrushedAsian255
|
2024-09-09 02:00:55
|
DCT rings?
|
|
|
Demiurge
|
2024-09-09 02:02:15
|
Yes, or think about an exaggerated edge-sharpening filter.
|
|
2024-09-09 02:02:34
|
https://en.wikipedia.org/wiki/Ringing_artifacts
|
|
|
CrushedAsian255
|
2024-09-09 02:03:18
|
Yeah, ringing is kinda a general thing for any form of signal processing not even just digital, where as banding and blocking is really digital looking
|
|
|
Demiurge
|
2024-09-09 02:08:45
|
Anyways, as long as you're NOT aiming to please everyone's visual preferences or sensibilities, and only aiming for "maximum preservation - minimum deceit," judging which version of an image is "better" becomes incredibly straightforward and obvious. Like Jon has said in the past, the purpose of a codec is preservation of the original signal, not an instagram filter.
|
|
|
CrushedAsian255
|
2024-09-09 02:09:58
|
But then what counts as “more information”?
|
|
2024-09-09 02:10:16
|
Also HEIC and AVIF be the skin smoothing filter
|
|
|
Demiurge
|
|
CrushedAsian255
But then what counts as “more information”?
|
|
2024-09-09 02:11:40
|
More information = The human is able to know more about how the original signal looked.
|
|
|
A homosapien
|
|
Demiurge
The same issue can be consistently observed in the AVIF comparison images too. SSIMU2 consistently gives equal scores to images that preserve a lot less information and that look "obviously worse" to my own eyes.
|
|
2024-09-09 02:14:41
|
This is why you compare with multiple metrics like butteraugli and dssim, these metrics punish blurring more heavily
|
|
|
Demiurge
|
2024-09-09 02:14:42
|
Less information = The human can't perceive as much of the original image. Or worse, misled about what the original image looked like.
|
|
2024-09-09 02:16:03
|
Oh, dssim is by the pngquant guy. Cool!
|
|
|
A homosapien
|
2024-09-09 02:16:38
|
Yeah, Kornel has made some cool stuff!
|
|
|
Demiurge
|
2024-09-09 02:18:17
|
indeed. I hope he plays around with jxl coding :)
|
|
2024-09-09 02:18:55
|
he makes amazing tools
|
|
|
A homosapien
|
2024-09-09 02:24:27
|
I use pngquant & dssim a lot <:Stonks:806137886726553651>
|
|
|
_wb_
|
2024-09-09 02:48:16
|
^ <@826537092669767691>
|
|
|
Meow
|
|
_wb_
The livestream where the iPhone 16 will be announced: https://www.youtube.com/watch?v=uarNiSl_uh4
(10am PT / 7pm CEST, in about 4h20m)
|
|
2024-09-09 02:55:30
|
Time for the real coverage in about 2.5 hours later
|
|
|
dogelition
|
|
_wb_
The livestream where the iPhone 16 will be announced: https://www.youtube.com/watch?v=uarNiSl_uh4
(10am PT / 7pm CEST, in about 4h20m)
|
|
2024-09-09 04:58:17
|
fyi, the event seems to be in HDR again like the last one
probably just works™ on apple's site on apple devices, but it also works on windows on the apple tv app (no account required)
|
|
|
Meow
|
2024-09-09 05:04:00
|
Tim Apple comes
|
|
|
Demiurge
|
2024-09-09 05:13:27
|
Who the hell is Steve Jobs?
|
|
|
Meow
|
2024-09-09 05:18:33
|
The hell knows
|
|
2024-09-09 05:20:51
|
No mention of JPEG XL for Apple Watch
|
|
|
lonjil
|
2024-09-09 05:22:27
|
not entirely unsurprising
|
|
|
_wb_
|
2024-09-09 05:32:36
|
Also the noise-cancelling earbuds do not support JXL, disappointing...
|
|
2024-09-09 05:52:13
|
So cringe how they use "Apple Intelligence" instead of AI
|
|
|
lonjil
|
2024-09-09 06:00:13
|
even before they introduced that term, they never used the terms "AI" or "artificial intelligence", I think. Only "machine learning".
|
|
|
_wb_
|
2024-09-09 06:05:23
|
Hm, the segment on the camera is done, no mention of jxl yet?
|
|
|
lonjil
|
2024-09-09 06:06:01
|
maybe they think image formats are too boring and it'll just silently be available when the phone launches
|
|
|
jonnyawsom3
|
2024-09-09 06:06:11
|
If they just tack it on a whiteboard at the end again....
|
|
|
|
veluca
|
|
lonjil
maybe they think image formats are too boring and it'll just silently be available when the phone launches
|
|
2024-09-09 06:07:38
|
that would not be surprising tbh
|
|
|
lonjil
|
2024-09-09 06:08:07
|
quick someone pre-order an iphone the millisecond the store comes back
|
|
|
_wb_
|
2024-09-09 06:09:21
|
Clearly new pastel colors for the phone case are more exciting than new image formats.
|
|
|
lonjil
|
2024-09-09 06:10:03
|
https://tenor.com/bw15F.gif
|
|
|
_wb_
|
2024-09-09 06:15:03
|
Oh, they have a separate thing about the iPhone 16 Pro? Ugh why am I watching this hype nonsense
|
|
|
lonjil
|
2024-09-09 06:18:26
|
inb4 jxl is iphone pro exclusive
|
|
|
Meow
|
|
_wb_
Oh, they have a separate thing about the iPhone 16 Pro? Ugh why am I watching this hype nonsense
|
|
2024-09-09 06:20:37
|
Always like that
|
|
|
sklwmp
|
|
lonjil
|
2024-09-09 06:22:18
|
global shutter? neat
|
|
|
_wb_
|
2024-09-09 06:29:33
|
Also nothing on jxl in the Pro segment, it seems.
|
|
|
jonnyawsom3
|
2024-09-09 06:30:42
|
Could just be me, but they've certainly done a good job hiding any hint of what format the photos were taken in... Then again Apple have always hidden the camera format settings
|
|
|
lonjil
|
2024-09-09 06:32:38
|
i like how the livestream video compression makes the high quality video footage look terrible
|
|
2024-09-09 06:35:20
|
>meters
i thought this was america
|
|
2024-09-09 06:40:17
|
well nothing at all about jxl
|
|
|
Meow
|
|
jonnyawsom3
|
2024-09-09 06:40:36
|
Yeah, a lot of changes to the camera though
|
|
|
lonjil
|
2024-09-09 06:41:29
|
maybe the DNGs will contain JXL
|
|
|
Meow
|
2024-09-09 06:42:20
|
So that's false rumour
|
|
|
jonnyawsom3
|
2024-09-09 06:43:03
|
Who would've guessed every news outlet reporting on a single rumor wouldn't end well
|
|
|
lonjil
|
|
Meow
Nope
|
|
2024-09-09 06:43:19
|
where's that info?
|
|
|
Meow
|
|
lonjil
where's that info?
|
|
2024-09-09 06:43:39
|
https://www.apple.com/iphone-16-pro/specs/
|
|
|
lonjil
|
|
_wb_
|
2024-09-09 06:47:22
|
Now I am curious where the rumors came from
|
|
|
username
|
2024-09-09 06:48:28
|
could be a case of old info getting mixed up with new then spread around?
|
|
|
Meow
|
2024-09-09 06:49:11
|
Created the largest hype ever of JXL server
|
|
|
lonjil
|
2024-09-09 06:50:02
|
I could easily see it being someone in the chain of the rumour misunderstanding a move to the newer DNG spec
|
|
2024-09-09 06:50:30
|
or maybe someone just made it up
|
|
|
_wb_
|
2024-09-09 06:51:50
|
Well if they are using jxl payloads in DNG, I guess the rumor is still kind of true.
|
|
|
spider-mario
|
|
lonjil
>meters
i thought this was america
|
|
2024-09-09 06:53:07
|
it is, or they would have spelt it “metre”
|
|
|
_wb_
|
2024-09-09 06:53:24
|
How can we find out what kind of DNG the new iPhone is producing?
|
|
|
lonjil
|
2024-09-09 06:53:42
|
i guess we have to wait until someone gets a hold of one and tries it
|
|
2024-09-09 06:54:06
|
if i know someone who gets one of the new iphones ill ask them to try it
|
|
|
Meow
|
2024-09-09 06:56:48
|
https://support.apple.com/en-us/119916 about ProRAW
|
|
|
jonnyawsom3
|
2024-09-09 07:01:00
|
Assuming they are, I'm mostly curious if they're just using the Adobe SDK or if they made their own, actually logical, implementation
|
|
|
Meow
|
2024-09-09 07:12:14
|
iOS 18, iPadOS 18, macOS Sequoia and watchOS 11 will be available on Sep 16
|
|
|
lonjil
|
2024-09-09 07:16:56
|
I have the beta installed already
|
|
2024-09-09 07:18:15
|
unfortunately ipad air apparently doesn't allow raw capture
|
|
|
_wb_
|
2024-09-09 07:19:29
|
Timing-wise, I was surprised by those rumors about jxl in iPhone 16. To me it made more sense to do it next year, when likely there will be a hardware encoder available and when at least within the Apple ecosystem jxl decode support will be universal (currently it isn't quite yet, not everyone has upgraded already).
But within DNG it would make sense, like Samsung did... Curious if they're doing that, or just the old DNG.
|
|
|
lonjil
|
2024-09-09 07:21:36
|
Should we expect the hardware encoder to be competitive with hardware encoded HEIC? Since it's likely to only use a subset of simpler to implement parts of the spec.
|
|
|
_wb_
|
2024-09-09 07:28:31
|
It will be similar to libjxl-tiny
|
|
2024-09-09 07:29:19
|
At camera quality it shouldn't be much worse than libjxl e4 or so
|
|
2024-09-09 07:29:54
|
(software encoding mostly makes a big difference at web quality and lower)
|
|
|
lonjil
|
2024-09-09 07:37:41
|
I wonder how HW encoders for JXL will do all the math. Going full fp32 would probably either be too expensive (if fully pipelined) or too slow (if just a couple of fp32 units are used in a loop for everything)
|
|
|
_wb_
|
2024-09-09 07:39:55
|
They do it in fixedpoint arithmetic
|
|
2024-09-09 07:40:07
|
Probably 18 bit or so
|
|
2024-09-09 07:41:38
|
Maybe number of bits will be different in different parts of the pipeline
|
|
2024-09-09 07:43:12
|
Also the big DCT transforms are just not implemented, probably only 8x8, 16x8, 8x16, 16x16 or so. That also helps to keep the math easier in fixedpoint.
|
|
|
lonjil
|
2024-09-09 07:44:53
|
for fancy 14-bit camera sensors, I hope (i don't actually know) that 4 bits of headroom is enough to have very little in the way of rounding errors
|
|
|
_wb_
|
2024-09-09 07:49:10
|
Well the hw encoder would be for lossy in XYB, not for storing Bayer data
|
|
2024-09-09 07:51:54
|
But yeah, 13-14 bit XYB is plenty even for wide gamut HDR, and then a few bits extra for the DCT, basically.
|
|
2024-09-09 07:56:03
|
Anyway, whatever Apple is gonna do right now, is gonna be in software. Unless they secretly designed their own hw jxl encoder (I doubt it).
|
|
2024-09-09 07:57:39
|
I guess it will be either jxl-in-DNG, or no jxl at all for now. Or maybe jxl after all, as an option they for some reason don't want to brag about.
|
|
|
lonjil
|
2024-09-09 08:00:55
|
would be weird to not have it in the spec sheet even if they didn't care to advertize it
|
|
|
jonnyawsom3
|
|
_wb_
Well the hw encoder would be for lossy in XYB, not for storing Bayer data
|
|
2024-09-09 08:07:26
|
Although if it were to be lossless, it would use the fast lossless currently used in cjxl e1, so up to 16 bit ints if I recall
|
|
|
lonjil
|
|
_wb_
Well the hw encoder would be for lossy in XYB, not for storing Bayer data
|
|
2024-09-09 08:10:45
|
Hm, but pretty much everything that stores Bayer data these days is some form of lossy designed for photos (DCT, wavelets, etc)
|
|
2024-09-09 08:11:36
|
So if you want to do hardware accelerated encoding for, say, JXL-DNG, you'd want to do VarDCT, not Modular
|
|
|
_wb_
|
2024-09-09 08:14:32
|
Yeah, basically something like d0.5 to replace camera-quality jpeg and d0.1 to do "lossy raw". For lossless raw you can probably do libjxl e1 in software on a phone and it is fast enough.
|
|
|
lonjil
|
2024-09-09 08:16:31
|
Would it be best to convert R, B, and average G to XYB, and then G-diff as a modular extra channel, or to store RGGB as four separate grayscale VarDCT frames?
|
|
|
_wb_
|
2024-09-09 08:17:23
|
For "lossy raw" you just store a debayered image.
|
|
|
lonjil
|
2024-09-09 08:20:17
|
storing lossy bayer data is very common AFAIK
|
|
|
_wb_
|
2024-09-09 08:20:45
|
Storing a debayered image is what Apple's ProRAW has been doing for a while if I understand correctly. Don't bother with storing actual raw RGGB, just store a debayered image with enough precision. People care about having dynamic range available, being able to adjust color without getting hit by blown up compression artifacts.
|
|
|
lonjil
|
2024-09-09 08:20:55
|
I know that some high end film cameras store lossy jpeg2000, 4 grayscale frames per actual frame
|
|
|
_wb_
Storing a debayered image is what Apple's ProRAW has been doing for a while if I understand correctly. Don't bother with storing actual raw RGGB, just store a debayered image with enough precision. People care about having dynamic range available, being able to adjust color without getting hit by blown up compression artifacts.
|
|
2024-09-09 08:21:53
|
yeah I think it makes sense. A few of photographers have told me that they want to have control over the debayering process so they don't want such "raws"
|
|
2024-09-09 08:22:21
|
But personally I prefer to not have to think about Bayer stuff, so high precision debayered data sounds good to me
|
|
|
spider-mario
|
2024-09-09 08:23:34
|
debayered DNG has occasionally been called “Linear DNG”
|
|
2024-09-09 08:23:41
|
if you’ve ever come across that term, that’s what it refers to
|
|
|
_wb_
|
2024-09-09 08:25:26
|
I wonder to what extent it really makes sense to do custom debayering as a photographer, as opposed to leaving it to the camera to do it in a good way — and allowing camera vendors to innovate in how exactly they do things, since 2x2 Bayer patterns is certainly not the only way to do it.
|
|
|
lonjil
|
2024-09-09 08:26:28
|
I think some vendor camera software implements the exact algorithms actually used on board the camera
|
|
2024-09-09 08:27:37
|
And I *believe* that some raw files from some cameras can't be handled by open source tooling due to having weird bayer stuff that hasn't been implemented in those open source tools yet, so I think there's some innovation (maybe)
|
|
|
jonnyawsom3
|
2024-09-09 08:27:48
|
I'm still very annoyed Adobe didn't use the CFA channel type to store JXL DNGs, or tile size properly...
|
|
|
_wb_
|
2024-09-09 08:29:29
|
It kind of makes sense from the DNG spec point of view to use jxl as just a 'dumb' payload encoding so they can treat it symmetrically with the already existing encodings...
|
|
2024-09-09 08:31:09
|
I wish we could move to just using JXL files instead of DNG though, with just a box for whatever proprietary camera maker stuff they want to add but a main image that is just a standard, interoperable image.
|
|
|
jonnyawsom3
|
2024-09-09 08:32:47
|
As far as I can tell, there's not really any reason we couldn't. It's just image data, either RGB Linear or a greyscale bayer, then a lot of metadata. The real hurdle would be getting the RAW editing software to read the JXL files properly with the presence of the metadata or the CFA channel
|
|
|
KKT
|
|
Demiurge
I realize this might not be the most well received comment, in a server about JXL, but I am only bringing it up because I'm also a fan of JXL and I hope it succeeds and becomes the new universal image interchange.
|
|
2024-09-09 08:35:37
|
I tested LOTS of images. I picked the ones that performed the best on paper, since it was just too time consuming to do full a/b comparisons for every set.
|
|
|
_wb_
|
2024-09-09 08:46:34
|
We can always tweak it further. Probably we are currently going a bit too low quality, and doing the comparisons at d1-3 instead of up to d6, with 2x zoom, would be a better way to show the difference between jxl and jpeg/avif.
|
|
2024-09-09 08:50:52
|
Anyway, I have to admit I am a bit disappointed that the rumors about jxl in iPhone 16 turned out to be either false or only about DNG. It's not going to give the visibility to jxl I was hoping for. Then again even the rumors did help to spark some interest, and maybe it will still help to get Apple to add it later, in an iOS update or in the iPhone 17...
|
|
2024-09-09 08:55:00
|
Now the speculation can start about where these rumors came from: was it just baseless speculation, was it something they were actually planning to do but couldn't finish in time, was it cancelled last minute for some political reasons, ... ?
I guess we'll never know the full story.
|
|
|
jonnyawsom3
|
2024-09-09 08:57:57
|
Not sure why so many were citing it as a confirmed thing either...
|
|
|
KKT
|
|
_wb_
Now the speculation can start about where these rumors came from: was it just baseless speculation, was it something they were actually planning to do but couldn't finish in time, was it cancelled last minute for some political reasons, ... ?
I guess we'll never know the full story.
|
|
2024-09-09 09:00:17
|
Software rumors have often been off by a year in the past too <:AngryCry:805396146322145301>
|
|
|
jonnyawsom3
|
2024-09-09 09:11:19
|
Ah well, at least now we have time to get the website looking it's best
|
|
|
_wb_
|
2024-09-09 09:14:26
|
and to get Firefox and Chrome to catch up 🙂
|
|
|
KKT
|
2024-09-09 09:18:10
|
If someone could get the 2-3x zoom back into the comparison tools, that would be awesome. We pulled them cause they were causing havoc on the mobile sizes. We also wanted to implement a "compare to original" we never got around to
|
|
|
_wb_
|
2024-09-09 09:22:16
|
Maybe we could reuse this three-way comparison interface from the webp folks: https://storage.googleapis.com/demos.webmproject.org/webp/cmp/2024_09_04/visualizer.html?bimg=..%2Fclic_validation_2021_2022_2024%2Fimages%2Fcasey-fyfe-999.png&btxt=original&rimg=encoded%2Fcasey-fyfe-999.444e8q034.jxl.png&rtxt=JPEG+XL+4%3A4%3A4+effort+8&limg=encoded%2Fcasey-fyfe-999.444e6q033.avif<xt=AVIF+4%3A4%3A4+speed+6
|
|
|
KKT
|
2024-09-09 09:54:09
|
Yes, that's what I'd hoped for for the full page comparison tool
|
|
|
CrushedAsian255
|
|
_wb_
We can always tweak it further. Probably we are currently going a bit too low quality, and doing the comparisons at d1-3 instead of up to d6, with 2x zoom, would be a better way to show the difference between jxl and jpeg/avif.
|
|
2024-09-09 10:20:50
|
If you don’t show the CFA layer or the green extra channel does it still look normal after colour correction?
|
|
|
KKT
Software rumors have often been off by a year in the past too <:AngryCry:805396146322145301>
|
|
2024-09-09 10:22:16
|
Who knows, maybe iOS 18.1
|
|
|
lonjil
unfortunately ipad air apparently doesn't allow raw capture
|
|
2024-09-09 10:27:35
|
I’m installing it on my iP14pm
|
|
2024-09-09 10:30:01
|
Does Exiftool tell you what format it’s using?
|
|
|
lonjil
|
|
CrushedAsian255
Does Exiftool tell you what format it’s using?
|
|
2024-09-09 10:34:17
|
I don't know but you could upload the DNG here or elsewhere and we'll try to check?
|
|
|
jonnyawsom3
|
|
CrushedAsian255
If you don’t show the CFA layer or the green extra channel does it still look normal after colour correction?
|
|
2024-09-09 10:44:08
|
That was in response to the image comparisons on the new website, but if I recall yes, RAW JXLs would display using RGB bayer offset to align, with the extra G stored in a CFA extra channel only used when decoding as RAW data. Been a long time since this was mentioned though, so I could be wrong
|
|
|
CrushedAsian255
Does Exiftool tell you what format it’s using?
|
|
2024-09-09 10:45:39
|
Yeah, it also says the encode parameters with Adobe's implementation
|
|
|
CrushedAsian255
|
2024-09-09 10:51:12
|
I’ll Exiftool a RAW image
|
|
2024-09-09 10:55:21
|
It’s odd that every other format has a badge but not JXL
|
|
2024-09-09 10:55:29
|
|
|
|
KKT
|
2024-09-09 11:18:06
|
Wake up <@794205442175402004> ! https://www.macrumors.com/2024/09/09/iphone-16-pro-supports-jpeg-xl-format/
|
|
|
RaveSteel
|
|
lonjil
|
2024-09-09 11:35:36
|
"according to code found in" presumably hints at someone stumbling on something in publically released materials, rather than a leak, which means that there should be a source they should be able to link to.
But "journalists", for some reason, seem allergic to this practice.
|
|
|
KKT
Wake up <@794205442175402004> ! https://www.macrumors.com/2024/09/09/iphone-16-pro-supports-jpeg-xl-format/
|
|
2024-09-09 11:37:53
|
oh! I notice that they linked to the new website, nice :)
|
|
|
|
afed
|
2024-09-09 11:40:13
|
<:Thonk:805904896879493180>
https://news.ycombinator.com/item?id=41484914
|
|
|
Demiurge
|
|
KKT
I tested LOTS of images. I picked the ones that performed the best on paper, since it was just too time consuming to do full a/b comparisons for every set.
|
|
2024-09-09 11:44:11
|
Of course. I just hope I can be useful or constructive by my examining and giving feedback. :)
|
|
|
afed
<:Thonk:805904896879493180>
https://news.ycombinator.com/item?id=41484914
|
|
2024-09-09 11:48:53
|
I noticed even one of the comments here on ycombinator is expressing confusion over how the JXL images look noticeably worse in the comparisons.
|
|
|
HCrikki
|
2024-09-09 11:49:39
|
if it mentions the pro iphones specifically, couldnt it be about proraw (proraw max in particular)
|
|
|
Demiurge
|
2024-09-09 11:49:41
|
I promise it wasn't me :)
|
|
|
HCrikki
|
2024-09-09 11:51:01
|
proraw was dng 1.6 earlier, perhaps they upgraded to 1.7 and also added jxl as a codec for dng 1.7 (under high efficiency mode?)
|
|
2024-09-09 11:52:17
|
if anyone knows a reviewer with a device they can talk about, might be worth asking about and get sample files from
|
|
|
KKT
|
2024-09-10 12:00:23
|
iPhone 13 Pro Max after today's iOS 18 update:
|
|
|
lonjil
|
2024-09-10 12:04:22
|
> Bits Per Sample : 12 12 12
> Compression : JPEG
|
|
2024-09-10 12:10:36
|
someone pointed me to the OS package for iOS 18 for iPhone 16 Pro and a decryption tool, wish me luck
|
|
2024-09-10 12:10:56
|
with any luck I'll be able to grep the binaries for relevant strings
|
|
|
Demiurge
|
|
KKT
I tested LOTS of images. I picked the ones that performed the best on paper, since it was just too time consuming to do full a/b comparisons for every set.
|
|
2024-09-10 12:22:22
|
Were you using libjpeg-turbo for jpeg?
|
|
|
lonjil
|
2024-09-10 12:42:38
|
actually, I think I'm missing some tooling to run this stuff. If anyone is on mac and has Xcode installed, please download this: <https://updates.cdn-apple.com/2024FallFCS/mobileassets/032-87820/49E96347-486E-47BD-858A-202BD5A90E0B/com_apple_MobileAsset_SoftwareUpdate/d9faf503145b73e746c27e075c48af44bfa02f15731649242930e38c98c5fe39.aea>
and then decrypt it with this tool: <https://github.com/dhinakg/aeota>
|
|
2024-09-10 01:15:01
|
nevermind this other tool worked <https://github.com/blacktop/ipsw>
|
|
|
CrushedAsian255
|
|
lonjil
someone pointed me to the OS package for iOS 18 for iPhone 16 Pro and a decryption tool, wish me luck
|
|
2024-09-10 01:16:49
|
My testing gives bit depth of 10 instead of 12
|
|
2024-09-10 01:16:50
|
Weird
|
|
|
lonjil
|
|
lonjil
nevermind this other tool worked <https://github.com/blacktop/ipsw>
|
|
2024-09-10 01:27:50
|
oh, double nevermind, the dylib cache can only be extracted if you're on macos...
|
|
|
KKT
|
2024-09-10 02:37:15
|
Working on it!
|
|
|
Meow
|
|
KKT
Wake up <@794205442175402004> ! https://www.macrumors.com/2024/09/09/iphone-16-pro-supports-jpeg-xl-format/
|
|
2024-09-10 02:56:07
|
Why are media people obsessed with that hyphen?
|
|
|
jonnyawsom3
|
2024-09-10 02:58:47
|
When asking my friend about the site they used `jpxl`
|
|
|
Meow
|
2024-09-10 03:01:46
|
Not true.
> HEIC is a lossy format, and while it retains better quality than JPG images, pros will likely prefer JPEG-XL for zero image degradation.
|
|
2024-09-10 03:04:28
|
Similar to AVIF, HEIC can be lossless too
|
|
|
KKT
|
|
Demiurge
Were you using libjpeg-turbo for jpeg?
|
|
2024-09-10 03:15:29
|
Yeah, I think so but I'll have to go through my notes. I originally compressed them back in May, so getting foggy. I only used mozjpeg for testing the progressive decoding I think.
|
|
|
Meow
|
|
lonjil
> Bits Per Sample : 12 12 12
> Compression : JPEG
|
|
2024-09-10 03:32:55
|
Did a bit search and it's been like that for years
|
|
|
monad
|
2024-09-10 04:16:09
|
.jpgxl
|
|
|
_wb_
|
|
KKT
Wake up <@794205442175402004> ! https://www.macrumors.com/2024/09/09/iphone-16-pro-supports-jpeg-xl-format/
|
|
2024-09-10 06:33:31
|
So we went from rumors to an announcement that doesn't mention jxl and now back to rumors? I feel like I am getting trolled 🙂
|
|
|
jonnyawsom3
|
2024-09-10 06:41:58
|
An announcement about news of a rumour, in an announcement that didn't have the rumour, which now has a rumour about news of JXL being in the 16 Pro exclusively
|
|
|
CrushedAsian255
|
2024-09-10 06:49:56
|
Istg if they release it and it’s iPhone 16 only
|
|
|
Meow
|
2024-09-10 06:56:51
|
https://x.com/jyzg/status/1833223807416381624
|
|
|
Oleksii Matiash
|
|
_wb_
I wonder to what extent it really makes sense to do custom debayering as a photographer, as opposed to leaving it to the camera to do it in a good way — and allowing camera vendors to innovate in how exactly they do things, since 2x2 Bayer patterns is certainly not the only way to do it.
|
|
2024-09-10 07:47:19
|
Most people would not care, I will 🤷♂️ Also software algorithms are improving with time, camera firwmare are not. And do not forget file size difference
|
|
|
CrushedAsian255
If you don’t show the CFA layer or the green extra channel does it still look normal after colour correction?
|
|
2024-09-10 07:47:39
|
Rephrase your question, please
|
|
|
CrushedAsian255
|
|
Oleksii Matiash
Rephrase your question, please
|
|
2024-09-10 08:00:50
|
You know how there is 2 greens per each red and blue, right? If the green pixel is stored in an extra channel, but is not rendered, does the image look fine with only the R,B and one of the Gs?
|
|
|
Oleksii Matiash
|
|
CrushedAsian255
You know how there is 2 greens per each red and blue, right? If the green pixel is stored in an extra channel, but is not rendered, does the image look fine with only the R,B and one of the Gs?
|
|
2024-09-10 08:03:51
|
It is used for demosaic, without it you would have square without one quarter of information. It is first point, and second - idk the reason, but manufacturers some time have *different* green channel specs. I.e. slightly different dye, for example
|
|
|
CrushedAsian255
|
2024-09-10 08:04:22
|
so you can't render the R,G,B data before demosaicing?
|
|
|
Oleksii Matiash
|
|
CrushedAsian255
so you can't render the R,G,B data before demosaicing?
|
|
2024-09-10 08:06:40
|
No, of course. Demosaic is the process of 'guessing' 2 channels for each camera pixel, to create RGB value. One pixel in camera has only one 'channel'. And in the simplest approach demosaic is performed by squares of R, G, G, B (or any other bayer layout variant)
|
|
|
CrushedAsian255
|
2024-09-10 08:07:19
|
can't you just desample the image 2x each way and use the R,B and one of the Gs?
|
|
|
Oleksii Matiash
|
2024-09-10 08:08:40
|
You will get 1/4 of possible resolution. I.e. for 24 mp sensor you would have 6 mp rgb image. It is possible, but noone would be happy with it
|
|
2024-09-10 08:09:12
|
Also it leads to some very special artifacts in rgb image
|
|
|
CrushedAsian255
|
2024-09-10 08:18:29
|
weird colour aliasing?
|
|
|
Oleksii Matiash
|
|
CrushedAsian255
weird colour aliasing?
|
|
2024-09-10 08:21:00
|
Yes
|
|
|
CrushedAsian255
weird colour aliasing?
|
|
2024-09-10 08:59:31
|
Left - normal demosaic, downsize by 50%, right - demosaic by joining rggb squares to one pixel. Zoom to 200% to see difference
|
|
|
CrushedAsian255
|
|
Oleksii Matiash
Left - normal demosaic, downsize by 50%, right - demosaic by joining rggb squares to one pixel. Zoom to 200% to see difference
|
|
2024-09-10 09:04:33
|
image isn't loading, what format is it?
|
|
|
Oleksii Matiash
|
2024-09-10 09:04:59
|
Lossless jxl 🤷♂️
|
|
|
CrushedAsian255
|
2024-09-10 09:05:38
|
oh yeah, those colour artifacting
|
|
|
_wb_
|
2024-09-10 10:20:58
|
Joining RGGB into one pixel is effectively doing nearest-neighbor subsampling (mostly for R and B) with a wrong offset of half a pixel. It's ok-ish for a rough preview but not really great.
I think for lossless raw, you just need to store the bayer data as it is (as 4 separate channels, maybe with avgG and deltaG to decorrelate those two), that's the only effective way to do it if you insist on mathematically lossless and keeping the sensor data exactly as it is. We _could_ represent it as RGB + deltaG so it's viewable at half resolution and with some artifacts on naive decoders (assuming the channels can be rescaled appropriately via some ICC profile), but I think it makes more sense to do it as lossy preview + four CFA channels.
For 'lossy raw', I think it makes the most sense to properly demosaic and white balance first to create a normal RGB image (at full resolution) and then use high-precision lossy compression. It's not going to be as good as real lossless raw, but it can be way better than doing some additional processing and producing an 8-bit JPEG. I'd assume that for 98% of the use cases where people now use raw, 'lossy raw' would be good enough. And I think that with jxl, we could basically do 'lossy raw' in about the same file sizes as camera jpegs, but with enough precision to preserve the dynamic range and keep it editable.
|
|
|
CrushedAsian255
|
|
_wb_
Joining RGGB into one pixel is effectively doing nearest-neighbor subsampling (mostly for R and B) with a wrong offset of half a pixel. It's ok-ish for a rough preview but not really great.
I think for lossless raw, you just need to store the bayer data as it is (as 4 separate channels, maybe with avgG and deltaG to decorrelate those two), that's the only effective way to do it if you insist on mathematically lossless and keeping the sensor data exactly as it is. We _could_ represent it as RGB + deltaG so it's viewable at half resolution and with some artifacts on naive decoders (assuming the channels can be rescaled appropriately via some ICC profile), but I think it makes more sense to do it as lossy preview + four CFA channels.
For 'lossy raw', I think it makes the most sense to properly demosaic and white balance first to create a normal RGB image (at full resolution) and then use high-precision lossy compression. It's not going to be as good as real lossless raw, but it can be way better than doing some additional processing and producing an 8-bit JPEG. I'd assume that for 98% of the use cases where people now use raw, 'lossy raw' would be good enough. And I think that with jxl, we could basically do 'lossy raw' in about the same file sizes as camera jpegs, but with enough precision to preserve the dynamic range and keep it editable.
|
|
2024-09-10 10:22:10
|
Lossy preview in the preview frame?
|
|
|
_wb_
Joining RGGB into one pixel is effectively doing nearest-neighbor subsampling (mostly for R and B) with a wrong offset of half a pixel. It's ok-ish for a rough preview but not really great.
I think for lossless raw, you just need to store the bayer data as it is (as 4 separate channels, maybe with avgG and deltaG to decorrelate those two), that's the only effective way to do it if you insist on mathematically lossless and keeping the sensor data exactly as it is. We _could_ represent it as RGB + deltaG so it's viewable at half resolution and with some artifacts on naive decoders (assuming the channels can be rescaled appropriately via some ICC profile), but I think it makes more sense to do it as lossy preview + four CFA channels.
For 'lossy raw', I think it makes the most sense to properly demosaic and white balance first to create a normal RGB image (at full resolution) and then use high-precision lossy compression. It's not going to be as good as real lossless raw, but it can be way better than doing some additional processing and producing an 8-bit JPEG. I'd assume that for 98% of the use cases where people now use raw, 'lossy raw' would be good enough. And I think that with jxl, we could basically do 'lossy raw' in about the same file sizes as camera jpegs, but with enough precision to preserve the dynamic range and keep it editable.
|
|
2024-09-10 10:22:58
|
So “lossy raw” is effectively ProRes and Log colour space?
|
|
|
_wb_
|
|
CrushedAsian255
Lossy preview in the preview frame?
|
|
2024-09-10 10:25:18
|
nah just use the main color channels for the lossy preview (a regular vardct image, e.g. at half resolution and d2 or something) and put the RGGB in four extra channels.
|
|
|
CrushedAsian255
So “lossy raw” is effectively ProRes and Log colour space?
|
|
2024-09-10 10:27:30
|
I think ProRAW is more or less like that
|
|
|
CrushedAsian255
|
2024-09-10 10:27:30
|
"kCFA 5 Channel used to represent Colour Filter Array data (Bayer mosaic)"?
|
|
|
_wb_
I think ProRAW is more or less like that
|
|
2024-09-10 10:27:41
|
yeah, it's just lossless JPEG
|
|
|
_wb_
|
|
CrushedAsian255
"kCFA 5 Channel used to represent Colour Filter Array data (Bayer mosaic)"?
|
|
2024-09-10 10:29:51
|
yeah, four extra channels of that type, with a channel name that follows some naming convention so applications know what kind of subpixel it is
|
|
|
CrushedAsian255
|
2024-09-10 10:30:19
|
would it make sense to apply some kind of RCT to them to decorrelate?
|
|
|
_wb_
|
2024-09-10 10:30:50
|
anyway, that's what _could_ be done, for now the only thing that exists in practice is DNG which just uses jxl as a grayscale code
|
|
2024-09-10 10:31:49
|
yes, RCTs could be used to do things like converting G1 G2 to avgG deltaG
|
|
|
CrushedAsian255
|
2024-09-10 10:33:39
|
at this point, this format can do so much, can JXL help me pay my taxes or look for a career?
|
|
|
_wb_
yeah, four extra channels of that type, with a channel name that follows some naming convention so applications know what kind of subpixel it is
|
|
2024-09-10 10:45:44
|
you wouldn't even need to use channel names
|
|
2024-09-10 10:46:05
|
you can use the `cfa_channel` entry from Table D.8
|
|
|
_wb_
|
2024-09-10 10:49:51
|
ah right, that would be enough to identify which subpixel it is. Just need to store some other stuff somewhere, like what the Bayer layout is, what the scale is for each subpixel, etc
|
|
|
CrushedAsian255
|
|
_wb_
ah right, that would be enough to identify which subpixel it is. Just need to store some other stuff somewhere, like what the Bayer layout is, what the scale is for each subpixel, etc
|
|
2024-09-10 10:50:29
|
maybe a `dbyr` Debayer info box?
|
|
|
_wb_
|
2024-09-10 10:51:30
|
probably there is metadata from DNG that can just be reused and put in some box
|
|
|
CrushedAsian255
|
|
_wb_
nah just use the main color channels for the lossy preview (a regular vardct image, e.g. at half resolution and d2 or something) and put the RGGB in four extra channels.
|
|
2024-09-10 10:51:42
|
the reason why i was thinking of the main channels is so that vardct could be used, as as far as I am aware you can't use VarDCT for extra channels, is that correct?
|
|
|
_wb_
|
2024-09-10 10:52:05
|
correct, extra channels are modular-only
|
|
|
CrushedAsian255
|
2024-09-10 10:52:10
|
is there specific reason?
|
|
|
_wb_
|
2024-09-10 10:53:02
|
vardct is kind of deeply hardcoded for dealing with 3 channels
|
|
|
CrushedAsian255
|
2024-09-10 10:53:39
|
if you really wanted to use it for extra channels, could you do some weird RCT permutation?
|
|
2024-09-10 10:53:50
|
like have 3 empty Modular extra channels and RCT swap them with the VarDCT channels?
|
|
|
_wb_
|
2024-09-10 10:57:44
|
RCT only applies to the modular-encoded channels
|
|
|
CrushedAsian255
|
2024-09-10 10:57:57
|
oh ok
|
|
|
Oleksii Matiash
|
|
_wb_
probably there is metadata from DNG that can just be reused and put in some box
|
|
2024-09-10 11:31:11
|
It is: CFA Pattern : [Red,Green][Green,Blue]
|
|
|
lonjil
|
|
KKT
Wake up <@794205442175402004> ! https://www.macrumors.com/2024/09/09/iphone-16-pro-supports-jpeg-xl-format/
|
|
2024-09-10 11:42:33
|
wouldn't it be funny if this "code found in iOS 18" is just the same code that was in iOS 17 to support JXL in Safari and other apps?
|
|
|
dogelition
|
2024-09-10 11:44:19
|
i tried searching on apple's developer site for any new API stuff related to jxl or dng, but didn't find anything (jxl isn't mentioned anywhere in the docs, as far as i can tell)
|
|
2024-09-10 11:47:18
|
https://developer.apple.com/documentation/avfoundation/avvideocodectype/4354004-jpegxl
|
|
2024-09-10 11:47:21
|
what
|
|
2024-09-10 11:47:45
|
regular jpeg is also a video codec, apparently
|
|
2024-09-10 11:48:23
|
AVVideoCodecType
A set of constants that describe the codecs the system supports for video capture.
|
|
|
Tirr
|
2024-09-10 11:48:24
|
like, it's closer to video than audio
|
|
|
dogelition
|
2024-09-10 11:48:45
|
so this does seem to indicate support for capturing video (photo?) in jpeg xl, at least on the api level
|
|
2024-09-10 11:51:24
|
anyone familiar with these APsI know what this constant being present actually means? can you actually use it for something?
|
|
|
CrushedAsian255
|
2024-09-10 11:56:20
|
Maybe they want to make Motion JXL?
|
|
|
dogelition
|
2024-09-10 11:57:01
|
for photo capture it seems like you'd pass it to this function: <https://developer.apple.com/documentation/avfoundation/avcapturephotosettings/1648673-init>
anyone happen to have an ios device with ios 18 + a development environment? should be straightforward enough to take some camera capture sample code and just put jpeg xl in there, probably?
|
|
|
CrushedAsian255
Maybe they want to make Motion JXL?
|
|
2024-09-10 11:57:41
|
idk, just looks like they don't distinguish between video and photo capture formats in these APIs.. wonder what happens if you tell it that you e.g. want to record a jpeg video though, presumably it would return an error?
|
|
|
CrushedAsian255
|
2024-09-10 11:58:40
|
ProRes as a photo format?
|
|
2024-09-10 11:58:46
|
Could work…
|
|
|
dogelition
idk, just looks like they don't distinguish between video and photo capture formats in these APIs.. wonder what happens if you tell it that you e.g. want to record a jpeg video though, presumably it would return an error?
|
|
2024-09-10 11:59:04
|
Could be Motion JPEG
|
|
|
dogelition
idk, just looks like they don't distinguish between video and photo capture formats in these APIs.. wonder what happens if you tell it that you e.g. want to record a jpeg video though, presumably it would return an error?
|
|
2024-09-10 12:00:43
|
It’s not listed in https://developer.apple.com/documentation/coremedia/cmvideocodectype
|
|
|
lonjil
|
2024-09-10 12:01:48
|
that's CoreMedia rather than AVFoundations though
|
|
|
dogelition
|
2024-09-10 12:01:50
|
<https://developer.apple.com/documentation/avfoundation/avcapturephotooutput/2991116-availablephotopixelformattypes>
this should tell you whether the OS supports jpeg xl for photo capture
|
|
|
CrushedAsian255
|
2024-09-10 12:02:56
|
We need someone to run this function on iOS 18
https://developer.apple.com/documentation/avfoundation/avcapturephotooutput/1648654-availablephotocodectypes
|
|
|
dogelition
<https://developer.apple.com/documentation/avfoundation/avcapturephotooutput/2991116-availablephotopixelformattypes>
this should tell you whether the OS supports jpeg xl for photo capture
|
|
2024-09-10 12:03:26
|
I think that’s for raw data not for compressed codecs
|
|
|
dogelition
|
2024-09-10 12:03:30
|
oh yeah, i don't think the function i linked is the right thing
|
|
|
lonjil
|
2024-09-10 12:03:42
|
ugh, apparently these doc pages are dynamically loaded with JS, so older versions don't show up properly in the Wayback Machine
|
|
|
CrushedAsian255
|
2024-09-10 12:06:54
|
That original AVVideoCodecType is what’s returned, but that probably also be for decoding
|
|
2024-09-10 12:07:11
|
Although it was added in 18.0 instead of 17.0 so it’s new
|
|
2024-09-10 12:07:49
|
It’s probably what that news article meant when they said they “found JPEG XL in the code of iOS 18”
|
|
|
_wb_
|
2024-09-10 01:02:57
|
Can't some journalist just ask someone at Apple to confirm or deny that there will be jxl capture support? I know Apple tends to be secretive but I would imagine that _after_ the launch they should be able to answer such a question...
|
|
|
Meow
|
2024-09-10 01:16:25
|
tcook@apple.com
|
|
|
KKT
|
2024-09-10 05:05:38
|
I can say some people who write some pretty well known photography software on iOS had not heard anything about JXL support.
|
|
|
lonjil
|
2024-09-10 07:06:22
|
I was sent this:
```bash
% plutil -p System/Library/PreferenceBundles/CameraSettings.bundle/CameraSettings-JpegXL.loctable
{
[snip]
"en" => {
"CAM_PRO_RAW_ENCODING_FOOTER" => "JPEG-XL offers improved compression over JPEG, resulting in smaller file sizes. JPEG-XL support is available on iOS 17 and later, and macOS 14 and later."
"CAM_PRO_RAW_ENCODING_JPEG_LOSSLESS" => "JPEG Lossless (Most Compatible)"
"CAM_PRO_RAW_ENCODING_JPEG_XL_LOSSLESS" => "JPEG-XL Lossless"
"CAM_PRO_RAW_ENCODING_JPEG_XL_LOSSY" => "JPEG-XL Lossy"
"CAM_PRO_RAW_ENCODING_TITLE" => "ProRAW Format"
"CAM_SECONDARY_PHOTO_FORMAT_FOOTER_RAW12_JPEG_XL_LOSSLESS" => "• 18 MB for ProRAW at 12 MP"
"CAM_SECONDARY_PHOTO_FORMAT_FOOTER_RAW12_JPEG_XL_LOSSY" => "• 11 MB for ProRAW at 12 MP"
"CAM_SECONDARY_PHOTO_FORMAT_FOOTER_RAW48_JPEG_XL_LOSSLESS" => "• 46 MB for ProRAW at 48 MP"
"CAM_SECONDARY_PHOTO_FORMAT_FOOTER_RAW48_JPEG_XL_LOSSY" => "• 20 MB for ProRAW at 48 MP"
}
}
```
|
|
2024-09-10 07:07:45
|
<@794205442175402004> JXL-in-ProRaw confirmed (seemingly)
|
|
|
username
|
|
lonjil
I was sent this:
```bash
% plutil -p System/Library/PreferenceBundles/CameraSettings.bundle/CameraSettings-JpegXL.loctable
{
[snip]
"en" => {
"CAM_PRO_RAW_ENCODING_FOOTER" => "JPEG-XL offers improved compression over JPEG, resulting in smaller file sizes. JPEG-XL support is available on iOS 17 and later, and macOS 14 and later."
"CAM_PRO_RAW_ENCODING_JPEG_LOSSLESS" => "JPEG Lossless (Most Compatible)"
"CAM_PRO_RAW_ENCODING_JPEG_XL_LOSSLESS" => "JPEG-XL Lossless"
"CAM_PRO_RAW_ENCODING_JPEG_XL_LOSSY" => "JPEG-XL Lossy"
"CAM_PRO_RAW_ENCODING_TITLE" => "ProRAW Format"
"CAM_SECONDARY_PHOTO_FORMAT_FOOTER_RAW12_JPEG_XL_LOSSLESS" => "• 18 MB for ProRAW at 12 MP"
"CAM_SECONDARY_PHOTO_FORMAT_FOOTER_RAW12_JPEG_XL_LOSSY" => "• 11 MB for ProRAW at 12 MP"
"CAM_SECONDARY_PHOTO_FORMAT_FOOTER_RAW48_JPEG_XL_LOSSLESS" => "• 46 MB for ProRAW at 48 MP"
"CAM_SECONDARY_PHOTO_FORMAT_FOOTER_RAW48_JPEG_XL_LOSSY" => "• 20 MB for ProRAW at 48 MP"
}
}
```
|
|
2024-09-10 07:09:44
|
> "JPEG Lossless (Most Compatible)"
is this option just to encode to JPEG then transcode to JXL?
|
|
|
Foxtrot
|
2024-09-10 07:09:55
|
RAW compressed by JXL? sounds like a dream
|
|
|
|
veluca
|
2024-09-10 07:10:27
|
so similar to what DNG does, but different?
|
|
|
lonjil
|
|
username
> "JPEG Lossless (Most Compatible)"
is this option just to encode to JPEG then transcode to JXL?
|
|
2024-09-10 07:12:13
|
I would assume that that just refers to standard oldschool Lossless JPEG as supported by DNG for a long time.
|
|
|
_wb_
|
2024-09-10 07:12:23
|
Those are just some strings, but they look quite promising: if they are offering both lossy and lossless settings, and the lossy setting is at a high bpp like that, I think both settings will be quite nice!
|
|
|
lonjil
|
|
veluca
so similar to what DNG does, but different?
|
|
2024-09-10 07:12:47
|
ProRaw is just DNG with a few extras, so probably it's exactly the same as what DNG does
|
|
|
|
veluca
|
2024-09-10 07:12:57
|
ah I see
|
|
2024-09-10 07:13:00
|
then it makes sense
|
|
2024-09-10 07:13:16
|
I'm going to bet that the lossless mode is e1
|
|
2024-09-10 07:13:49
|
but I guess we will find out 😛
|
|
2024-09-10 07:14:28
|
I assume that's for images, or is that for video too? if so the CPU they have is quite impressive xD
|
|
|
_wb_
|
2024-09-10 07:14:43
|
ProRAW is for still images
|
|
|
|
veluca
|
2024-09-10 07:14:52
|
yeah makes sense
|
|
|
_wb_
|
2024-09-10 07:16:42
|
it seems to be basically a subflavor of DNG 1.6+, looking at https://www.loc.gov/preservation/digital/formats/fdd/fdd000594.shtml
|
|
2024-09-10 07:18:02
|
At e1 they should be able to do 48 MP easily — remember that's grayscale only, or rather, four channels of 12 MP each.
|
|
|
lonjil
|
2024-09-10 07:18:27
|
Does anyone know precisely which method of compression ProRaw uses? If the table of options above lists all possibilities, it seems that they are only using Lossless JPEG right now, so I presume JXL will be a pretty decent improvement?
|
|
|
|
veluca
|
2024-09-10 07:18:37
|
so probably less than 100ms or so
|
|
|
_wb_
|
2024-09-10 07:19:03
|
from the LoC article:
> On iPhone 14 Pro, Apple ProRAW images can be captured at two resolutions: 12 megapixels (approximately 25MB in size) or 48 megapixels (approximately 75MB).
|
|
|
|
veluca
|
2024-09-10 07:19:06
|
if it matches some data I saw in the past... yup, pretty substantial improvement
|
|
2024-09-10 07:19:42
|
1.5x to 2x or 3x depending on resolution I guess
|
|
2024-09-10 07:19:45
|
not bad at all
|
|
|
lonjil
|
2024-09-10 07:20:02
|
If they want to do their fancy processing with JXL, I assume they're still going to store debayered data
|
|
|
_wb_
|
2024-09-10 07:21:56
|
it will be interesting to see some samples of this
|
|
|
jonnyawsom3
|
2024-09-10 07:26:38
|
In my old testing, Abode's implementation was 20% smaller than lossless jpeg, but they also had strange tile sizes and were using effort 7 with decode speed 4. This morning I was telling Jyrki about it on twitter, 672 x 752 tiles https://discord.com/channels/794206087879852103/805176455658733570/1259094540082741338
|
|
2024-09-10 07:27:13
|
So it really comes down to if they're using a custom implementation or are just reusing the Adobe SDK with additions
|
|
|
_wb_
from the LoC article:
> On iPhone 14 Pro, Apple ProRAW images can be captured at two resolutions: 12 megapixels (approximately 25MB in size) or 48 megapixels (approximately 75MB).
|
|
2024-09-10 07:30:07
|
That also doesn't seem right, unless they're being stored uncompressed by default. My phone also takes 12 megapixel RAWs but they're 24 MB uncompressed DNGs
|
|
|
lonjil
|
|
KKT
iPhone 13 Pro Max after today's iOS 18 update:
|
|
2024-09-10 07:32:51
|
seems to match the image whose metadata was posted eariler
|
|
|
jonnyawsom3
|
|
lonjil
I was sent this:
```bash
% plutil -p System/Library/PreferenceBundles/CameraSettings.bundle/CameraSettings-JpegXL.loctable
{
[snip]
"en" => {
"CAM_PRO_RAW_ENCODING_FOOTER" => "JPEG-XL offers improved compression over JPEG, resulting in smaller file sizes. JPEG-XL support is available on iOS 17 and later, and macOS 14 and later."
"CAM_PRO_RAW_ENCODING_JPEG_LOSSLESS" => "JPEG Lossless (Most Compatible)"
"CAM_PRO_RAW_ENCODING_JPEG_XL_LOSSLESS" => "JPEG-XL Lossless"
"CAM_PRO_RAW_ENCODING_JPEG_XL_LOSSY" => "JPEG-XL Lossy"
"CAM_PRO_RAW_ENCODING_TITLE" => "ProRAW Format"
"CAM_SECONDARY_PHOTO_FORMAT_FOOTER_RAW12_JPEG_XL_LOSSLESS" => "• 18 MB for ProRAW at 12 MP"
"CAM_SECONDARY_PHOTO_FORMAT_FOOTER_RAW12_JPEG_XL_LOSSY" => "• 11 MB for ProRAW at 12 MP"
"CAM_SECONDARY_PHOTO_FORMAT_FOOTER_RAW48_JPEG_XL_LOSSLESS" => "• 46 MB for ProRAW at 48 MP"
"CAM_SECONDARY_PHOTO_FORMAT_FOOTER_RAW48_JPEG_XL_LOSSY" => "• 20 MB for ProRAW at 48 MP"
}
}
```
|
|
2024-09-10 07:34:24
|
They must have a *lot* of extra data, because 18 MB at 12 megapixels is almost 3x larger than the JXL compressed DNGs I get from those 12 megapixel files from my phone
Or thinking about it, a much lower effort maybe with the decode speed filesize bloat
|
|
|
lonjil
|
2024-09-10 07:35:05
|
does anyone have typical compression ratio figures for JPEG-LL?
|
|
|
jonnyawsom3
|
|
Compared to my uncompressed source DNGs, JXL reaches 77% compression, and the old lossless with full compatibility is roughly 70%, or in terms of improvement
22.5 MB, 6.67 MB, 5.25 MB respectively. Final filesize is 20% smaller with JXL
Unfortunately the effort setting does nothing, so I can't test effort 1 or 9
|
|
2024-09-10 07:36:11
|
Might be vaguely useful
|
|
|
_wb_
|
2024-09-10 07:38:23
|
12 megapixels is 24 megabytes uncompressed if you assume the data is 16-bit bayer data; if it's 12 megapixels of debayered RGB pixels in 16-bit then it would be 72 MB uncompressed
|
|
|
jonnyawsom3
|
2024-09-10 07:42:48
|
Riight, forgot they use Linear
|
|
|
_wb_
|
|
lonjil
does anyone have typical compression ratio figures for JPEG-LL?
|
|
2024-09-10 07:43:33
|
which kind of lossless JPEG is DNG even using? There's the lossless mode from the original 1992 jpeg spec (which is basically just like a DC-only jpeg with some slightly better prediction, iirc), but there's also JPEG LS from 1999, and in particular JPEG LS part 2 from 2003.
|
|
2024-09-10 07:44:15
|
I would assume/hope they're using JPEG LS part 2, which is actually pretty decent as far as lossless compression goes. IIRC it is also used in DICOM.
|
|
2024-09-10 07:44:44
|
as in: about as good as lossless JPEG 2000
|
|
|
lonjil
|
2024-09-10 07:45:27
|
I think it's the original 1992 one but I'm far from sure
|
|
|
_wb_
|
2024-09-10 07:45:29
|
(for photographic images — none of these are any good at nonphoto)
|
|
2024-09-10 07:46:12
|
guess I'll have to read a bit of https://helpx.adobe.com/content/dam/help/en/photoshop/pdf/DNG_Spec_1_7_1_0.pdf
|
|
|
lonjil
I think it's the original 1992 one but I'm far from sure
|
|
2024-09-10 07:52:23
|
looks like you're right. So in that case there should be a pretty nice improvement when moving from lossless JPEG to lossless JXL
|
|
|
lonjil
|
2024-09-10 08:00:35
|
25 MB to 18 MB according to Apple's own numbers. 28% reduction. Or 75 to 46 for 48 MP, 39%.
|
|
|
_wb_
|
2024-09-10 08:23:37
|
Not bad for on-device gains. I suppose you could later do a re-encode at higher effort for archiving.
|
|
|
CrushedAsian255
|
2024-09-10 08:50:18
|
Not sure if already said but I use Apple ProRAW and this is what I found
|
|
2024-09-10 08:50:25
|
It’s a DNG with extra metadata
|
|
2024-09-10 08:50:33
|
It’s been debayered
|
|
2024-09-10 08:50:56
|
It uses 10 / 12 (not sure) big Lossless JPEG (1992)
|
|
2024-09-10 08:51:26
|
File sizes:
12 MPx: 20-35 MB
48 MPx: 70-130 MB
|
|
|
lonjil
I was sent this:
```bash
% plutil -p System/Library/PreferenceBundles/CameraSettings.bundle/CameraSettings-JpegXL.loctable
{
[snip]
"en" => {
"CAM_PRO_RAW_ENCODING_FOOTER" => "JPEG-XL offers improved compression over JPEG, resulting in smaller file sizes. JPEG-XL support is available on iOS 17 and later, and macOS 14 and later."
"CAM_PRO_RAW_ENCODING_JPEG_LOSSLESS" => "JPEG Lossless (Most Compatible)"
"CAM_PRO_RAW_ENCODING_JPEG_XL_LOSSLESS" => "JPEG-XL Lossless"
"CAM_PRO_RAW_ENCODING_JPEG_XL_LOSSY" => "JPEG-XL Lossy"
"CAM_PRO_RAW_ENCODING_TITLE" => "ProRAW Format"
"CAM_SECONDARY_PHOTO_FORMAT_FOOTER_RAW12_JPEG_XL_LOSSLESS" => "• 18 MB for ProRAW at 12 MP"
"CAM_SECONDARY_PHOTO_FORMAT_FOOTER_RAW12_JPEG_XL_LOSSY" => "• 11 MB for ProRAW at 12 MP"
"CAM_SECONDARY_PHOTO_FORMAT_FOOTER_RAW48_JPEG_XL_LOSSLESS" => "• 46 MB for ProRAW at 48 MP"
"CAM_SECONDARY_PHOTO_FORMAT_FOOTER_RAW48_JPEG_XL_LOSSY" => "• 20 MB for ProRAW at 48 MP"
}
}
```
|
|
2024-09-10 08:51:44
|
Also “JPEG-XL”
|
|
|
_wb_
Not bad for on-device gains. I suppose you could later do a re-encode at higher effort for archiving.
|
|
2024-09-10 08:57:11
|
I also hope you can recompress older images, I have almost 600 TB of DNG images that could benefit from being JXL-ified
|
|
2024-09-10 08:57:21
|
Also I don’t mean using Adobe’s tools. They suck
|
|
|
jonnyawsom3
|
2024-09-11 01:38:51
|
Part of me wonders if extracting, merging, encoding with cjxl and then implanting the new single tile would work at all
|
|
|
CrushedAsian255
|
2024-09-11 02:02:46
|
you would also have to fix the offsets
|
|
|
Oleksii Matiash
|
|
CrushedAsian255
I also hope you can recompress older images, I have almost 600 TB of DNG images that could benefit from being JXL-ified
|
|
2024-09-11 06:15:58
|
600 TB? O_o
|
|
|
CrushedAsian255
|
2024-09-11 07:21:26
|
GB*
|
|
2024-09-11 07:21:29
|
Oops
|
|
2024-09-11 07:21:37
|
Wish I have 600 TB
|
|
|
TheBigBadBoy - 𝙸𝚛
|
2024-09-11 09:01:19
|
but not 600 TB of DNGs <:KekDog:805390049033191445>
|
|
2024-09-11 09:01:45
|
that would be a fucking pain to deal with it
|
|
|
CrushedAsian255
|
|
Meow
|
2024-09-11 05:23:19
|
> AVIF for the foreseeable future better for animated images and etc making it more likely not replaced by JPEG-XL for such use cases.
Is that true? https://forums.macrumors.com/threads/iphone-16-pro-supports-jpeg-xl-format.2435587/page-4?post=33381563#post-33381563
|
|
|
lonjil
|
2024-09-11 05:25:10
|
animated AVIF is AV1 video, so yeah, obviously it works better if you want video
since JXL doesn't do video
|
|
|
HCrikki
|
2024-09-11 06:09:12
|
'animated' avif is just av1 video and still has the same limits and inadequacies for lossless animations. avif in such context seems to *require* any form of hardware acceleration (at the cost of unavoidable latency if hw versions of codecs used), whereas animated jxl decodes fine and fast in software
|
|
|
RaveSteel
|
2024-09-11 06:23:15
|
AVIF has the advantage of an existing encoder in FFmpeg for animations, as well as the dedicated avifenc encoder that better handles animations compared to cjxl. cjxl still requires an intermediate APNG at this time
|
|
2024-09-11 06:31:00
|
Also, in my limited testing, AVIF uses less CPU than JXL
|
|
|
spider-mario
|
2024-09-11 06:31:14
|
`cjxl` supports GIF and APNG input
|
|
2024-09-11 06:31:17
|
whether that’s intermediate depends on the source
|
|
2024-09-11 06:31:29
|
I’d say those two cover quite a bit of ground already
|
|
|
RaveSteel
|
2024-09-11 06:33:09
|
True, but I'd argue that for most cases GIF as intermediate Format is not really useful due to its limitations. And APNG has no support for the YUV colourspace, so colours may differ depending on the input
|
|
|
RaveSteel
Also, in my limited testing, AVIF uses less CPU than JXL
|
|
2024-09-11 06:34:32
|
Just a single datapoint, but compare the following files and their CPU usage while playing
|
|