Utility to control a Raspberry Pi with a PGenerator installation.
Includes both manual & automatic calibration features.
Built on top of egui, kolor and ArgyllCMS.
DeviceControl
.
ArgyllCMS
' spotread
utility to measure colour patches.Dependencies:
cargo build --release
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.
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:
Display mode
: the resolution/refresh rate combination to use for the display.Color format
: RGB or YCbCr is possible, whether it works is dependent on the display.Quant range
: Full/Limited range for the display output. Also requires the display to support the selected option.Bit depth
: Sets the output bit depth for the HDMI data.Colorimetry
: Sets the HDMI colorimetry flag. This is used by the display to interpret the pixels correctly.Dynamic range
: Allows switching the output mode to SDR
, HDR10
or Dolby Vision
.
PGenerator
software. The display must support the selected mode.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:
PGenerator
software be restarted before they are applied to the output.Restart PGenerator software
or the Set AVI/DRM infoframe
buttons.Once the PGenerator
device is properly connected, test patterns can be displayed.
The most important settings here are:
Patch precision
: Whether to use 8 bit or 10 bit patches.
Patch size
: Size the patches take on the display, in % windows.Position
: How the patches are positioned on the display. This can be a preset position or specific pixel coordinates.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:
Full
:
Limited
:
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.
Currently only supports displaying 10 bit patterns from DisplayCAL.
DisplayCAL must be configured with a Resolve
display.
Instructions:
External
pattern generator and click the Start generator client
button.
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 asDisplayCAL
orHCFR
.
Instructions:
Internal
pattern generator.spotread
CLI arguments and start spotread
.