25 #ifndef JUCE_AUDIOFORMATWRITER_H_INCLUDED
26 #define JUCE_AUDIOFORMATWRITER_H_INCLUDED
61 unsigned int numberOfChannels,
62 unsigned int bitsPerSample);
94 virtual bool write (
const int** samplesToWrite,
int numSamples) = 0;
105 virtual bool flush();
120 int64 numSamplesToRead);
132 int numSamplesToRead,
133 int samplesPerBlock = 2048);
138 int startSample,
int numSamples);
141 bool writeFromFloatArrays (
const float*
const* channels,
int numChannels,
int numSamples);
173 int numSamplesToBuffer);
190 bool write (
const float*
const*
data,
int numSamples);
198 virtual void reset (
int numChannels,
double sampleRate,
int64 totalSamplesInSource) = 0;
200 int startOffsetInBuffer,
int numSamples) = 0;
210 void setDataReceiver (IncomingDataReceiver*);
215 void setFlushInterval (
int numSamplesPerFlush)
noexcept;
241 template <
class DestSampleType,
class SourceSampleType,
class DestEndianness>
247 static void write (
void* destData,
int numDestChannels,
const int*
const* source,
248 int numSamples,
const int sourceOffset = 0)
noexcept
250 for (
int i = 0; i < numDestChannels; ++i)
252 const DestType dest (
addBytesToPointer (destData, i * DestType::getBytesPerSample()), numDestChannels);
254 if (*source !=
nullptr)
256 dest.
convertSamples (SourceType (*source + sourceOffset), numSamples);
274 #endif // JUCE_AUDIOFORMATWRITER_H_INCLUDED
Definition: juce_AudioSampleBuffer.h:34
Definition: juce_AudioSource.h:110
#define noexcept
Definition: juce_CompilerSupport.h:141
Definition: juce_AudioDataConverters.h:355
Type * addBytesToPointer(Type *basePointer, IntegerType bytes) noexcept
Definition: juce_Memory.h:53
Definition: juce_String.h:43
#define JUCE_API
Definition: juce_StandardHeader.h:139
JOCTET * buffer
Definition: juce_JPEGLoader.cpp:302
void convertSamples(Pointer source, int numSamples) const noexcept
Definition: juce_AudioDataConverters.h:441
Definition: juce_ScopedPointer.h:70
Definition: juce_OutputStream.h:42
long long int64
Definition: juce_MathsFunctions.h:60
Definition: juce_ContainerDeletePolicy.h:44
Definition: juce_TimeSliceThread.h:84
void clearSamples(int numSamples) const noexcept
Definition: juce_AudioDataConverters.h:483
JSAMPIMAGE data
Definition: jpeglib.h:945