Loading...
Searching...
No Matches
Ui::VideoScope Namespace Reference

Detailed Description

Video scopes computed on the GPU: waveform, parades, vectorscope, histogram, CIE 1931 chromaticity and Tektronix-style diamond.

Three compute passes per frame: the bins of the previous frame fade by the persistence, every sampled input pixel adds to the bins of the mode, and the bins are tone-mapped into the scope image, which is the texture output. The labelled graticule is drawn on the CPU and composited on the GPU. Of a 3D texture, an array or a cube map, the scope analyses what the Layout shows: one slice, layer or face, or all of them side by side.

The view shows that output through a preview of the outlet: being an output of the graph, the preview pulls the scope, which renders whenever it is shown, cabled further or not.

Namespaces

namespace  geometry
 

Classes

struct  Layer
 
struct  Node
 
struct  ScopeMonitor
 

Enumerations

enum class  Mode {
  Waveform , RgbOverlay , RgbParade , YCbCrParade ,
  Vectorscope , Histogram , CIE , Diamond
}
 
enum class  Units {
  Percent , Code8 , Code10 , Millivolts ,
  Nits
}
 

Functions

void drawGraticule (QPainter &p, const QRectF &r, Mode m, Units u, bool legal, Ui::Monitor::Color::Matrix matrix, Ui::Monitor::Color::Transfer transfer, bool targets75, double zoom)
 

Variables

constexpr std::string_view mode_names []
 
constexpr std::string_view units_names [] {"%", "8-bit", "10-bit", "mV", "nits"}
 

Function Documentation

◆ drawGraticule()

void Ui::VideoScope::drawGraticule ( QPainter &  p,
const QRectF &  r,
Mode  m,
Units  u,
bool  legal,
Ui::Monitor::Color::Matrix  matrix,
Ui::Monitor::Color::Transfer  transfer,
bool  targets75,
double  zoom 
)

The scope image with its graticule and labels, drawn at the view's resolution.

Variable Documentation

◆ mode_names

constexpr std::string_view Ui::VideoScope::mode_names[]
inlineconstexpr
Initial value:
{
"Waveform", "RGB overlay", "RGB parade", "YCbCr parade",
"Vectorscope", "Histogram", "CIE 1931", "Diamond"}