Pulp 1.88.0
Cross-platform audio plugin framework
Loading...
Searching...
No Matches
pulp::playback::TrackMixerProgram Struct Reference

The compiled form of a track's own level and stereo placement. More...

#include <track_mixer_program.hpp>

Public Member Functions

bool transparent () const noexcept
 Whether this mixer can be skipped entirely.

Public Attributes

float gain_linear = 1.0f
float pan = 0.0f
const AutomationProgram * gain_automation = nullptr
const AutomationProgram * pan_automation = nullptr

Detailed Description

The compiled form of a track's own level and stereo placement.

A null lane pointer means the authored constant governs for the whole timeline; a non-null one supersedes it entirely, so a lane and a constant never both apply and the result never depends on which was read first. The pointers borrow from the TrackAutomationProgram the owning TrackProgram holds alive.

Member Function Documentation

◆ transparent()

bool pulp::playback::TrackMixerProgram::transparent ( ) const
inlinenoexcept

Whether this mixer can be skipped entirely.

A track that was never touched renders through exactly the code path it did before mixer state existed, which is what keeps existing golden renders bit-identical.

Member Data Documentation

◆ gain_automation

const AutomationProgram* pulp::playback::TrackMixerProgram::gain_automation = nullptr

◆ gain_linear

float pulp::playback::TrackMixerProgram::gain_linear = 1.0f

◆ pan

float pulp::playback::TrackMixerProgram::pan = 0.0f

◆ pan_automation

const AutomationProgram* pulp::playback::TrackMixerProgram::pan_automation = nullptr

The documentation for this struct was generated from the following file: