LMMS
Loading...
Searching...
No Matches
juce::ARAPlaybackRenderer Class Reference

#include <juce_ARAPlugInInstanceRoles.h>

Inheritance diagram for juce::ARAPlaybackRenderer:
juce::ARARenderer

Public Member Functions

bool processBlock (AudioBuffer< float > &buffer, AudioProcessor::Realtime realtime, const AudioPlayHead::PositionInfo &positionInfo) noexcept override
template<typename PlaybackRegion_t = ARAPlaybackRegion>
std::vector< PlaybackRegion_t * > constgetPlaybackRegions () const noexcept
Public Member Functions inherited from juce::ARARenderer
virtual ~ARARenderer ()=default
virtual void prepareToPlay (double sampleRate, int maximumSamplesPerBlock, int numChannels, AudioProcessor::ProcessingPrecision precision, AlwaysNonRealtime alwaysNonRealtime=AlwaysNonRealtime::no)
virtual void releaseResources ()
virtual void reset ()
virtual bool processBlock (AudioBuffer< double > &buffer, AudioProcessor::Realtime realtime, const AudioPlayHead::PositionInfo &positionInfo) noexcept

Additional Inherited Members

Public Types inherited from juce::ARARenderer
enum class  AlwaysNonRealtime { no , yes }

Detailed Description

Base class for a renderer fulfilling the ARAPlaybackRenderer role as described in the ARA SDK.

Instances of this class are constructed by the DocumentController. If you are subclassing ARAPlaybackRenderer, make sure to call the base class implementation of any overridden function, except for processBlock.

@tags{ARA}

Member Function Documentation

◆ getPlaybackRegions()

template<typename PlaybackRegion_t = ARAPlaybackRegion>
std::vector< PlaybackRegion_t * > const & juce::ARAPlaybackRenderer::getPlaybackRegions ( ) const
inlinenoexcept

Returns the PlaybackRegions

Template Parameters
PlaybackRegion_t
Returns

◆ processBlock()

bool juce::ARAPlaybackRenderer::processBlock ( AudioBuffer< float > & buffer,
AudioProcessor::Realtime realtime,
const AudioPlayHead::PositionInfo & positionInfo )
inlineoverridevirtualnoexcept

Renders the output into the given buffer. Returns true if rendering executed without error, false otherwise.

Parameters
bufferThe output buffer for the rendering. ARAPlaybackRenderers will replace the sample data, while ARAEditorRenderer will add to it.
realtimeIndicates whether the call is executed under real time constraints. The value of this parameter may change from one call to the next, and if the value is yes, the rendering may fail if the required samples cannot be obtained in time.
positionInfoCurrent song position, playback state and playback loop location. There should be no need to access the bpm, timeSig and ppqPosition members in any ARA renderer since ARA provides that information with random access in its model graph.

Returns false if non-ARA fallback rendering is required and true otherwise.

Implements juce::ARARenderer.


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