13thsymphony / hdrimageviewer Goto Github PK
View Code? Open in Web Editor NEWUWP app to view high dynamic range (HDR) and wide color gamut (WCG) images.
Home Page: https://13thsymphony.github.io/
License: MIT License
UWP app to view high dynamic range (HDR) and wide color gamut (WCG) images.
Home Page: https://13thsymphony.github.io/
License: MIT License
Does the viewer have some sort of file size limit? The image is definitely fine, I have tested it in Photoshop.
This will enable image comparison which is a critical use case.
Ideally would use the hotkeys should be those from WPV and even Photos if they don’t conflict.
Arrow keys for next image in folder
F11 for full screen
Alt-enter for full screen too
Loading 8K (7680x4320) images into HDR + WCG Image Viewer results in a black screen. 4K resolution works fine however.
I use ACR16.4 to edit a RAW file in HDR mode, then export it as AVIF with HDR Rec. 2020 color space, and high quality, but this app says it's an invalid photo. However, I can open it by Edge with the correct HDR effect
DSCF3304-HDR.zip
There seems to be a memory leak in the app. You can see this by opening images one after the other and checking the memory usage: it will go up after opening each image and never goes back down until the app is closed.
Current workaround is to set MaxCLL to sentinel when this type of image is detected.
I did some tests using HDR + WCG viewer using one of our NVIDIA GSYNC HDR10 monitor prototypes. Our debug tools can observe the exact HDR PQ12 codes coming in from the PC to the monitor. And it looks like brightness of a .hdr image displayed by HDR + WCG is about 8.5x too high at default brightness and when selecting Render Effect = No Effect (all other settings have special transformations we don’t want for our tests).
Consider the attached 4k ‘simultaneous contrast’ style test image we use. It has a 1400 nits bright bar at top. At bottom it has a greyscale with 14 steps, starting with 0.02 nits and increasing by 1.5x for every step to the right. We verified that the .hdr brightness is as we want it with 'tev' (see table).
When we display this with an in-house viewer, we get PQ12 values that translate to the correct nits (within RGBE quantization accuracy). Table below shows PQ12 values/nits values we get with HDR+WCG viewer.
We’d be very interested to see a fix, so we can recommend use of this viewer for our partners/monitor makers.
ContrastTest_0p02_1p5_3840_2160.zip
PS: we did these experiments with Win10 21H2 (19044.1706), and a 27” 4k 144 Hz 1000 nits GSYNC Ultimate monitor (max 1107 nits).
Is it possible/feasible to do a port for Xbox?
Thanks for making this great piece of software! I use it all the time to help figure out what's going on in HDR space.
For some reason, the Estimated MaxCLL calculation changes pretty drastically based on the window size. I've noticed it report 300 nits darker if the window is smaller in images that are 600 nits peak.
Is this because it composites the current frame and grabs the brightest pixel rather than looking at the full-res image?
F or H key press force you to rezoom manually to desired level
e.g. single app view with a slider
Hello,
I found vulnerability in HDRImageViewer.
where can i report this?
Unclear if this is technically possible (reading the global boost value).
@13thsymphony is it possible to add another input for command line, which allows switching between the tone mapping option? Thank you for the help!
e.g. blinking lines effect or checkerboard effect
Also a mode to show what would be clipped when rendering on an SDR monitor (more explicit than the "SDR as grayscale" mode). Both for SDR 1.0 white, and an adjustable SDR monitor limit (E.g. 200 nits scRGB).
When showing content with a color profile, the black level is elevated beyond where it should be.
And possibly current zoom via a checkbox option?
HDR peaks clipping:
\grfxshare\Sigma-GRFX\AdvancedColor\Images\Affinity_HDR-merged
_DSC1314_HDR-merge.hdr
Gray floor:
\grfxshare\Sigma-GRFX\AdvancedColor\Images\chasb-hdr-ibl-images
zwinger_night_8k.hdr
Red Dead Redemption 2 18_01_2022 02_02_14.zip
I just get the message: "Unable to load this image" "The image file may be corrupted or invalid.".
I attached a sample screenshot. I take these screenshots through the xbox game bar/app, and if I change the resolution to 4k on my other monitor, the screenshots can be opened just fine. It's possible the issue is in the way the screenshot is saved, and not in your app, but I have no reason to believe that.
I was trying to debug and fix the issue myself but I'm unable to build yet, as the instructions are not clear to me (and I have no time to delve into it atm): if this is merged #46 I could still look into the issue myself.
SDR screen to view HDR pictures, often use the -forcebt2100
, but every time you use cmd to open the software is too troublesome, I want to add the option to turn this parameter on or off in the toolbar of the app.
My current solution way:
Create a .bat
file to open the viewer, you can drag the image from any position of the computer to the bat to view it with forcebt2100
.
You can also run the .bat
directly and open the picture in the app.
Disadvantages: A cmd window will open, you need to close it manually.
And: I used the B2E tool to generate a .exe
file that hides the cmd window, with the same effect.
BAT:
@echo off
set filename=%~nx1
if defined filename (hdrimageviewer -forcebt2100 - input:%~nx1
) else (
hdrimageviewer -forcebt2100
)
HDRImageViewerRenderer::m_dispInfo is not correctly reset, likely DisplayInformation needs to be re-registered, or potentially all of HDRImageViewerRenderer.
Display: min, max, maxfall
Image: min, average, max
thank for the app !
how does this app can perfectly displays hdr still images ?
why does .jxr, .exr, .hdr, displays perfectly and why .tif is all dull and washed out from the same hdr .jxr source ?
how does the app signal to windows that it s hdr content and makes the hdr/sdr slider not affects the brightness ?
is there any other viewer with this hdr display capabilities or is the only one besides microsoft photo for .jxr ?
also do you know something other than jxrlib to convert back an .exr, .hdr, back to .jxr while keeping the rec. 2100 color space, st. 2084 pq eotf ?
what are the metadata or the tags that makes the images displays in hdr like that and what tag that make other images not displays in hdr like that ?
nothing appears with imagemagick or exiftool between 2 version of the same .jxr screenshot 1 hdr the other sdr ? everything reports srgb while it s absolutely not the case for .jxr screenshots or .exr, .hdr exports....
where is the documentation for all of that ?
Needs to be robust to RS5 and below.
@13thsymphony is a very nice tool. Just wondering is it possible to make the software into an .exe file, so that I can call it in cmd, and with “-f” to specify a file name; “-t” to specify render effect; “-b” to specify brightness, and the default is to make the image fullscreen, with the UI being hide?
I see this nondeterminstically/spuriously - occasionally a histogramData[399]
value of greater than 0.01, which is known incorrect for the image. Right now, this is worked around by ignoring the last bucket.
I've converted an image with ImageMagick from TIF in the ProPhoto RGB space to a .hdr file with primaries set to match this color space. Despite this, the color profile is clearly being interpreted as sRGB in this viewer.
See tiff and hdr file here.
https://jbondhus-sharing.s3.us-east-1.amazonaws.com/2022/2022-11-30/attachment.7z
See below for a comparison between the original TIFF and what the HDR image viewer shows of the .HDR file I generated.
The file header is as follows in plain text, which looks correct to me - primaries of ProPhotoRGB...
#?RADIANCE
EXPOSURE=0.1
GAMMA=1
PRIMARIES=0.734699 0.265301 0.159597 0.840403 0.036598 0.000105 0.345704 0.35854
FORMAT=32-bit_rle_rgbe
Additional enhancement is a 2D histogram, similar to a spectrum analyzer for audio.
I'm wondering if it's possible to add batch sdr converting command line in this app. It's easy to add and so useful for game screenshots sharing. Thanks.
So I have a Pro Display XDR, using this app to open a picture at full screen of 4K resolution works, but 6K prompts file corruption.
Might correlated to #47
When viewing an HDR image that is tonemapped, offer option to export to an SDR image format so it can be viewed on any computer.
These types of images that are a combination of a regular SDR image and an embedded gain map are rising in popularity after Google and others have added support for them. They are however not displayed properly in this app and just show as SDR.
Based on user feedback
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.