Loading...
Searching...
No Matches
SoundBuffer.h File Reference
#include <SFML/Audio/Export.h>
#include <SFML/Audio/Types.h>
#include <SFML/System/InputStream.h>
#include <SFML/System/Time.h>
#include <stddef.h>

Go to the source code of this file.

Functions

sfSoundBuffersfSoundBuffer_createFromFile (const char *filename)
 Create a new sound buffer and load it from a file.
 
sfSoundBuffersfSoundBuffer_createFromMemory (const void *data, size_t sizeInBytes)
 Create a new sound buffer and load it from a file in memory.
 
sfSoundBuffersfSoundBuffer_createFromStream (sfInputStream *stream)
 Create a new sound buffer and load it from a custom stream.
 
sfSoundBuffersfSoundBuffer_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.
 
sfSoundBuffersfSoundBuffer_copy (const sfSoundBuffer *soundBuffer)
 Create a new sound buffer by copying an existing one.
 
void sfSoundBuffer_destroy (sfSoundBuffer *soundBuffer)
 Destroy a sound buffer.
 
sfBool sfSoundBuffer_saveToFile (const sfSoundBuffer *soundBuffer, const char *filename)
 Save a sound buffer to an audio file.
 
const sfInt16sfSoundBuffer_getSamples (const sfSoundBuffer *soundBuffer)
 Get the array of audio samples stored in a sound buffer.
 
sfUint64 sfSoundBuffer_getSampleCount (const sfSoundBuffer *soundBuffer)
 Get the number of samples stored in a sound buffer.
 
unsigned int sfSoundBuffer_getSampleRate (const sfSoundBuffer *soundBuffer)
 Get the sample rate of a sound buffer.
 
unsigned int sfSoundBuffer_getChannelCount (const sfSoundBuffer *soundBuffer)
 Get the number of channels used by a sound buffer.
 
sfTime sfSoundBuffer_getDuration (const sfSoundBuffer *soundBuffer)
 Get the total duration of a sound buffer.
 

Function Documentation

◆ sfSoundBuffer_copy()

sfSoundBuffer * sfSoundBuffer_copy ( const sfSoundBuffer soundBuffer)

Create a new sound buffer by copying an existing one.

Parameters
soundBufferSound buffer to copy
Returns
A new sfSoundBuffer object which is a copy of soundBuffer

◆ sfSoundBuffer_createFromFile()

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, mp3, aiff, au, raw, paf, svx, nist, voc, ircam, w64, mat4, mat5 pvf, htk, sds, avr, sd2, caf, wve, mpc2k, rf64.

Parameters
filenamePath of the sound file to load
Returns
A new sfSoundBuffer object (NULL if failed)

◆ sfSoundBuffer_createFromMemory()

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, mp3, aiff, au, raw, paf, svx, nist, voc, ircam, w64, mat4, mat5 pvf, htk, sds, avr, sd2, caf, wve, mpc2k, rf64.

Parameters
dataPointer to the file data in memory
sizeInBytesSize of the data to load, in bytes
Returns
A new sfSoundBuffer object (NULL if failed)

◆ sfSoundBuffer_createFromSamples()

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
samplesPointer to the array of samples in memory
sampleCountNumber of samples in the array
channelCountNumber of channels (1 = mono, 2 = stereo, ...)
sampleRateSample rate (number of samples to play per second)
Returns
A new sfSoundBuffer object (NULL if failed)

◆ sfSoundBuffer_createFromStream()

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, mp3, aiff, au, raw, paf, svx, nist, voc, ircam, w64, mat4, mat5 pvf, htk, sds, avr, sd2, caf, wve, mpc2k, rf64.

Parameters
streamSource stream to read from
Returns
A new sfSoundBuffer object (NULL if failed)

◆ sfSoundBuffer_destroy()

void sfSoundBuffer_destroy ( sfSoundBuffer soundBuffer)

Destroy a sound buffer.

Parameters
soundBufferSound buffer to destroy

◆ sfSoundBuffer_getChannelCount()

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
soundBufferSound buffer object
Returns
Number of channels

◆ sfSoundBuffer_getDuration()

sfTime sfSoundBuffer_getDuration ( const sfSoundBuffer soundBuffer)

Get the total duration of a sound buffer.

Parameters
soundBufferSound buffer object
Returns
Sound duration

◆ sfSoundBuffer_getSampleCount()

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
soundBufferSound buffer object
Returns
Number of samples

◆ sfSoundBuffer_getSampleRate()

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
soundBufferSound buffer object
Returns
Sample rate (number of samples per second)

◆ sfSoundBuffer_getSamples()

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
soundBufferSound buffer object
Returns
Read-only pointer to the array of sound samples

◆ sfSoundBuffer_saveToFile()

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, mp3, aiff, au, raw, paf, svx, nist, voc, ircam, w64, mat4, mat5 pvf, htk, sds, avr, sd2, caf, wve, mpc2k, rf64.

Parameters
soundBufferSound buffer object
filenamePath of the sound file to write
Returns
sfTrue if saving succeeded, sfFalse if it failed