59 bool deleteSourceWhenDeleted,
60 int numberOfSamplesToBuffer,
61 int numberOfChannels = 2,
76 void releaseResources()
override;
83 void setNextReadPosition (int64
newPosition)
override;
86 int64 getNextReadPosition()
const override;
104 int numberOfSamplesToBuffer, numberOfChannels;
108 std::atomic<int64> bufferValidStart { 0 }, bufferValidEnd { 0 }, nextPlayPos { 0 };
109 double sampleRate = 0;
110 bool wasSourceLooping =
false, isPrepared =
false, prefillBuffer;
112 bool readNextBufferChunk();
113 void readBufferSection (int64 start,
int length,
int bufferOffset);
114 int useTimeSlice()
override;
116 JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (BufferingAudioSource)