quietvoid / pgen_client

Utility to control a Raspberry Pi with a PGenerator installation
GNU General Public License v3.0
11 stars 1 forks source link

pgen_client - PGenerator client

Utility to control a Raspberry Pi with a PGenerator installation.
Includes both manual & automatic calibration features.

Built on top of egui, kolor and ArgyllCMS.

Features

Building

Dependencies:

cargo build --release

 

Device

The Raspberry Pi must be setup with an installation of PGenerator.
pgen_client was only tested with a Raspberry Pi 4B device. Some features may not be working on older devices.

Configuring the PGenerator output

First, the program communicates to the PGenerator device through TCP over the network.
So you will need to start by figuring out the IP address to connect to.

You should then be able to connect to the default port, 85.

Configurations:

HDR metadata / DRM infoframe is for the metadata signaling in HDMI for HDR output. It is only used for the HDR dynamic range mode.
The HDR mode can also switch to HLG if the HLG EOTF is selected.

With the exception of Display mode and Dynamic range configurations:

Configuring the test patterns

Once the PGenerator device is properly connected, test patterns can be displayed. The most important settings here are:

With both internal/external pattern generators, the patches are sent at the configured size/position in pgen_client.

Info about Quant range and the pattern limited range config:

For patch and background colours, they are either selected manually or through a pattern generator as described below.
Patterns can be sent manually to test the configuration.

 

External pattern generator

Currently only supports displaying 10 bit patterns from DisplayCAL.
DisplayCAL must be configured with a Resolve display.

Instructions:

  1. To connect, start a calibration.
  2. Select the External pattern generator and click the Start generator client button.
  3. DisplayCAL should start sending test patterns to the display.

 

Internal pattern generator

pgen_client can be used for simple manual calibration.
It supports basic presets as well as the ability to load custom CSV patch lists.
Usage is targeted at more advanced users that know how to interpret the measurements data.

ArgyllCMS must be installed on the system and the executables present in PATH.

[!WARNING] I cannot guarantee that the displayed measurement data is accurate or even correct.
My knowledge of colour math is limited and I have not done extensive verification.
Do consider double checking results with other calibration software such as DisplayCAL or HCFR.

Instructions:

  1. Select the Internal pattern generator.
  2. Set up the spotread CLI arguments and start spotread.
  3. Set the min/max target brightness as well as target primaries for the calibration.
  4. Load a patch list to measure.
  5. Measure all patches or select a single one and measure it.