Linear/16-bit RGBA display output too dark in Aximmetry.

 

When running Unreal in Linear mode, we receive 16-bit RGBA feeds as expected. When Aximmetry outputs the 16-bit data for display on a 8-bit display, how do we control the conversion that gets applied?
The 8-bit signal appears way too dark, which makes us think Aximmetry is not using the right conversion to convert back the linear signal from Unreal to 8-bit RGB.

   jim4586

 
Profile Image
Eifert@Aximmetry
  -  

Hi Jim,

First, you probably want to make sure that all the textures and videos you use were also recorded in the right color space when using Linear.

Aximmetry will not automatically convert an output bit format based on where or how that output is connected.

You can change from 16-bit to 8-bit format with the Converter module in the Flow Editor.

Warmest regards,

 
Profile Image
jim4586
  -  

Hmm. No, this simply looks like Aximmetry is not using the right transform when displaying the linear content from Unreal on a rgb screen. It’s too saturated which means you apply the wrong gamma curve probably when converting linear to rgb for display.

 
Profile Image
Eifert@Aximmetry
  -  

Hi Jim,

Which gamma curves do you use in the Converter module? Or which one do you think is wrong?

Warmest regards,

 
Profile Image
jim4586
  -  

We are not using custom converters node, but whatever Aximmetry is using to convert linear output from Unreal to display on a monitor is not the right gamma curve. It’s over saturated. This is the curve Aximmetry uses internally to convert the linear data for display on rgb888.

 
Profile Image
Eifert@Aximmetry
  -  

Hi Jim,

Aximmetry doesn't use anything to convert the linear output from Unreal to display on a monitor. Aximmetry will not automatically convert an output bit format based on where or how that output is connected. You have to set up this conversion with the Converter module.

Warmest regards,

 
Profile Image
jim4586
  -  

That’s not correct.

Aximmetry does use something to display the image. Otherwise the linear data would look very desaturated. You cannot actually display linear data without converting it. So you have some kind of transform, and this looks a lot like the wrong gamma curve since otherwise it wouldn’t like this…

 
Profile Image
Eifert@Aximmetry
  -  

Hi Jim,

We will need more information.
Where did you set Unreal in Linear mode? The Unreal video output goes through a camera compound, if so, which one?
Can you share a screenshot of the Unreal video output when peeked?

Warmest regards,

 
Profile Image
jim4586
  -  

Just put Unreal to 16-bit output then you get Unreal looking very desaturated, but in Aximmetry all the pictures from Unreal are over saturated (wrong gamma curve). If you have the right gamma curve, the pictures in Aximmetry would look like close Unreal at 8-bit (before the switch to linear). It’s over saturated in Aximmetry.

 
Profile Image
Eifert@Aximmetry
  -  

Hi Jim,

Did you put Unreal to 16-bit output by changing the pipeline color space in Aximmetry (File->Properties->Rendering)?
Does an Aximmetry compound process the Unreal compound's video output?

Warmest regards,


 
Profile Image
jim4586
  -  

Yes and yes.

 
Profile Image
Eifert@Aximmetry
  -  

Hi Jim,

Just by changing the pipeline color space in Aximmetry you see different colors? And you have a normal 8-bit display?
If so, can you try this with a new Unreal project with starter content, to see if you experience the same behavior? Cause I was unable to recreate this.

Warmest regards,

 
Profile Image
jim4586
  -  

As said before you need to change the color space in Unreal to linear. Otherwise Unreal creates just 8 bit color. 

You will see that Aximmetry when displaying the linear data, does not use the right gamma / SRGB conversion.

 
Profile Image
Eifert@Aximmetry
  -  

Hi Jim,

Unreal renders in linear color space. There is no simple way to change that. What you can do for example is to change the textures to sRGB or linear which Unreal will convert to linear before rendering, or change the tone mapping of the rendered image...

I am still not sure what you change in Unreal.

Warmest regards,

 
Profile Image
jim4586
  -  

Again the problem is not Unreal. The problem is how Aximmetry renders linear to display those images then on a RGB8 monitor. You are using the wrong gamma curve which makes the images from unreal appear too saturated/dark.

unreal is set to linear that’s all. No changes, but your image pipeline in Aximmetry has a bug.

 
Profile Image
Eifert@Aximmetry
  -  

Hi Jim,

Do you use AR Camera?
If so, you can read here why you will see a different image in Aximmetry than in Unreal in the case of AR Camera: https://my.aximmetry.com/post/2186-unreal-ar-graphics-and-post-processing-v

Warmest regards,

 
Profile Image
jim4586
  -  

I am not saying it’s different. I am saying Aximmetry conversion of Unreal linear data to rgb8 for display is using the wrong gamma / linear conversion which is not consistent how Unreal encodes the linear data.

Here is an article that gives some back drop. There can be many different functions to convert from linear to RGB. And the one used by AXIMMETRY  is not right / comes our way too saturated when applied to linear color data from Unreal.

https://prolost.com/blog/aces

 
Profile Image
Eifert@Aximmetry
  -  

Hi Jim,

Just to confirm, you experience this problem with the AR camera or with other cameras? Cause they work very differently in this aspect.

Warmest regards,

 
Profile Image
jim4586
  -  

Was this issue fixed? Saw some updates listed in the release notes.

 
Profile Image
Eifert@Aximmetry
  -  

Hi Jim,

I am not sure what was your exact problem or with which camera compound. However, Aximmetry is adding more and more 10-bit support, like in the last version 10-bit HDR formats were added for video recording. So your issue might no longer exist.

Warmest regards,

 
Profile Image
Eifert@Aximmetry
  -  

Hi Jim,

We're excited to share that the latest version of Aximmetry, version 2023.2.0, has been released today!
The new version adds support for 10-bit and HDR on monitors and LED walls. And adds support for 10-bit and different color spaces, including HDR ones, on SDI output devices. They can be selected in the new Color space option in the Mode settings of the device. Also added a Keep option to allow using a custom LUT for output encoding.

To learn more about all the changes and improvements included in this version of Aximmetry, please visit the following link: https://aximmetry.com/learn/software-version-history/

Warmest regards,