OpenShot Audio Library | OpenShotAudio
0.4.0
Loading...
Searching...
No Matches
juce_AudioFormat.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
//==============================================================================
38
class
JUCE_API
AudioFormat
39
{
40
public
:
41
//==============================================================================
43
virtual
~AudioFormat
();
44
45
//==============================================================================
49
const
String
& getFormatName()
const
;
50
51
//==============================================================================
57
virtual
StringArray
getFileExtensions()
const
;
58
64
virtual
bool
canHandleFile (
const
File
&
fileToTest
);
65
67
virtual
Array<int>
getPossibleSampleRates
() = 0;
68
70
virtual
Array<int>
getPossibleBitDepths
() = 0;
71
73
virtual
bool
canDoStereo
() = 0;
74
76
virtual
bool
canDoMono
() = 0;
77
79
virtual
bool
isCompressed();
80
82
virtual
bool
isChannelLayoutSupported (
const
AudioChannelSet
&
channelSet
);
83
92
virtual
StringArray
getQualityOptions();
93
94
//==============================================================================
110
virtual
AudioFormatReader
*
createReaderFor
(
InputStream
* sourceStream,
111
bool
deleteStreamIfOpeningFails
) = 0;
112
116
virtual
MemoryMappedAudioFormatReader
* createMemoryMappedReader (
const
File
& file);
117
virtual
MemoryMappedAudioFormatReader
* createMemoryMappedReader (
FileInputStream
*
fin
);
118
149
virtual
AudioFormatWriter
*
createWriterFor
(
OutputStream
*
streamToWriteTo
,
150
double
sampleRateToUse
,
151
unsigned
int
numberOfChannels,
152
int
bitsPerSample,
153
const
StringPairArray
& metadataValues,
154
int
qualityOptionIndex
) = 0;
155
187
virtual
AudioFormatWriter
* createWriterFor (
OutputStream
*
streamToWriteTo
,
188
double
sampleRateToUse
,
189
const
AudioChannelSet
& channelLayout,
190
int
bitsPerSample,
191
const
StringPairArray
& metadataValues,
192
int
qualityOptionIndex
);
193
194
protected
:
200
AudioFormat
(
String
formatName,
StringArray
fileExtensions);
201
208
AudioFormat
(
StringRef
formatName,
StringRef
fileExtensions);
209
210
private
:
211
//==============================================================================
212
String
formatName;
213
StringArray
fileExtensions;
214
};
215
216
}
// namespace juce
juce::AudioChannelSet
Definition
juce_AudioChannelSet.h:47
juce::AudioFormatReader
Definition
juce_AudioFormatReader.h:44
juce::AudioFormatWriter
Definition
juce_AudioFormatWriter.h:44
juce::AudioFormat
Definition
juce_AudioFormat.h:39
juce::AudioFormat::createWriterFor
virtual AudioFormatWriter * createWriterFor(OutputStream *streamToWriteTo, double sampleRateToUse, unsigned int numberOfChannels, int bitsPerSample, const StringPairArray &metadataValues, int qualityOptionIndex)=0
juce::AudioFormat::canDoStereo
virtual bool canDoStereo()=0
juce::AudioFormat::canDoMono
virtual bool canDoMono()=0
juce::AudioFormat::getPossibleBitDepths
virtual Array< int > getPossibleBitDepths()=0
juce::AudioFormat::createReaderFor
virtual AudioFormatReader * createReaderFor(InputStream *sourceStream, bool deleteStreamIfOpeningFails)=0
juce::AudioFormat::getPossibleSampleRates
virtual Array< int > getPossibleSampleRates()=0
juce::FileInputStream
Definition
juce_FileInputStream.h:35
juce::File
Definition
juce_File.h:45
juce::InputStream
Definition
juce_InputStream.h:37
juce::MemoryMappedAudioFormatReader
Definition
juce_MemoryMappedAudioFormatReader.h:47
juce::Optional
Definition
juce_Optional.h:57
juce::OutputStream
Definition
juce_OutputStream.h:38
juce::StringArray
Definition
juce_StringArray.h:35
juce::StringPairArray
Definition
juce_StringPairArray.h:35
juce::StringRef
Definition
juce_StringRef.h:62
juce::String
Definition
juce_String.h:53
JuceLibraryCode
modules
juce_audio_formats
format
juce_AudioFormat.h
Generated by
1.9.8