OpenShot Library | OpenShotAudio
0.2.1
|
Wrapper class to continuously stream audio from an audio source to an AudioIODevice. More...
#include <juce_AudioSourcePlayer.h>
Public Member Functions | |
AudioSourcePlayer () | |
Creates an empty AudioSourcePlayer. More... | |
~AudioSourcePlayer () override | |
Destructor. More... | |
void | setSource (AudioSource *newSource) |
Changes the current audio source to play from. More... | |
AudioSource * | getCurrentSource () const noexcept |
Returns the source that's playing. More... | |
void | setGain (float newGain) noexcept |
Sets a gain to apply to the audio data. More... | |
float | getGain () const noexcept |
Returns the current gain. More... | |
void | audioDeviceIOCallback (const float **inputChannelData, int totalNumInputChannels, float **outputChannelData, int totalNumOutputChannels, int numSamples) override |
Implementation of the AudioIODeviceCallback method. More... | |
void | audioDeviceAboutToStart (AudioIODevice *device) override |
Implementation of the AudioIODeviceCallback method. More... | |
void | audioDeviceStopped () override |
Implementation of the AudioIODeviceCallback method. More... | |
void | prepareToPlay (double sampleRate, int blockSize) |
An alternative method for initialising the source without an AudioIODevice. More... | |
![]() | |
virtual | ~AudioIODeviceCallback ()=default |
Destructor. More... | |
virtual void | audioDeviceError (const String &errorMessage) |
This can be overridden to be told if the device generates an error while operating. More... | |
Wrapper class to continuously stream audio from an audio source to an AudioIODevice.
This object acts as an AudioIODeviceCallback, so can be attached to an output device, and will stream audio from an AudioSource.
Definition at line 40 of file juce_AudioSourcePlayer.h.
juce::AudioSourcePlayer::AudioSourcePlayer | ( | ) |
Creates an empty AudioSourcePlayer.
Definition at line 26 of file juce_AudioSourcePlayer.cpp.
|
override |
Destructor.
Make sure this object isn't still being used by an AudioIODevice before deleting it!
Definition at line 30 of file juce_AudioSourcePlayer.cpp.
References setSource().
void juce::AudioSourcePlayer::setSource | ( | AudioSource * | newSource | ) |
Changes the current audio source to play from.
If the source passed in is already being used, this method will do nothing. If the source is not null, its prepareToPlay() method will be called before it starts being used for playback.
If there's another source currently playing, its releaseResources() method will be called after it has been swapped for the new one.
newSource | the new source to use - this will NOT be deleted by this object when no longer needed, so it's the caller's responsibility to manage it. |
Definition at line 35 of file juce_AudioSourcePlayer.cpp.
References juce::AudioSource::prepareToPlay(), and juce::AudioSource::releaseResources().
Referenced by ~AudioSourcePlayer().
|
inlinenoexcept |
Returns the source that's playing.
May return nullptr if there's no source.
Definition at line 73 of file juce_AudioSourcePlayer.h.
|
noexcept |
Sets a gain to apply to the audio data.
Definition at line 54 of file juce_AudioSourcePlayer.cpp.
|
inlinenoexcept |
|
overridevirtual |
Implementation of the AudioIODeviceCallback method.
Implements juce::AudioIODeviceCallback.
Definition at line 59 of file juce_AudioSourcePlayer.cpp.
References juce::AudioBuffer< Type >::applyGainRamp(), juce::AudioSourceChannelInfo::buffer, juce::AudioSource::getNextAudioBlock(), juce::AudioBuffer< Type >::getNumChannels(), juce::AudioBuffer< Type >::getWritePointer(), juce::AudioSourceChannelInfo::numSamples, juce::AudioBuffer< Type >::setSize(), and juce::AudioSourceChannelInfo::startSample.
|
overridevirtual |
Implementation of the AudioIODeviceCallback method.
Implements juce::AudioIODeviceCallback.
Definition at line 153 of file juce_AudioSourcePlayer.cpp.
References juce::AudioIODevice::getCurrentBufferSizeSamples(), juce::AudioIODevice::getCurrentSampleRate(), and prepareToPlay().
|
overridevirtual |
Implementation of the AudioIODeviceCallback method.
Implements juce::AudioIODeviceCallback.
Definition at line 169 of file juce_AudioSourcePlayer.cpp.
References juce::AudioSource::releaseResources(), and juce::AudioBuffer< Type >::setSize().
void juce::AudioSourcePlayer::prepareToPlay | ( | double | sampleRate, |
int | blockSize | ||
) |
An alternative method for initialising the source without an AudioIODevice.
Definition at line 159 of file juce_AudioSourcePlayer.cpp.
References juce::AudioSource::prepareToPlay().
Referenced by audioDeviceAboutToStart().