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

« « « Anklang Documentation
Loading...
Searching...
No Matches
Public Member Functions | Static Public Member Functions | Public Attributes | Static Public Attributes | List of all members
tracktion::engine::HighQualityResamplerReader Class Referencefinal
Inheritance diagram for tracktion::engine::HighQualityResamplerReader:
tracktion::engine::ResamplerReader tracktion::engine::SingleInputAudioReader AudioReader

Public Member Functions

 HighQualityResamplerReader (std::unique_ptr< AudioReader > input, double sampleRateToConvertTo, ResamplingQuality resamplingQuality)
 
SampleCount getPosition () override
 
void setPosition (SampleCount t) override
 
void setPosition (TimePosition t) override
 
double getSampleRate () override
 
void setSpeedRatio (double newSpeedRatio) override
 Sets a ratio to increase or decrease playback speed.
 
void setGains (float leftGain, float rightGain) override
 Sets a l/r gain to apply to channels.
 
void reset () override
 
bool readSamples (choc::buffer::ChannelArrayView< float > &destBuffer) override
 
SampleCount getReadPosition () const
 
long srcReadCallback (float **destInterleavedSampleData)
 
bool readChunk (const choc::buffer::ChannelArrayView< float > &destBuffer)
 
- Public Member Functions inherited from tracktion::engine::ResamplerReader
 ResamplerReader (std::unique_ptr< AudioReader > input)
 
- Public Member Functions inherited from tracktion::engine::SingleInputAudioReader
 SingleInputAudioReader (std::unique_ptr< AudioReader > input)
 
choc::buffer::ChannelCount getNumChannels () override
 
SampleCount getPosition () override
 
void setPosition (SampleCount t) override
 
void setPosition (TimePosition t) override
 
void reset () override
 
double getSampleRate () override
 
bool readSamples (choc::buffer::ChannelArrayView< float > &destBuffer) override
 

Static Public Member Functions

static long srcReadCallback (void *data, float **destInterleavedSampleData)
 

Public Attributes

const int numChannels
 
const double destSampleRate
 
const double sourceSampleRate
 
const double sampleRatio
 
src::SRC_STATE * src_state
 
choc::buffer::ChannelArrayBuffer< floatscratchBuffer
 
choc::buffer::InterleavedBuffer< floatinterleavedInputScratchBuffer
 
choc::buffer::InterleavedBuffer< floatinterleavedOutputScratchBuffer
 
double speedRatio
 
double readPosition
 
float gains [2]
 
bool failedToRead
 
- Public Attributes inherited from tracktion::engine::SingleInputAudioReader
std::unique_ptr< AudioReadersource
 

Static Public Attributes

static constexpr choc::buffer::FrameCount chunkSize
 

Detailed Description

Definition at line 344 of file tracktion_WaveNode.cpp.

Constructor & Destructor Documentation

◆ HighQualityResamplerReader()

tracktion::engine::HighQualityResamplerReader::HighQualityResamplerReader ( std::unique_ptr< AudioReader input,
double  sampleRateToConvertTo,
ResamplingQuality  resamplingQuality 
)

Definition at line 347 of file tracktion_WaveNode.cpp.

◆ ~HighQualityResamplerReader()

tracktion::engine::HighQualityResamplerReader::~HighQualityResamplerReader ( )
override

Definition at line 371 of file tracktion_WaveNode.cpp.

Member Function Documentation

◆ getPosition()

SampleCount tracktion::engine::HighQualityResamplerReader::getPosition ( )
override

Definition at line 376 of file tracktion_WaveNode.cpp.

◆ getReadPosition()

SampleCount tracktion::engine::HighQualityResamplerReader::getReadPosition ( ) const

Definition at line 468 of file tracktion_WaveNode.cpp.

◆ getSampleRate()

double tracktion::engine::HighQualityResamplerReader::getSampleRate ( )
override

Definition at line 398 of file tracktion_WaveNode.cpp.

◆ readChunk()

bool tracktion::engine::HighQualityResamplerReader::readChunk ( const choc::buffer::ChannelArrayView< float > &  destBuffer)

Definition at line 498 of file tracktion_WaveNode.cpp.

◆ readSamples()

bool tracktion::engine::HighQualityResamplerReader::readSamples ( choc::buffer::ChannelArrayView< float > &  destBuffer)
override

Definition at line 421 of file tracktion_WaveNode.cpp.

◆ reset()

void tracktion::engine::HighQualityResamplerReader::reset ( )
override

Definition at line 417 of file tracktion_WaveNode.cpp.

◆ setGains()

void tracktion::engine::HighQualityResamplerReader::setGains ( float  leftGain,
float  rightGain 
)
overridevirtual

Sets a l/r gain to apply to channels.

Implements tracktion::engine::ResamplerReader.

Definition at line 411 of file tracktion_WaveNode.cpp.

◆ setPosition() [1/2]

void tracktion::engine::HighQualityResamplerReader::setPosition ( SampleCount  t)
override

Definition at line 381 of file tracktion_WaveNode.cpp.

◆ setPosition() [2/2]

void tracktion::engine::HighQualityResamplerReader::setPosition ( TimePosition  t)
override

Definition at line 393 of file tracktion_WaveNode.cpp.

◆ setSpeedRatio()

void tracktion::engine::HighQualityResamplerReader::setSpeedRatio ( double  newSpeedRatio)
overridevirtual

Sets a ratio to increase or decrease playback speed.

Implements tracktion::engine::ResamplerReader.

Definition at line 404 of file tracktion_WaveNode.cpp.

◆ srcReadCallback() [1/2]

long tracktion::engine::HighQualityResamplerReader::srcReadCallback ( float **  destInterleavedSampleData)

Definition at line 478 of file tracktion_WaveNode.cpp.

◆ srcReadCallback() [2/2]

static long tracktion::engine::HighQualityResamplerReader::srcReadCallback ( void *  data,
float **  destInterleavedSampleData 
)
static

Definition at line 473 of file tracktion_WaveNode.cpp.

Member Data Documentation

◆ chunkSize

constexpr choc::buffer::FrameCount tracktion::engine::HighQualityResamplerReader::chunkSize
staticconstexpr

Definition at line 452 of file tracktion_WaveNode.cpp.

◆ destSampleRate

const double tracktion::engine::HighQualityResamplerReader::destSampleRate

Definition at line 454 of file tracktion_WaveNode.cpp.

◆ failedToRead

bool tracktion::engine::HighQualityResamplerReader::failedToRead

Definition at line 466 of file tracktion_WaveNode.cpp.

◆ gains

float tracktion::engine::HighQualityResamplerReader::gains[2]

Definition at line 465 of file tracktion_WaveNode.cpp.

◆ interleavedInputScratchBuffer

choc::buffer::InterleavedBuffer<float> tracktion::engine::HighQualityResamplerReader::interleavedInputScratchBuffer

Definition at line 461 of file tracktion_WaveNode.cpp.

◆ interleavedOutputScratchBuffer

choc::buffer::InterleavedBuffer<float> tracktion::engine::HighQualityResamplerReader::interleavedOutputScratchBuffer

Definition at line 462 of file tracktion_WaveNode.cpp.

◆ numChannels

const int tracktion::engine::HighQualityResamplerReader::numChannels

Definition at line 453 of file tracktion_WaveNode.cpp.

◆ readPosition

double tracktion::engine::HighQualityResamplerReader::readPosition

Definition at line 464 of file tracktion_WaveNode.cpp.

◆ sampleRatio

const double tracktion::engine::HighQualityResamplerReader::sampleRatio

Definition at line 456 of file tracktion_WaveNode.cpp.

◆ scratchBuffer

choc::buffer::ChannelArrayBuffer<float> tracktion::engine::HighQualityResamplerReader::scratchBuffer

Definition at line 460 of file tracktion_WaveNode.cpp.

◆ sourceSampleRate

const double tracktion::engine::HighQualityResamplerReader::sourceSampleRate

Definition at line 455 of file tracktion_WaveNode.cpp.

◆ speedRatio

double tracktion::engine::HighQualityResamplerReader::speedRatio

Definition at line 464 of file tracktion_WaveNode.cpp.

◆ src_state

src::SRC_STATE* tracktion::engine::HighQualityResamplerReader::src_state

Definition at line 458 of file tracktion_WaveNode.cpp.


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