JUCE  v6.1.6 (6.0.8-1114)
JUCE API
Looking for a senior C++ dev?
I'm looking for work. Hire me!
juce::AudioSourceChannelInfo Struct Reference

Used by AudioSource::getNextAudioBlock(). More...

#include <juce_AudioSource.h>

Collaboration diagram for juce::AudioSourceChannelInfo:

Public Member Functions

 AudioSourceChannelInfo ()=default
 Creates an uninitialised AudioSourceChannelInfo. More...
 
 AudioSourceChannelInfo (AudioBuffer< float > &bufferToUse) noexcept
 Creates an AudioSourceChannelInfo that uses the whole of a buffer. More...
 
 AudioSourceChannelInfo (AudioBuffer< float > *bufferToUse, int startSampleOffset, int numSamplesToUse) noexcept
 Creates an AudioSourceChannelInfo. More...
 
void clearActiveBufferRegion () const
 Convenient method to clear the buffer if the source is not producing any data. More...
 

Public Attributes

AudioBuffer< float > * buffer
 The destination buffer to fill with audio data. More...
 
int numSamples
 The number of samples in the buffer which the callback is expected to fill with data. More...
 
int startSample
 The first sample in the buffer from which the callback is expected to write data. More...
 

Detailed Description

Used by AudioSource::getNextAudioBlock().

@tags{Audio}

Constructor & Destructor Documentation

◆ AudioSourceChannelInfo() [1/3]

juce::AudioSourceChannelInfo::AudioSourceChannelInfo ( )
default

Creates an uninitialised AudioSourceChannelInfo.

◆ AudioSourceChannelInfo() [2/3]

juce::AudioSourceChannelInfo::AudioSourceChannelInfo ( AudioBuffer< float > *  bufferToUse,
int  startSampleOffset,
int  numSamplesToUse 
)
inlinenoexcept

◆ AudioSourceChannelInfo() [3/3]

juce::AudioSourceChannelInfo::AudioSourceChannelInfo ( AudioBuffer< float > &  bufferToUse)
inlineexplicitnoexcept

Creates an AudioSourceChannelInfo that uses the whole of a buffer.

Note that the buffer provided must not be deleted while the AudioSourceChannelInfo is still using it.

Member Function Documentation

◆ clearActiveBufferRegion()

void juce::AudioSourceChannelInfo::clearActiveBufferRegion ( ) const
inline

Convenient method to clear the buffer if the source is not producing any data.

References juce::gl::buffer.

Member Data Documentation

◆ buffer

AudioBuffer<float>* juce::AudioSourceChannelInfo::buffer

The destination buffer to fill with audio data.

When the AudioSource::getNextAudioBlock() method is called, the active section of this buffer should be filled with whatever output the source produces.

Only the samples specified by the startSample and numSamples members of this structure should be affected by the call.

The contents of the buffer when it is passed to the AudioSource::getNextAudioBlock() method can be treated as the input if the source is performing some kind of filter operation, but should be cleared if this is not the case - the clearActiveBufferRegion() is a handy way of doing this.

The number of channels in the buffer could be anything, so the AudioSource must cope with this in whatever way is appropriate for its function.

◆ numSamples

int juce::AudioSourceChannelInfo::numSamples

The number of samples in the buffer which the callback is expected to fill with data.

◆ startSample

int juce::AudioSourceChannelInfo::startSample

The first sample in the buffer from which the callback is expected to write data.


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