- From: Stephanie Hurlburt <stephanie@binomial.info>
- Date: Tue, 14 Nov 2023 08:52:56 -0500
- To: Richard Geldreich <rich@binomial.info>
- Cc: "Chris Blume (ProgramMax)" <programmax@gmail.com>, Leo Barnes <lbarnes@apple.com>, "Chris Blume (W3C Calendar)" <noreply+calendar@w3.org>, "Portable Network Graphics (PNG) Working Group" <public-png@w3.org>
- Message-ID: <CAO0uvMm5YX=P0fCas9vYKWsL3_NFEMsChcmwW-gtR61a43SAig@mail.gmail.com>
To expand on Chris' point, yes, the lines between GPU compression and other compression methods have been blurring. We are spec editors for glTF, for instance-- the standard in 3D graphics on the web, for which many companies are a part of (Amazon, Meta, Google, MPEG, Autodesk, Blender, Wayfair, Uber, Mozilla, IKEA, and many more). And in this spec, PNG is a common format used for textures when quality matters and it's not always about GPU perf. See: https://github.com/KhronosGroup/glTF-Tutorials/blob/master/gltfTutorial/gltfTutorial_012_TexturesImagesSamplers.md .. We also built transcoders, like Chris mentioned, that can help developers transition between lossless formats and GPU friendly formats when it is needed. But not every 3D developer is always trying to use block compression for everything all the time (in fact, not nearly as much as most people think!). It's been a little odd to be part of this group, to be honest. I don't think I've ever had my team called "game players" or "dishonest" in our second ever group call, or been so overwhelmed with people who just don't get such a common use case. But that's why we're here, to represent this massive section of the industry that uses PNGs all the time, where PNGs aren't considered an irrelevant format in the slightest. And if PNG is going to call itself an HDR format, let's not leave out what HDR means to that part of the industry. That's all we're advocating for. Always welcome to chat-- in an actually friendly way-- if anyone has questions as to our use case or wants to educate me on their use cases more. I'm always willing to learn more about how others work, without devaluing my own needs. I'm sure we can find a nice balance. My e-mail is stephanie@binomial.info and anyone is welcome to message me 1:1 there. Stephanie On Mon, Nov 13, 2023 at 5:39 PM Richard Geldreich <rich@binomial.info> wrote: > > (Oh, and also if the floats compress roughly as well.) > > I think lossless half-float .PNG can actually beat .EXR in Deflate mode > for several reasons, but I need to do some testing with well-configured > software for both formats and see what happens. PNG's predictors are > valuable here. > > Note lossy half-float PNG using a RDO (rate distortion optimization) > encoder with a HDR colorspace error metric is also solidly on our radar for > the future. We use such technology today on various GPU texture formats. > > > > > > On Mon, Nov 13, 2023 at 5:27 PM Richard Geldreich <rich@binomial.info> > wrote: > >> > The reason I said "traditionally" above is Intel's new chips have >> hardware zlib decompression. >> >> AMD also has supported hardware Deflate for many years, which is exposed >> on at least one major game console. I don't know when (if ever) it'll be >> exposed on common OS's, but hopefully one day. >> >> On Mon, Nov 13, 2023 at 4:46 PM Chris Blume (ProgramMax) < >> programmax@gmail.com> wrote: >> >>> RE: hardware acceleration & PNG >>> >>> You are right that traditionally, a pre-computed texture in a game might >>> use a block compression that the GPU can handle directly. Streaming >>> compressions (like zlib, which PNG uses) aren't traditionally used in the >>> hardware itself. These block compressions have major limitations, though. >>> They are lossy in ways that are sometimes unacceptable. Which is where PNG >>> (and also TGA) fill the void. >>> >>> Rich and Stephanie at Binomial created a transcoder that goes from a >>> streaming compression to a block compression that the GPU uses. So the line >>> between hardware acceleration and PNG is already becoming blurred. >>> >>> >>> The reason I said "traditionally" above is Intel's new chips have >>> hardware zlib decompression. >>> https://www.intel.com/content/www/us/en/architecture-and-technology/intel-quick-assist-technology-overview.html >>> So the line is becoming even more blurred than it already was. >>> >>> >>> >>> RE: Windows compositing HDR using half floats >>> >>> When PNG was first created, floats were slow and rarely ever useful for >>> images. Ints were used throughout the pipeline. During that time, it was >>> natural for PNG to use ints for storage. As (half) floats become more >>> common, the conversion from int to float might become a needless step. This >>> really hinges on if an int texture rendering to a (half) float target >>> introduces inefficiencies. I don't know the answer to that. (Oh, and also >>> if the floats compress roughly as well.) >>> >>> On Mon, Nov 13, 2023 at 4:34 PM Richard Geldreich <rich@binomial.info> >>> wrote: >>> >>>> >But is PNG really the right choice of format for real-time stuff? >>>> >>>> BTW - from my perspective, which is browser/video games/real-time >>>> rendering oriented, I could also ask "is PNG really the right choice for >>>> broadcast stuff"? >>>> >>>> >>>> On Mon, Nov 13, 2023 at 2:45 PM Richard Geldreich <rich@binomial.info> >>>> wrote: >>>> >>>>> .PNG is already incredibly popular in video games, real-time >>>>> rendering, visualization, etc. They already use half-floats at >>>>> various stages in their pipelines. >>>>> >>>>> Note the Windows compositer internally now uses IEEE half-floats: >>>>> >>>>> >>>>> https://learn.microsoft.com/en-us/windows/win32/direct3darticles/high-dynamic-range >>>>> >>>>> FP16: "When Advanced Color is enabled, the DWM performs its >>>>> composition using IEEE half-precision floating point (FP16), eliminating >>>>> any bottlenecks, and allowing the full precision of the display to be used." >>>>> >>>>> [image: image.png] >>>>> >>>>> On Mon, Nov 13, 2023 at 2:12 PM Leo Barnes <lbarnes@apple.com> wrote: >>>>> >>>>>> >>>>>> >>>>>> On Nov 13, 2023, at 18:56, Richard Geldreich <rich@binomial.info> >>>>>> wrote: >>>>>> >>>>>> A note about marketing "HDR" PNG: What PNG is calling "HDR" does not >>>>>> have nearly enough dynamic range to be called "HDR" in some segments of the >>>>>> industry, such as in real-time rendering. Even 12-bits with a transfer >>>>>> function is nowhere near enough for our needs. Importantly, we need at >>>>>> least 5-bit exponents. >>>>>> >>>>>> >>>>>> But is PNG really the right choice of format for real-time stuff? >>>>>> Real-time stuff tends to require HW acceleration and PNG is not exactly >>>>>> easy to accelerate with HW. >>>>>> >>>>>> I don't disagree with the use-case, but I don't necessarily think all >>>>>> formats have to support all use-cases. >>>>>> >>>>>> Cheers, >>>>>> //Leo >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> On Mon, Nov 13, 2023 at 12:23 PM Chris Blume (W3C Calendar) < >>>>>> noreply+calendar@w3.org> wrote: >>>>>> >>>>>>> View this event in your browser >>>>>>> <https://www.w3.org/events/meetings/77dd00ce-0351-4282-bab9-bdef33c6d076/> >>>>>>> PNG marketing meeting Upcoming Confirmed >>>>>>> >>>>>>> 27 November 2023, 10:00 -11:00 EST5EDT >>>>>>> >>>>>>> Event is recurring every other week on Monday, starting from >>>>>>> 2023-11-27, until 2024-11-13 >>>>>>> Portable Network Graphics (PNG) Working Group >>>>>>> <https://www.w3.org/groups/wg/png/calendar/> >>>>>>> >>>>>>> The primary meeting link ishttps:// >>>>>>> w3c.zoom.us/j/85136933003?pwd=SW9ZaFV0UEpydkU2RXNMYnEraE85QT09 >>>>>>> Joining Instructions >>>>>>> >>>>>>> Instructions are restricted to meeting participants. You need to log >>>>>>> in >>>>>>> <https://auth.w3.org/?url=https%3A%2F%2Fwww.w3.org%2Fevents%2Fmeetings%2F77dd00ce-0351-4282-bab9-bdef33c6d076%2F> >>>>>>> to see them. >>>>>>> Participants Organizers >>>>>>> >>>>>>> - Chris Blume >>>>>>> - Stephanie Hurlburt >>>>>>> >>>>>>> Groups >>>>>>> >>>>>>> - Portable Network Graphics (PNG) Working Group >>>>>>> <https://www.w3.org/groups/wg/png/> (View Calendar >>>>>>> <https://www.w3.org/groups/wg/png/calendar/>) >>>>>>> >>>>>>> Report feedback and issues on GitHub >>>>>>> <https://github.com/w3c/calendar>. >>>>>>> >>>>>> >>>>>>
Attachments
- image/png attachment: image.png
Received on Tuesday, 14 November 2023 13:59:26 UTC