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

#include <audio_renderer.hpp>

Public Types

enum class  SourceKind : std::uint8_t { ArrangementClip , TakeCompSegment , FrozenTrack }
enum class  TimeDomain : std::uint8_t { Musical , Absolute }
enum class  SourceTimeMapping : std::uint8_t { NativeRate , MusicalPhaseResample , OfflineStretchArtifact }

Public Member Functions

std::int64_t timeline_end () const noexcept
bool uses_sample_rate_conversion () const noexcept
bool uses_host_rate_conversion () const noexcept
bool shares_sample_rate_conversion_with (const AudioClipRendererProgram &other) const noexcept
bool shares_host_rate_conversion_with (const AudioClipRendererProgram &other) const noexcept

Public Attributes

timeline::ItemId id
timeline::ItemId asset_id
std::shared_ptr< const audio::AudioFileData > audio
std::int64_t timeline_start = 0
std::uint64_t timeline_frame_count = 0
std::uint64_t source_start = 0
std::uint64_t source_frame_count = 0
double source_frame_offset = 0.0
std::uint64_t renderable_timeline_frames = 0
double source_frames_per_timeline_frame = 1.0
std::shared_ptr< const AudioClipConversionArtifact > conversion_artifact
float gain_linear = 1.0f
std::uint64_t fade_in_frames = 0
std::uint64_t fade_out_frames = 0
timeline::ClipFadeShape fade_shape = timeline::ClipFadeShape::Linear
SourceKind source_kind = SourceKind::ArrangementClip
std::uint32_t source_ordinal = 0
TimeDomain time_domain = TimeDomain::Absolute
timebase::TickPosition musical_tick_start {}
timebase::TickPosition musical_tick_end {}
SourceTimeMapping source_time_mapping = SourceTimeMapping::NativeRate
std::shared_ptr< const OfflineStretchArtifact > offline_stretch_artifact
std::shared_ptr< const OfflineStretchProvenance > offline_stretch_provenance
std::shared_ptr< const ClipPlacementFadeProgram > placement_fade
double source_frame_phase_end = 0.0

Member Enumeration Documentation

◆ SourceKind

enum class pulp::playback::AudioClipRendererProgram::SourceKind : std::uint8_t
strong
Enumerator
ArrangementClip 
TakeCompSegment 
FrozenTrack 

◆ SourceTimeMapping

Enumerator
NativeRate 
MusicalPhaseResample 
OfflineStretchArtifact 

◆ TimeDomain

enum class pulp::playback::AudioClipRendererProgram::TimeDomain : std::uint8_t
strong
Enumerator
Musical 
Absolute 

Member Function Documentation

◆ shares_host_rate_conversion_with()

bool pulp::playback::AudioClipRendererProgram::shares_host_rate_conversion_with ( const AudioClipRendererProgram & other) const
noexcept

◆ shares_sample_rate_conversion_with()

bool pulp::playback::AudioClipRendererProgram::shares_sample_rate_conversion_with ( const AudioClipRendererProgram & other) const
noexcept

◆ timeline_end()

std::int64_t pulp::playback::AudioClipRendererProgram::timeline_end ( ) const
noexcept

◆ uses_host_rate_conversion()

bool pulp::playback::AudioClipRendererProgram::uses_host_rate_conversion ( ) const
noexcept

◆ uses_sample_rate_conversion()

bool pulp::playback::AudioClipRendererProgram::uses_sample_rate_conversion ( ) const
noexcept

Member Data Documentation

◆ asset_id

timeline::ItemId pulp::playback::AudioClipRendererProgram::asset_id

◆ audio

std::shared_ptr<const audio::AudioFileData> pulp::playback::AudioClipRendererProgram::audio

◆ conversion_artifact

std::shared_ptr<const AudioClipConversionArtifact> pulp::playback::AudioClipRendererProgram::conversion_artifact

◆ fade_in_frames

std::uint64_t pulp::playback::AudioClipRendererProgram::fade_in_frames = 0

◆ fade_out_frames

std::uint64_t pulp::playback::AudioClipRendererProgram::fade_out_frames = 0

◆ fade_shape

timeline::ClipFadeShape pulp::playback::AudioClipRendererProgram::fade_shape = timeline::ClipFadeShape::Linear

◆ gain_linear

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

◆ id

timeline::ItemId pulp::playback::AudioClipRendererProgram::id

◆ musical_tick_end

timebase::TickPosition pulp::playback::AudioClipRendererProgram::musical_tick_end {}

◆ musical_tick_start

timebase::TickPosition pulp::playback::AudioClipRendererProgram::musical_tick_start {}

◆ offline_stretch_artifact

std::shared_ptr<const OfflineStretchArtifact> pulp::playback::AudioClipRendererProgram::offline_stretch_artifact

◆ offline_stretch_provenance

std::shared_ptr<const OfflineStretchProvenance> pulp::playback::AudioClipRendererProgram::offline_stretch_provenance

◆ placement_fade

std::shared_ptr<const ClipPlacementFadeProgram> pulp::playback::AudioClipRendererProgram::placement_fade

◆ renderable_timeline_frames

std::uint64_t pulp::playback::AudioClipRendererProgram::renderable_timeline_frames = 0

◆ source_frame_count

std::uint64_t pulp::playback::AudioClipRendererProgram::source_frame_count = 0

◆ source_frame_offset

double pulp::playback::AudioClipRendererProgram::source_frame_offset = 0.0

◆ source_frame_phase_end

double pulp::playback::AudioClipRendererProgram::source_frame_phase_end = 0.0

◆ source_frames_per_timeline_frame

double pulp::playback::AudioClipRendererProgram::source_frames_per_timeline_frame = 1.0

◆ source_kind

SourceKind pulp::playback::AudioClipRendererProgram::source_kind = SourceKind::ArrangementClip

◆ source_ordinal

std::uint32_t pulp::playback::AudioClipRendererProgram::source_ordinal = 0

◆ source_start

std::uint64_t pulp::playback::AudioClipRendererProgram::source_start = 0

◆ source_time_mapping

SourceTimeMapping pulp::playback::AudioClipRendererProgram::source_time_mapping = SourceTimeMapping::NativeRate

◆ time_domain

TimeDomain pulp::playback::AudioClipRendererProgram::time_domain = TimeDomain::Absolute

◆ timeline_frame_count

std::uint64_t pulp::playback::AudioClipRendererProgram::timeline_frame_count = 0

◆ timeline_start

std::int64_t pulp::playback::AudioClipRendererProgram::timeline_start = 0

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