OpenShot Library | libopenshot-audio  0.2.0
juce::AudioSourceChannelInfo Struct Reference

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

#include <juce_AudioSource.h>

Public Member Functions

 AudioSourceChannelInfo ()=default
 Creates an uninitialised AudioSourceChannelInfo. More...
 
 AudioSourceChannelInfo (AudioBuffer< float > *bufferToUse, int startSampleOffset, int numSamplesToUse) noexcept
 Creates an AudioSourceChannelInfo. More...
 
 AudioSourceChannelInfo (AudioBuffer< float > &bufferToUse) noexcept
 Creates an AudioSourceChannelInfo that uses the whole of a buffer. 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 startSample
 The first sample in the buffer from which the callback is expected to write data. More...
 
int numSamples
 The number of samples in the buffer which the callback is expected to fill with data. More...
 

Detailed Description

Used by AudioSource::getNextAudioBlock().

Definition at line 36 of file juce_AudioSource.h.

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

Creates an AudioSourceChannelInfo.

Definition at line 42 of file juce_AudioSource.h.

◆ 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.

Definition at line 54 of file juce_AudioSource.h.

Member Function Documentation

◆ clearActiveBufferRegion()

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

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.

Definition at line 77 of file juce_AudioSource.h.

Referenced by juce::AudioSourcePlayer::audioDeviceIOCallback(), juce::ChannelRemappingAudioSource::ChannelRemappingAudioSource(), juce::MemoryAudioSource::getNextAudioBlock(), juce::IIRFilterAudioSource::getNextAudioBlock(), juce::ToneGeneratorAudioSource::getNextAudioBlock(), juce::ReverbAudioSource::getNextAudioBlock(), juce::ResamplingAudioSource::getNextAudioBlock(), juce::BufferingAudioSource::getNextAudioBlock(), juce::AudioFormatReaderSource::getNextAudioBlock(), juce::MixerAudioSource::getNextAudioBlock(), juce::ChannelRemappingAudioSource::getNextAudioBlock(), and juce::AudioTransportSource::getNextAudioBlock().

◆ startSample

◆ numSamples


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