An open collection of tools and experiments for rendering wide-gamut scene-linear data into an image for an SDR or HDR display device.

Open Display Transform

An open collection of tools and experiments for rendering wide-gamut scene-linear data into an image for an SDR or HDR display device.

All tools are available as a node for Nuke or Nuke Non-Commercial, and as a DCTL for Resolve Studio. Matchbox shaders are in development.

Display Transforms

  • OpenDRT
    A simple and robust display transform based on CIE 2006 LMS and the Michaelis-Menten Equation.
    Neutral appearance. Color preserving where possible, faithful to input image data.
  • rgbDT
    A classic per-channel display-transform. Uses a custom rendering gamut designed to handle input colorimetry beyond the bounds of the spectral locus without sacrificing image appearance.
  • JzDT
    Another experiment using the max(r,g,b) norm and the JzAzBz LMS space.

Look Transforms

A collection of tools designed to creatively adjust image appearance.

Documentation

There is a collection of documentation available on the wiki.

Comments
  • Nayatani_HK.dctl with DR17/ATI/W10

    Nayatani_HK.dctl with DR17/ATI/W10

    Dear Jed,

    Thank you in advance for your work/updates.

    The first and the newer Nayatani_HK.dctl are not working in Windows 10 with Resolve 17.2.2 and ATI Radeon VII.

    Propably it has a syntax in code that is not supported by ATI GPU.

    Gamut Compress 0.7 had a similar issue, but you/Nick have solved it: https://github.com/jedypod/gamut-compress/issues/4

    Thank you.

    Ted.

  • DCDM Inverse ODT

    DCDM Inverse ODT

    Hi! Here is the example of what I was talking about. Even with rec709 limited gamut, XYZ image can't be completely used as an input for DCDM. And even if a hard clip the input image far from 0 and 1 values.

    I've used Rec709 curve because if I use power law gamma or just Linear, the image that goes into Inverse ODT doesn't contain colors that cause this artifact.

    01

    02

    03

    And here is what happens if I replace Inverse ODT and ODT by each other: 04

  • Dolby presets not preserving red objects hue

    Dolby presets not preserving red objects hue

    It's most noticeable with 100 nit vs others. But with others it's also noticeable. The more nits - the more red jacket shifts to the orange. Not sure if this an issue or it behaves as it should. And I apologize for the giant images :) It's probably because they are vertical.

    Screenshot 2021-11-04 053037

    Screenshot 2021-11-04 053051

    Screenshot 2021-11-04 053124

    Screenshot 2021-11-04 053140

    Screenshot 2021-11-04 053150

  • NotoriousSix_Vibrance - random black pixels with 'chromaticity-linear' checkbox

    NotoriousSix_Vibrance - random black pixels with 'chromaticity-linear' checkbox

    I get these artifacts with all default settings of the DCTL. But when I turn off "chromaticity-linear" they go away. And all the other look tools don't have this. Screenshot 2021-10-20 005129

    Looks like they are completely random. When I change anything prior the DCTL, they appear in random places. Does it look like a platform specific issue? I guess, you don't get this on your system.

    And not to open a new issue for just one small thing, just add it here: Is Linear Grade pivot default correct? Looks like it is far from 0.18 now.

  • Negative values are white pixels now with OpenDRT

    Negative values are white pixels now with OpenDRT

    Hi! In OpenDRT v0.0.90b2 I get this, if the image has negative values. Screenshot 2021-10-20 004110

    By the way, this is the red jacket I was talking about. Its hue is different with different "dolby" presets.

  • N6 Value and Vibrance not working in Resolve

    N6 Value and Vibrance not working in Resolve

    Hi, Jedypod,

    I installed the N6 Value and N6 Vibrance dctls into Resolve and when I move the sliders they do nothing at all. Am I missing a step? Thanks for your help!

  • Inverse DRT issues

    Inverse DRT issues

    Hi! I get this when I try to inverse HDR DRTs. Looks like it turns high saturated colors into 0 in linear gamma.

    Screenshot 2021-11-22 064504

    And here is another thing, I've already asked about. But I'm not sure I understood your answer right. Is this expected and correct behavior? It is Inverse 1886 and then back to 1886. All the colors look different, even those that are low saturated.

    Screenshot 2021-11-22 064240

    Screenshot 2021-11-22 064312

    P.S. I've added OpenDRT into built-in Resolve ACES :) They've made it possible now to add custom IDT and ODT based on DCTL. Screenshot 2021-11-22 070057

multi-sdr-gps-sim generates a IQ data stream on-the-fly to simulate a GPS L1 baseband signal using a SDR platform like HackRF or ADLAM-Pluto.

multi-sdr-gps-sim generates a GPS L1 baseband signal IQ data stream, which is then transmitted by a software-defined radio (SDR) platform. Supported at the moment are HackRF, ADLAM-Pluto and binary IQ file output. The software interacts with the user through a curses based text user interface (TUI) in terminal.

Oct 29, 2022
Display array is a board that sets 6 ST7735 display with a resolution of 80x160px in a linear array sharing the clock, data, rs, backlight pins together
Display array is a board that sets 6 ST7735 display with a resolution of 80x160px in a linear array sharing the clock, data, rs, backlight pins together

The display array is a board that sets 6 ST7735 display with a resolution of 80x160px in a linear array sharing the clock, data, rs, backlight pins together, and leaving individual access to the cs lines of each display, This board allows you to display images with a resolution of 480x160px.

Dec 3, 2022
CaribouLite turns any 40-pin Raspberry-Pi into a Tx/Rx 6GHz SDR
CaribouLite turns any 40-pin Raspberry-Pi into a Tx/Rx 6GHz SDR

CaribouLite CaribouLite is an affordable, educational, open-source SDR platform that is also a HAT for the Raspberry-Pi family of boards (40-pin versi

Nov 27, 2022
OpenScan is an open-source document scanner app that enables users to scan hard copies of documents or notes and convert it into a PDF file. No ads. No data collection. We respect your privacy.
OpenScan is an open-source document scanner app that enables users to scan hard copies of documents or notes and convert it into a PDF file. No ads. No data collection. We respect your privacy.

OpenScan An open source app that enables users to scan hardcopies of documents or notes and convert it to a PDF file. No ads. No data collection. We r

Dec 1, 2022
The Vulkan Profiles Tools are a collection of tools delivered with the Vulkan SDK for Vulkan application developers to leverage Vulkan Profiles while developing a Vulkan application
The Vulkan Profiles Tools are a collection of tools delivered with the Vulkan SDK for Vulkan application developers to leverage Vulkan Profiles while developing a Vulkan application

Copyright © 2021-2022 LunarG, Inc. Vulkan Profiles Tools (BETA) The Vulkan Profiles Tools are a collection of tools delivered with the Vulkan SDK for

Nov 17, 2022
Night mode on any camera. Based on HDR+.
Night mode on any camera. Based on HDR+.

Burst Photo This is a macOS app written in Swift / SwiftUI / Metal that implements a simplified version of HDR+, the computational photography pipelin

Dec 2, 2022
Open-source node system framework, to change your algorithmic code into useful tools to create much more complicated simulations!
Open-source node system framework, to change your algorithmic code into useful tools to create much more complicated simulations!

Open-source node system framework, to change your algorithmic code into useful tools to create much more complicated simulations!

Nov 30, 2022
BMI_automatics-faceshielding-device - this is a project utilizing STM32, MATLAB,Softmax classifier to achieve a portable face shielding(mask) device

BMI_automatics-faceshielding-device this is a project utilizing STM32, MATLAB,Softmax classifier to achieve a portable face shielding(mask) device in

Dec 23, 2021
EDACS trunk tracking using RTL2832. rtl_fm, sdr++, gqrx, or gnuradio.
EDACS trunk tracking using RTL2832. rtl_fm, sdr++, gqrx, or gnuradio.

EDACS-FM Florida Man Edition EDACS 9600 Trunk Tracking software for Linux, *Nix, BSD systems (and maybe others) using two RTL2838 dongles(or anything

Jun 26, 2022
Radiosonde decoder plugin for SDR++
Radiosonde decoder plugin for SDR++

Radiosonde decoder plugin for SDR++ Build instructions Download the SDR++ source code: git clone https://github.com/AlexandreRouma/SDRPlusPlus Open th

Nov 18, 2022
Digital rain animation gif with glow squeezed into a raspberry pi pico and pimoroni pico-display
Digital rain animation gif with glow squeezed into a raspberry pi pico and pimoroni pico-display

pico-display-matrix Digital rain animation gif with glow squeezed into a raspberry pi pico and pimoroni pico-display or how to actually use all Flash

Sep 10, 2022
Simple command-line program for sharing the display image on a local network.

XCast is a simple server/client command line program for sharing screen under X. With XCast you have the ability to either pull the display from a rem

Dec 12, 2021
"Zero setup" cross-compilation for a wide variety of architectures.

"Zero setup" cross-compilation for a wide variety of architectures. xcross includes compact docker images and a build utility for minimal setup C/C++ cross-compiling, inspired by rust-embedded/cross

Nov 10, 2022
Playbit System interface defines an OS-like computing platform which can be implemented on a wide range of hosts

PlaySys The Playbit System interface PlaySys defines an OS-like computing platform which can be implemented on a wide range of hosts like Linux, BSD,

Nov 12, 2022
This plugin allows Flutter desktop apps to defines system/inapp wide hotkey (i.e. shortcut).

hotkey_manager This plugin allows Flutter desktop apps to defines system/inapp wide hotkey (i.e. shortcut). hotkey_manager Platform Support Quick Star

Nov 30, 2022
Dwm_lut - Apply 3D LUTs to the Windows desktop for system-wide color correction/calibration

About This tool applies 3D LUTs to the Windows desktop by hooking into DWM. It works in both SDR and HDR modes, and uses tetrahedral interpolation on

Nov 24, 2022
"SaferCPlusPlus" is essentially a collection of safe data types intended to facilitate memory and data race safe C++ programming

A collection of safe data types that are compatible with, and can substitute for, common unsafe native c++ types.

Nov 24, 2022
mimikatz is a tool I've made to learn C and make somes experiments with Windows security

mimikatz is a tool I've made to learn C and make somes experiments with Windows security

Nov 29, 2022
Experiments using the RPI Zero GPU for FFT (1D and 2D)

RPI0_GPU_FFT Experiments using the RPI Zero GPU for FFT/IFFT 1D/2D For an input 4194304 (1D), the GPU was around 7X faster than np.fft.fft and np.fft.

Nov 15, 2022