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

Captured session mapping at both boundaries of one audio block. More...

#include <tempo_sync.hpp>

Public Attributes

double tempo_bpm = 120.0
double beat_start = 0.0
double beat_end = 0.0
std::int64_t is_playing_at_host_time_micros = 0
 Host-clock time at which is_playing becomes effective.
bool is_playing = false

Detailed Description

Captured session mapping at both boundaries of one audio block.

Beat values are deliberately backend-neutral doubles because network tempo sources own their clock mapping; MasterTransport converts them to Pulp's precise tick range while retaining the fractional endpoints.

Member Data Documentation

◆ beat_end

double pulp::playback::TempoSyncBlockState::beat_end = 0.0

◆ beat_start

double pulp::playback::TempoSyncBlockState::beat_start = 0.0

◆ is_playing

bool pulp::playback::TempoSyncBlockState::is_playing = false

◆ is_playing_at_host_time_micros

std::int64_t pulp::playback::TempoSyncBlockState::is_playing_at_host_time_micros = 0

Host-clock time at which is_playing becomes effective.

This preserves backends whose start/stop state changes at a time other than the block boundary instead of flattening that transition into a block-wide bool.

◆ tempo_bpm

double pulp::playback::TempoSyncBlockState::tempo_bpm = 120.0

The documentation for this struct was generated from the following file:
  • /home/runner/work/pulp/pulp/core/playback/include/pulp/playback/tempo_sync.hpp