OpenShot Audio Library | OpenShotAudio
0.4.0
Loading...
Searching...
No Matches
juce_AudioFormatReaderSource.h
1
/*
2
==============================================================================
3
4
This file is part of the JUCE library.
5
Copyright (c) 2022 - Raw Material Software Limited
6
7
JUCE is an open source library subject to commercial or open-source
8
licensing.
9
10
By using JUCE, you agree to the terms of both the JUCE 7 End-User License
11
Agreement and JUCE Privacy Policy.
12
13
End User License Agreement: www.juce.com/juce-7-licence
14
Privacy Policy: www.juce.com/juce-privacy-policy
15
16
Or: You may also use this code under the terms of the GPL v3 (see
17
www.gnu.org/licenses).
18
19
JUCE IS PROVIDED "AS IS" WITHOUT ANY WARRANTY, AND ALL WARRANTIES, WHETHER
20
EXPRESSED OR IMPLIED, INCLUDING MERCHANTABILITY AND FITNESS FOR PURPOSE, ARE
21
DISCLAIMED.
22
23
==============================================================================
24
*/
25
26
namespace
juce
27
{
28
29
//==============================================================================
37
class
JUCE_API
AudioFormatReaderSource
:
public
PositionableAudioSource
38
{
39
public
:
40
//==============================================================================
49
AudioFormatReaderSource
(
AudioFormatReader
* sourceReader,
50
bool
deleteReaderWhenThisIsDeleted);
51
53
~AudioFormatReaderSource
()
override
;
54
55
//==============================================================================
63
void
setLooping
(
bool
shouldLoop)
override
;
64
66
bool
isLooping
()
const override
{
return
looping; }
67
69
AudioFormatReader
*
getAudioFormatReader
() const noexcept {
return
reader; }
70
71
//==============================================================================
73
void
prepareToPlay (
int
samplesPerBlockExpected,
double
sampleRate)
override
;
74
76
void
releaseResources()
override
;
77
79
void
getNextAudioBlock (
const
AudioSourceChannelInfo
&)
override
;
80
81
//==============================================================================
83
void
setNextReadPosition (int64 newPosition)
override
;
84
86
int64 getNextReadPosition()
const override
;
87
89
int64 getTotalLength()
const override
;
90
91
private
:
92
//==============================================================================
93
OptionalScopedPointer<AudioFormatReader>
reader;
94
95
int64 nextPlayPos;
96
bool
looping;
97
98
JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (
AudioFormatReaderSource
)
99
};
100
101
}
// namespace juce
juce::AudioFormatReaderSource
Definition
juce_AudioFormatReaderSource.h:38
juce::AudioFormatReaderSource::isLooping
bool isLooping() const override
Definition
juce_AudioFormatReaderSource.h:66
juce::AudioFormatReaderSource::AudioFormatReaderSource
AudioFormatReaderSource(AudioFormatReader *sourceReader, bool deleteReaderWhenThisIsDeleted)
Definition
juce_AudioFormatReaderSource.cpp:29
juce::AudioFormatReaderSource::getAudioFormatReader
AudioFormatReader * getAudioFormatReader() const noexcept
Definition
juce_AudioFormatReaderSource.h:69
juce::AudioFormatReaderSource::setLooping
void setLooping(bool shouldLoop) override
Definition
juce_AudioFormatReaderSource.cpp:42
juce::AudioFormatReader
Definition
juce_AudioFormatReader.h:44
juce::OptionalScopedPointer
Definition
juce_OptionalScopedPointer.h:38
juce::PositionableAudioSource::PositionableAudioSource
PositionableAudioSource()=default
juce::AudioSourceChannelInfo
Definition
juce_AudioSource.h:33
JuceLibraryCode
modules
juce_audio_formats
format
juce_AudioFormatReaderSource.h
Generated by
1.13.1