AudioStream

An AudioStream is a pointer to a dynamically allocated Stream.

Destructor

~this
~this()
Undocumented in source.

Members

Aliases

isOpenedForWriting
deprecated alias isOpenedForWriting = isOpenForWriting
Undocumented in source.

Functions

canSeek
bool canSeek()
countModulePatterns
int countModulePatterns()

Length. Returns the amount of patterns in the module Formats that support this: MOD, XM.

finalizeAndGetEncodedResult
const(ubyte)[] finalizeAndGetEncodedResult()
Undocumented in source. Be warned that the author may not have intended to support it.
finalizeEncoding
void finalizeEncoding()

Finalize encoding. After finalization, further writes are not possible anymore however the stream is considered complete and valid for storage.

flush
void flush()

Call fflush() on written samples, if any. It is only useful for streamable output formats, that may want to flush things to disk.

framesRemainingInPattern
int framesRemainingInPattern()

Playback info. Returns the amount of multi-channel frames remaining in the current playing pattern. Formats that support this: MOD

getFormat
AudioFileFormat getFormat()
getLengthInFrames
long getLengthInFrames()
getModuleLength
int getModuleLength()

Length. Returns the amount of PLAYED patterns in the module Formats that support this: MOD, XM.

getNumChannels
int getNumChannels()
getSamplerate
float getSamplerate()
isModule
bool isModule()
isOpenForReading
bool isOpenForReading()
isOpenForWriting
bool isOpenForWriting()
openFromFile
void openFromFile(const(char)[] path)

Opens an audio stream that decodes from a file. This stream will be opened for reading only.

openFromMemory
void openFromMemory(const(ubyte)[] inputData)

Opens an audio stream that decodes from memory. This stream will be opened for reading only. Note: throws a manually allocated exception in case of error. Free it with dplug.core.destroyFree.

openToBuffer
void openToBuffer(AudioFileFormat format, float sampleRate, int numChannels, EncodingOptions options)

Opens an audio stream that writes to a dynamically growable output buffer. This stream will be open for writing only. Access to the internal buffer after encoding with finalizeAndGetEncodedResult. Note: throws a manually allocated exception in case of error. Free it with dplug.core.destroyFree.

openToFile
void openToFile(const(char)[] path, AudioFileFormat format, float sampleRate, int numChannels, EncodingOptions options)

Opens an audio stream that writes to file. This stream will be open for writing only. Note: throws a manually allocated exception in case of error. Free it with dplug.core.destroyFree.

openToMemory
void openToMemory(ubyte* data, size_t maxLength, AudioFileFormat format, float sampleRate, int numChannels, EncodingOptions options)

Opens an audio stream that writes to a pre-defined area in memory of maxLength bytes. This stream will be open for writing only. Destroy this stream with closeAudioStream. Note: throws a manually allocated exception in case of error. Free it with dplug.core.destroyFree.

readSamplesDouble
int readSamplesDouble(double* outData, int frames)
int readSamplesDouble(double[] outData)

Read interleaved double samples in the given buffer outData.

readSamplesFloat
int readSamplesFloat(float* outData, int frames)
int readSamplesFloat(float[] outData)

Read interleaved float samples in the given buffer outData.

realtimeSafe
bool realtimeSafe()
rowsInPattern
int rowsInPattern(int pattern)

Tell. Returns amount of rows in a pattern. Formats that support this: MOD, XM.

seekPosition
bool seekPosition(int pattern, int row)

Seeking. Subsequent reads start from pattern + row, 0 index Only available for input streams. Formats that support seeking per pattern/row: MOD, XM

seekPosition
bool seekPosition(int frame)

Seeking. Subsequent reads start from multi-channel frame index frames. Only available for input streams, for streams whose canSeek() returns true. Warning: seekPosition(lengthInFrames) is Undefined Behaviour for now. (it works in MP3

tellModulePattern
int tellModulePattern()

Tell. Returns the current playing pattern id Formats that support this: MOD, XM

tellModuleRow
int tellModuleRow()

Tell. Returns the current playing row id Formats that support this: MOD, XM

tellPosition
int tellPosition()

Tell. Returns the current position in multichannel frames. -1 on error.

writeSamplesDouble
int writeSamplesDouble(double* inData, int frames)
int writeSamplesDouble(double[] inData)

Write interleaved double samples to the stream, from the given buffer inData[0..frames].

writeSamplesFloat
int writeSamplesFloat(float* inData, int frames)
int writeSamplesFloat(float[] inData)

Write interleaved float samples to the stream, from the given buffer inData[0..frames].

Meta