This is an old revision of the document!
Video Control
Projectors
Terminology
- Definition: Total number of pixels in an image (e.g. 1920×1080, 3840×2160). Often incorrectly referred to as “resolution” in English.
- Resolution: Pixel density per unit (e.g. DPI – dots per inch).
Key Specifications
- Contrast Ratio: Ratio between brightest and darkest output (e.g. 2000:1, 4000:1). Higher values improve perceived image depth.
- Brightness: Measured in lumens.
- ~1500 lumens: suitable for dark environments (home cinema)
- >3000 lumens: recommended for environments with ambient light
- Definition (Format):
- FHD (1920×1080) minimum standard
- Higher than source → no benefit
- Lower than source → visible quality loss
- Noise Level: Measured in dBA.
- Typical acceptable range: 25–28 dBA
- Manufacturer values may be optimistic
- Throw Ratio:
- Formula: Throw Ratio = Distance / Image Width
- Example: ratio 1.5 → 1m width at 1.5m distance
- Defines projection size range depending on placement
Image Processing Options
- Overscan: Crops image edges and scales slightly beyond source resolution
NDI
- NDI Monitor:
- Provides preview (low-resolution proxy)
- Not suitable for full-quality signal transmission
Software
- LPMT (Linux Projection Mapping Tool)
- Millumin
- Resolume Arena
- MadMapper
- QLab
- Modulo Kinetic / Modulo Player
- mplayer (video playback)
FFmpeg
Re-encode into Apple ProRes
ffmpeg -i input.mp4 -vcodec prores -acodec copy output.mov
Rotate Video
ffmpeg -i input-video.mp4 -vf "transpose=1" output-video.mp4
- 0 → 90° CCW + flip
- 1 → 90° CW
- 2 → 90° CCW
- 3 → 90° CW + flip
Control Quality (CRF)
- CRF range: 0 (lossless) → 51 (worst)
- Typical values: 15–20
Trim Video
To create a 1min clip starting 1min into the video:
ffmpeg -i input-video.mp4 -c:v libx264 -crf 15 -c:a aac -ss=60 -t=60 output-video.mp4
ffmpeg commands
$ffmpeg -codecs D..... = Decoding supported .E.... = Encoding supported ..V... = Video codec ..A... = Audio codec ..S... = Subtitle codec ...I.. = Intra frame-only codec ....L. = Lossy compression .....S = Lossless compression $ffmpeg -encoders V..... = Video A..... = Audio S..... = Subtitle .F.... = Frame-level multithreading ..S... = Slice-level multithreading ...X.. = Codec is experimental ....B. = Supports draw_horiz_band .....D = Supports direct rendering method 1 $ffmpeg -h encoder=libx264 //list all options on encoder
Signal Formats & Bitrates
Color Pipeline (Bit Depth, Color Space, Gamma)
Bit Depth
- Defines precision of color values
- 8-bit → 256 levels per channel
- 10-bit → 1024 levels per channel
- Benefits of 10-bit:
- Smoother gradients
- Reduced banding
- Better fades (especially on LED displays)
- Important:
- Bit depth does not define color range
- It improves how smoothly colors transition
Color Spaces
- Rec.709
- Standard HD color space
- Used in most video and LED workflows
- Predictable and widely supported
- Rec.2020
- Wider color gamut (UHD / HDR)
- Enables more saturated colors
- Requires full pipeline support (rare in real-time systems)
- Key distinction:
- Color space = range of colors available
- Bit depth = precision within that range
Gamma / Transfer Function
- Defines how brightness is encoded
- Common values:
- Gamma 2.4 → video standard (recommended baseline)
- Gamma 2.2 / sRGB → desktop environments
- PQ / HLG → HDR workflows
- In real-time playback systems:
- Gamma is often assumed, not explicitly managed
Practical Notes (Real-Time & LED Workflows)
- Most pipelines are effectively Rec.709-based
- Color management is usually not enforced
- Wide gamut (Rec.2020) only useful if:
- Playback engine supports it
- Signal chain preserves it
- Display can reproduce it
- Otherwise:
- Colors may be clipped or altered
Validation (10-bit Workflow)
- Use a 10-bit grayscale gradient test pattern
- Interpretation:
- Smooth gradient → full pipeline is 10-bit
- Banding → limitation exists in:
- media encoding
- GPU output
- signal chain (HDMI/SDI)
- processor
- display
Notes
- sRGB:
- Close to Rec.709 but not identical
- Not relevant in video signal pipelines
- HDR (Rec.2020 + PQ/HLG):
- Requires full end-to-end support
- Not guaranteed in real-time playback systems
