|
JUCE
|
An AudioSource which takes another source as input, and buffers it using a thread. More...
#include <juce_BufferingAudioSource.h>
Public Member Functions | |
| BufferingAudioSource (PositionableAudioSource *source, TimeSliceThread &backgroundThread, bool deleteSourceWhenDeleted, int numberOfSamplesToBuffer, int numberOfChannels=2, bool prefillBufferOnPrepareToPlay=true) | |
| Creates a BufferingAudioSource. | |
| ~BufferingAudioSource () override | |
| Destructor. | |
| void | prepareToPlay (int samplesPerBlockExpected, double sampleRate) override |
| Implementation of the AudioSource method. | |
| void | releaseResources () override |
| Implementation of the AudioSource method. | |
| void | getNextAudioBlock (const AudioSourceChannelInfo &) override |
| Implementation of the AudioSource method. | |
| void | setNextReadPosition (int64 newPosition) override |
| Implements the PositionableAudioSource method. | |
| int64 | getNextReadPosition () const override |
| Implements the PositionableAudioSource method. | |
| int64 | getTotalLength () const override |
| Implements the PositionableAudioSource method. | |
| bool | isLooping () const override |
| Implements the PositionableAudioSource method. | |
| bool | waitForNextAudioBlockReady (const AudioSourceChannelInfo &info, uint32 timeout) |
| A useful function to block until the next the buffer info can be filled. | |
Public Member Functions inherited from PositionableAudioSource | |
| ~PositionableAudioSource () override=default | |
| Destructor. | |
| virtual void | setLooping (bool shouldLoop) |
| Tells the source whether you'd like it to play in a loop. | |
Public Member Functions inherited from AudioSource | |
| virtual | ~AudioSource ()=default |
| Destructor. | |
Additional Inherited Members | |
Protected Member Functions inherited from PositionableAudioSource | |
| PositionableAudioSource ()=default | |
| Creates the PositionableAudioSource. | |
Protected Member Functions inherited from AudioSource | |
| AudioSource ()=default | |
| Creates an AudioSource. | |
An AudioSource which takes another source as input, and buffers it using a thread.
Create this as a wrapper around another thread, and it will read-ahead with a background thread to smooth out playback. You can either create one of these directly, or use it indirectly using an AudioTransportSource.
| BufferingAudioSource::BufferingAudioSource | ( | PositionableAudioSource * | source, |
| TimeSliceThread & | backgroundThread, | ||
| bool | deleteSourceWhenDeleted, | ||
| int | numberOfSamplesToBuffer, | ||
| int | numberOfChannels = 2, | ||
| bool | prefillBufferOnPrepareToPlay = true ) |
Creates a BufferingAudioSource.
| source | the input source to read from |
| backgroundThread | a background thread that will be used for the background read-ahead. This object must not be deleted until after any BufferingAudioSources that are using it have been deleted! |
| deleteSourceWhenDeleted | if true, then the input source object will be deleted when this object is deleted |
| numberOfSamplesToBuffer | the size of buffer to use for reading ahead |
| numberOfChannels | the number of channels that will be played |
| prefillBufferOnPrepareToPlay | if true, then calling prepareToPlay on this object will block until the buffer has been filled |
|
override |
Destructor.
The input source may be deleted depending on whether the deleteSourceWhenDeleted flag was set in the constructor.
|
overridevirtual |
Implementation of the AudioSource method.
Implements AudioSource.
|
overridevirtual |
Implementation of the AudioSource method.
Implements AudioSource.
|
overridevirtual |
Implementation of the AudioSource method.
Implements AudioSource.
|
overridevirtual |
Implements the PositionableAudioSource method.
Implements PositionableAudioSource.
|
overridevirtual |
Implements the PositionableAudioSource method.
Implements PositionableAudioSource.
|
overridevirtual |
Implements the PositionableAudioSource method.
Implements PositionableAudioSource.
|
overridevirtual |
Implements the PositionableAudioSource method.
Implements PositionableAudioSource.
| bool BufferingAudioSource::waitForNextAudioBlockReady | ( | const AudioSourceChannelInfo & | info, |
| uint32 | timeout ) |
A useful function to block until the next the buffer info can be filled.
This is useful for offline rendering.