openshot::AudioBufferSource Class Reference

This class is used to expose an AudioSampleBuffer as an AudioSource in JUCE. More...

`#include <AudioBufferSource.h>`

Inheritance diagram for openshot::AudioBufferSource:

## Public Member Functions

| AudioBufferSource (juce::AudioSampleBuffer *audio_buffer)
| Default constructor. More...
void | getNextAudioBlock (const juce::AudioSourceChannelInfo &info)
| Get the next block of audio samples. More...
juce::int64 | getNextReadPosition () const
| Get the next read position of this source. More...
juce::int64 | getTotalLength () const
| Get the total length (in samples) of this audio source. More...
bool | isLooping () const
| Determines if this audio source should repeat when it reaches the end. More...
void | prepareToPlay (int, double)
| Prepare to play this audio source. More...
void | releaseResources ()
| Release all resources. More...
void | setBuffer (juce::AudioSampleBuffer *audio_buffer)
| Update the internal buffer used by this source. More...
void | setLooping (bool shouldLoop)
| Set if this audio source should repeat when it reaches the end. More...
void | setNextReadPosition (juce::int64 newPosition)
| Set the next read position of this source. More...
| ~AudioBufferSource ()
| Destructor. More...

## Detailed Description

This class is used to expose an AudioSampleBuffer as an AudioSource in JUCE.

The JUCE library cannot play audio directly from an AudioSampleBuffer, so this class exposes an AudioSampleBuffer as a AudioSource, so that JUCE can play the audio.

Definition at line 47 of file AudioBufferSource.h.

## Constructor & Destructor Documentation

## AudioBufferSource()

AudioBufferSource::AudioBufferSource | ( | juce::AudioSampleBuffer * | audio_buffer | ) |

Default constructor.

Parameters

  audio_buffer | This buffer contains the samples you want to play through JUCE.

Definition at line 37 of file AudioBufferSource.cpp.

## ~AudioBufferSource()

AudioBufferSource::~AudioBufferSource | ( |  | ) |

Destructor.

Definition at line 42 of file AudioBufferSource.cpp.

## Member Function Documentation

## getNextAudioBlock()

void AudioBufferSource::getNextAudioBlock | ( | const juce::AudioSourceChannelInfo & | info | ) |

Get the next block of audio samples.

Parameters

  info | This struct informs us of which samples are needed next.

Definition at line 49 of file AudioBufferSource.cpp.

## getNextReadPosition()

juce::int64 AudioBufferSource::getNextReadPosition | ( |  | ) | const

Get the next read position of this source.

Definition at line 109 of file AudioBufferSource.cpp.

## getTotalLength()

juce::int64 AudioBufferSource::getTotalLength | ( |  | ) | const

Get the total length (in samples) of this audio source.

Definition at line 116 of file AudioBufferSource.cpp.

## isLooping()

bool AudioBufferSource::isLooping | ( |  | ) | const

Determines if this audio source should repeat when it reaches the end.

Definition at line 123 of file AudioBufferSource.cpp.

## prepareToPlay()

void AudioBufferSource::prepareToPlay | ( | int | ,
|  | double |
| ) |  |

Prepare to play this audio source.

Definition at line 95 of file AudioBufferSource.cpp.

## releaseResources()

void AudioBufferSource::releaseResources | ( |  | ) |

Release all resources.

Definition at line 98 of file AudioBufferSource.cpp.

## setBuffer()

void AudioBufferSource::setBuffer | ( | juce::AudioSampleBuffer * | audio_buffer | ) |

Update the internal buffer used by this source.

Definition at line 137 of file AudioBufferSource.cpp.

## setLooping()

void AudioBufferSource::setLooping | ( | bool | shouldLoop | ) |

Set if this audio source should repeat when it reaches the end.

Parameters

  shouldLoop | Determines if the audio source should repeat when it reaches the end

Definition at line 130 of file AudioBufferSource.cpp.

## setNextReadPosition()

void AudioBufferSource::setNextReadPosition | ( | juce::int64 | newPosition | ) |

Set the next read position of this source.

Parameters

  newPosition | The sample # to start reading from

Definition at line 101 of file AudioBufferSource.cpp.

Referenced by setBuffer().

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

- AudioBufferSource.h
- AudioBufferSource.cpp