TracktionEngine
Loading...
Searching...
No Matches
Public Member Functions | Public Attributes | List of all members
engine::AudioFileWriter Class Reference

Smart wrapper for writing to an audio file. More...

#include <tracktion_AudioFileWriter.h>

Inherits juce::ReferenceCountedObject.

Public Member Functions

 AudioFileWriter (const AudioFile &file, juce::AudioFormat *formatToUse, int numChannels, double sampleRate, int bitsPerSample, const juce::StringPairArray &metadata, int quality)
 
 AudioFileWriter (const AudioFile &file, juce::AudioFormat *formatToUse, int numChannels, double sampleRate, int bitsPerSample, const juce::StringPairArray &metadata, int quality, const juce::AudioChannelSet &channelLayout)
 
 ~AudioFileWriter ()
 Destructor, calls closeForWriting.
 
bool isOpen () const noexcept
 Returns true if the file is open and ready to write to.
 
double getSampleRate () const noexcept
 Returns the sample rate of the writer, should only be called on an open writer.
 
int getNumChannels () const noexcept
 Returns the num channels of the writer, should only be called on an open writer.
 
bool appendBuffer (juce::AudioBuffer< float > &buffer, int numSamples)
 Appends an AudioBuffer to the file.
 
bool appendBuffer (const int **buffer, int numSamples)
 Appends an block of samples to the file.
 
bool writeFromAudioReader (juce::AudioFormatReader &, SampleCount startSample, SampleCount numSamples)
 Appends a block of samples to the file from an audio format reader.
 
void closeForWriting ()
 Deletes the writer and releases the file handle.
 

Public Attributes

AudioFile file
 

Detailed Description

Smart wrapper for writing to an audio file.

Internally this opens a File for writng and provides some helper methods to append to it and free the file handle when done.

Constructor & Destructor Documentation

◆ AudioFileWriter() [1/2]

engine::AudioFileWriter::AudioFileWriter ( const AudioFile file,
juce::AudioFormat *  formatToUse,
int  numChannels,
double  sampleRate,
int  bitsPerSample,
const juce::StringPairArray &  metadata,
int  quality 
)

◆ AudioFileWriter() [2/2]

engine::AudioFileWriter::AudioFileWriter ( const AudioFile file,
juce::AudioFormat *  formatToUse,
int  numChannels,
double  sampleRate,
int  bitsPerSample,
const juce::StringPairArray &  metadata,
int  quality,
const juce::AudioChannelSet &  channelLayout 
)

◆ ~AudioFileWriter()

engine::AudioFileWriter::~AudioFileWriter ( )

Destructor, calls closeForWriting.

Member Function Documentation

◆ isOpen()

bool engine::AudioFileWriter::isOpen ( ) const
noexcept

Returns true if the file is open and ready to write to.

Referenced by engine::AudioFileUtils::readFromFormat(), and engine::WarpTimeRenderJob::renderNextBlock().

◆ getSampleRate()

double engine::AudioFileWriter::getSampleRate ( ) const
noexcept

Returns the sample rate of the writer, should only be called on an open writer.

◆ getNumChannels()

int engine::AudioFileWriter::getNumChannels ( ) const
noexcept

Returns the num channels of the writer, should only be called on an open writer.

◆ appendBuffer() [1/2]

bool engine::AudioFileWriter::appendBuffer ( juce::AudioBuffer< float > &  buffer,
int  numSamples 
)

Appends an AudioBuffer to the file.

◆ appendBuffer() [2/2]

bool engine::AudioFileWriter::appendBuffer ( const int **  buffer,
int  numSamples 
)

Appends an block of samples to the file.

◆ writeFromAudioReader()

bool engine::AudioFileWriter::writeFromAudioReader ( juce::AudioFormatReader &  ,
SampleCount  startSample,
SampleCount  numSamples 
)

Appends a block of samples to the file from an audio format reader.

Referenced by engine::AudioFileUtils::readFromFormat().

◆ closeForWriting()

void engine::AudioFileWriter::closeForWriting ( )

Deletes the writer and releases the file handle.

Member Data Documentation

◆ file

AudioFile engine::AudioFileWriter::file

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