tracktion-engine 3.0-10-g034fdde4aa5
Tracktion Engine — High level data model for audio applications

« « « Anklang Documentation
Loading...
Searching...
No Matches
Classes | Public Member Functions | List of all members
tracktion::engine::WaveAudioNode Class Reference

An AudioNode that plays back a wave file. More...

#include "tracktion_WaveAudioNode.h"

Inheritance diagram for tracktion::engine::WaveAudioNode:
tracktion::engine::AudioNode

Classes

struct  PerChannelState
 

Public Member Functions

 WaveAudioNode (const AudioFile &file, legacy::EditTimeRange editTime, double offset, legacy::EditTimeRange loopSection, LiveClipLevel level, double speedRatio, const juce::AudioChannelSet &channelsToUse)
 offset is a time added to the start of the file, e.g.
 
void getAudioNodeProperties (AudioNodeProperties &) override
 
void visitNodes (const VisitorFn &) override
 
bool purgeSubNodes (bool keepAudio, bool keepMidi) override
 Tells the node to delete any sub-nodes that don't produce the required type of output.
 
void prepareAudioNodeToPlay (const PlaybackInitialisationInfo &) override
 tells the node to initialise itself ready for playing from the given time.
 
bool isReadyToRender () override
 
void releaseAudioNodeResources () override
 tells the node that play has stopped, and it can free up anything it no longer needs.
 
void renderOver (const AudioRenderContext &) override
 
void renderAdding (const AudioRenderContext &) override
 
void prepareForNextBlock (const AudioRenderContext &) override
 
void renderSection (const AudioRenderContext &, legacy::EditTimeRange editTime)
 
- Public Member Functions inherited from tracktion::engine::AudioNode
virtual juce::ReferenceCountedObjectPtr< PlugingetPlugin () const
 
void callRenderAdding (const AudioRenderContext &)
 
void callRenderOver (const AudioRenderContext &)
 

Additional Inherited Members

- Public Types inherited from tracktion::engine::AudioNode
using VisitorFn = std::function< void(AudioNode &)>
 
- Static Public Member Functions inherited from tracktion::engine::AudioNode
template<typename CallbackType >
static void invokeSplitRender (const AudioRenderContext &rc, CallbackType &target)
 

Detailed Description

An AudioNode that plays back a wave file.

Definition at line 21 of file tracktion_WaveAudioNode.h.

Constructor & Destructor Documentation

◆ WaveAudioNode()

tracktion::engine::WaveAudioNode::WaveAudioNode ( const AudioFile file,
legacy::EditTimeRange  editTime,
double  offset,
legacy::EditTimeRange  loopSection,
LiveClipLevel  level,
double  speedRatio,
const juce::AudioChannelSet channelsToUse 
)

offset is a time added to the start of the file, e.g.

an offset of 10.0 would produce ten seconds of silence followed by the file.

gain may be 0, or a pointer to a floating point value which is referred to as the gain to use when converting the file contents to floating point. e.g. gain of 2.0f will double the values returned.

Definition at line 14 of file tracktion_WaveAudioNode.cpp.

◆ ~WaveAudioNode()

tracktion::engine::WaveAudioNode::~WaveAudioNode ( )
override

Definition at line 31 of file tracktion_WaveAudioNode.cpp.

Member Function Documentation

◆ getAudioNodeProperties()

void tracktion::engine::WaveAudioNode::getAudioNodeProperties ( AudioNodeProperties info)
overridevirtual

Implements tracktion::engine::AudioNode.

Definition at line 36 of file tracktion_WaveAudioNode.cpp.

◆ isReadyToRender()

bool tracktion::engine::WaveAudioNode::isReadyToRender ( )
overridevirtual

Implements tracktion::engine::AudioNode.

Definition at line 81 of file tracktion_WaveAudioNode.cpp.

◆ prepareAudioNodeToPlay()

void tracktion::engine::WaveAudioNode::prepareAudioNodeToPlay ( const PlaybackInitialisationInfo )
overridevirtual

tells the node to initialise itself ready for playing from the given time.

This call may be made more than once before releaseAudioNodeResources() is called

Implements tracktion::engine::AudioNode.

Definition at line 68 of file tracktion_WaveAudioNode.cpp.

◆ prepareForNextBlock()

void tracktion::engine::WaveAudioNode::prepareForNextBlock ( const AudioRenderContext rc)
overridevirtual

Reimplemented from tracktion::engine::AudioNode.

Definition at line 231 of file tracktion_WaveAudioNode.cpp.

◆ purgeSubNodes()

bool tracktion::engine::WaveAudioNode::purgeSubNodes ( bool  keepAudio,
bool  keepMidi 
)
overridevirtual

Tells the node to delete any sub-nodes that don't produce the required type of output.

This optimises out any unplayable bits of the audio graph. Returns true if this node should be kept, false if this node can itself be deleted.

Implements tracktion::engine::AudioNode.

Definition at line 44 of file tracktion_WaveAudioNode.cpp.

◆ releaseAudioNodeResources()

void tracktion::engine::WaveAudioNode::releaseAudioNodeResources ( )
overridevirtual

tells the node that play has stopped, and it can free up anything it no longer needs.

Implements tracktion::engine::AudioNode.

Definition at line 121 of file tracktion_WaveAudioNode.cpp.

◆ renderAdding()

void tracktion::engine::WaveAudioNode::renderAdding ( const AudioRenderContext rc)
overridevirtual

Implements tracktion::engine::AudioNode.

Definition at line 131 of file tracktion_WaveAudioNode.cpp.

◆ renderOver()

void tracktion::engine::WaveAudioNode::renderOver ( const AudioRenderContext rc)
overridevirtual

Implements tracktion::engine::AudioNode.

Definition at line 126 of file tracktion_WaveAudioNode.cpp.

◆ renderSection()

void tracktion::engine::WaveAudioNode::renderSection ( const AudioRenderContext rc,
legacy::EditTimeRange  editTime 
)

Definition at line 136 of file tracktion_WaveAudioNode.cpp.

◆ visitNodes()

void tracktion::engine::WaveAudioNode::visitNodes ( const VisitorFn v)
overridevirtual

Implements tracktion::engine::AudioNode.

Definition at line 49 of file tracktion_WaveAudioNode.cpp.


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