SoundBuffer#
Functions
-
sfSoundBuffer *sfSoundBuffer_createFromFile(const char *filename)#
Create a new sound buffer and load it from a file.
Here is a complete list of all the supported audio formats: ogg, wav, flac, aiff, au, raw, paf, svx, nist, voc, ircam, w64, mat4, mat5 pvf, htk, sds, avr, sd2, caf, wve, mpc2k, rf64.
- Parameters:
filename – Path of the sound file to load
- Returns:
A new sfSoundBuffer object (NULL if failed)
-
sfSoundBuffer *sfSoundBuffer_createFromMemory(const void *data, size_t sizeInBytes)#
Create a new sound buffer and load it from a file in memory.
Here is a complete list of all the supported audio formats: ogg, wav, flac, aiff, au, raw, paf, svx, nist, voc, ircam, w64, mat4, mat5 pvf, htk, sds, avr, sd2, caf, wve, mpc2k, rf64.
- Parameters:
data – Pointer to the file data in memory
sizeInBytes – Size of the data to load, in bytes
- Returns:
A new sfSoundBuffer object (NULL if failed)
-
sfSoundBuffer *sfSoundBuffer_createFromStream(sfInputStream *stream)#
Create a new sound buffer and load it from a custom stream.
Here is a complete list of all the supported audio formats: ogg, wav, flac, aiff, au, raw, paf, svx, nist, voc, ircam, w64, mat4, mat5 pvf, htk, sds, avr, sd2, caf, wve, mpc2k, rf64.
- Parameters:
stream – Source stream to read from
- Returns:
A new sfSoundBuffer object (NULL if failed)
-
sfSoundBuffer *sfSoundBuffer_createFromSamples(const sfInt16 *samples, sfUint64 sampleCount, unsigned int channelCount, unsigned int sampleRate)#
Create a new sound buffer and load it from an array of samples in memory.
The assumed format of the audio samples is 16 bits signed integer (sfInt16).
- Parameters:
samples – Pointer to the array of samples in memory
sampleCount – Number of samples in the array
channelCount – Number of channels (1 = mono, 2 = stereo, …)
sampleRate – Sample rate (number of samples to play per second)
- Returns:
A new sfSoundBuffer object (NULL if failed)
-
sfSoundBuffer *sfSoundBuffer_copy(const sfSoundBuffer *soundBuffer)#
Create a new sound buffer by copying an existing one.
- Parameters:
soundBuffer – Sound buffer to copy
- Returns:
A new sfSoundBuffer object which is a copy of soundBuffer
-
void sfSoundBuffer_destroy(sfSoundBuffer *soundBuffer)#
Destroy a sound buffer.
- Parameters:
soundBuffer – Sound buffer to destroy
-
sfBool sfSoundBuffer_saveToFile(const sfSoundBuffer *soundBuffer, const char *filename)#
Save a sound buffer to an audio file.
Here is a complete list of all the supported audio formats: ogg, wav, flac, aiff, au, raw, paf, svx, nist, voc, ircam, w64, mat4, mat5 pvf, htk, sds, avr, sd2, caf, wve, mpc2k, rf64.
- Parameters:
soundBuffer – Sound buffer object
filename – Path of the sound file to write
- Returns:
sfTrue if saving succeeded, sfFalse if it failed
-
const sfInt16 *sfSoundBuffer_getSamples(const sfSoundBuffer *soundBuffer)#
Get the array of audio samples stored in a sound buffer.
The format of the returned samples is 16 bits signed integer (sfInt16). The total number of samples in this array is given by the sfSoundBuffer_getSampleCount function.
- Parameters:
soundBuffer – Sound buffer object
- Returns:
Read-only pointer to the array of sound samples
-
sfUint64 sfSoundBuffer_getSampleCount(const sfSoundBuffer *soundBuffer)#
Get the number of samples stored in a sound buffer.
The array of samples can be accessed with the sfSoundBuffer_getSamples function.
- Parameters:
soundBuffer – Sound buffer object
- Returns:
Number of samples
-
unsigned int sfSoundBuffer_getSampleRate(const sfSoundBuffer *soundBuffer)#
Get the sample rate of a sound buffer.
The sample rate is the number of samples played per second. The higher, the better the quality (for example, 44100 samples/s is CD quality).
- Parameters:
soundBuffer – Sound buffer object
- Returns:
Sample rate (number of samples per second)
-
unsigned int sfSoundBuffer_getChannelCount(const sfSoundBuffer *soundBuffer)#
Get the number of channels used by a sound buffer.
If the sound is mono then the number of channels will be 1, 2 for stereo, etc.
- Parameters:
soundBuffer – Sound buffer object
- Returns:
Number of channels
-
sfTime sfSoundBuffer_getDuration(const sfSoundBuffer *soundBuffer)#
Get the total duration of a sound buffer.
- Parameters:
soundBuffer – Sound buffer object
- Returns:
Sound duration