#include <SFML/Audio/Export.h>
#include <SFML/Audio/SoundStatus.h>
#include <SFML/Audio/Types.h>
#include <SFML/System/Time.h>
#include <SFML/System/Vector3.h>
Go to the source code of this file.
Functions | |
sfSound * | sfSound_create (void) |
Create a new sound. | |
sfSound * | sfSound_copy (const sfSound *sound) |
Create a new sound by copying an existing one. | |
void | sfSound_destroy (sfSound *sound) |
Destroy a sound. | |
void | sfSound_play (sfSound *sound) |
Start or resume playing a sound. | |
void | sfSound_pause (sfSound *sound) |
Pause a sound. | |
void | sfSound_stop (sfSound *sound) |
Stop playing a sound. | |
void | sfSound_setBuffer (sfSound *sound, const sfSoundBuffer *buffer) |
Set the source buffer containing the audio data to play. | |
const sfSoundBuffer * | sfSound_getBuffer (const sfSound *sound) |
Get the audio buffer attached to a sound. | |
void | sfSound_setLoop (sfSound *sound, sfBool loop) |
Set whether or not a sound should loop after reaching the end. | |
sfBool | sfSound_getLoop (const sfSound *sound) |
Tell whether or not a sound is in loop mode. | |
sfSoundStatus | sfSound_getStatus (const sfSound *sound) |
Get the current status of a sound (stopped, paused, playing) | |
void | sfSound_setPitch (sfSound *sound, float pitch) |
Set the pitch of a sound. | |
void | sfSound_setVolume (sfSound *sound, float volume) |
Set the volume of a sound. | |
void | sfSound_setPosition (sfSound *sound, sfVector3f position) |
Set the 3D position of a sound in the audio scene. | |
void | sfSound_setRelativeToListener (sfSound *sound, sfBool relative) |
Make the sound's position relative to the listener or absolute. | |
void | sfSound_setMinDistance (sfSound *sound, float distance) |
Set the minimum distance of a sound. | |
void | sfSound_setAttenuation (sfSound *sound, float attenuation) |
Set the attenuation factor of a sound. | |
void | sfSound_setPlayingOffset (sfSound *sound, sfTime timeOffset) |
Change the current playing position of a sound. | |
float | sfSound_getPitch (const sfSound *sound) |
Get the pitch of a sound. | |
float | sfSound_getVolume (const sfSound *sound) |
Get the volume of a sound. | |
sfVector3f | sfSound_getPosition (const sfSound *sound) |
Get the 3D position of a sound in the audio scene. | |
sfBool | sfSound_isRelativeToListener (const sfSound *sound) |
Tell whether a sound's position is relative to the listener or is absolute. | |
float | sfSound_getMinDistance (const sfSound *sound) |
Get the minimum distance of a sound. | |
float | sfSound_getAttenuation (const sfSound *sound) |
Get the attenuation factor of a sound. | |
sfTime | sfSound_getPlayingOffset (const sfSound *sound) |
Get the current playing position of a sound. | |
Function Documentation
◆ sfSound_copy()
Create a new sound by copying an existing one.
- Parameters
-
sound Sound to copy
- Returns
- A new sfSound object which is a copy of sound
◆ sfSound_create()
sfSound * sfSound_create | ( | void | ) |
Create a new sound.
- Returns
- A new sfSound object
◆ sfSound_destroy()
void sfSound_destroy | ( | sfSound * | sound | ) |
Destroy a sound.
- Parameters
-
sound Sound to destroy
◆ sfSound_getAttenuation()
float sfSound_getAttenuation | ( | const sfSound * | sound | ) |
Get the attenuation factor of a sound.
- Parameters
-
sound Sound object
- Returns
- Attenuation factor of the sound
◆ sfSound_getBuffer()
const sfSoundBuffer * sfSound_getBuffer | ( | const sfSound * | sound | ) |
Get the audio buffer attached to a sound.
- Parameters
-
sound Sound object
- Returns
- Sound buffer attached to the sound (can be NULL)
◆ sfSound_getLoop()
Tell whether or not a sound is in loop mode.
- Parameters
-
sound Sound object
- Returns
- sfTrue if the sound is looping, sfFalse otherwise
◆ sfSound_getMinDistance()
float sfSound_getMinDistance | ( | const sfSound * | sound | ) |
Get the minimum distance of a sound.
- Parameters
-
sound Sound object
- Returns
- Minimum distance of the sound
◆ sfSound_getPitch()
float sfSound_getPitch | ( | const sfSound * | sound | ) |
Get the pitch of a sound.
- Parameters
-
sound Sound object
- Returns
- Pitch of the sound
◆ sfSound_getPlayingOffset()
Get the current playing position of a sound.
- Parameters
-
sound Sound object
- Returns
- Current playing position
◆ sfSound_getPosition()
sfVector3f sfSound_getPosition | ( | const sfSound * | sound | ) |
Get the 3D position of a sound in the audio scene.
- Parameters
-
sound Sound object
- Returns
- Position of the sound in the world
◆ sfSound_getStatus()
sfSoundStatus sfSound_getStatus | ( | const sfSound * | sound | ) |
Get the current status of a sound (stopped, paused, playing)
- Parameters
-
sound Sound object
- Returns
- Current status
◆ sfSound_getVolume()
float sfSound_getVolume | ( | const sfSound * | sound | ) |
Get the volume of a sound.
- Parameters
-
sound Sound object
- Returns
- Volume of the sound, in the range [0, 100]
◆ sfSound_isRelativeToListener()
Tell whether a sound's position is relative to the listener or is absolute.
- Parameters
-
sound Sound object
- Returns
- sfTrue if the position is relative, sfFalse if it's absolute
◆ sfSound_pause()
void sfSound_pause | ( | sfSound * | sound | ) |
Pause a sound.
This function pauses the sound if it was playing, otherwise (sound already paused or stopped) it has no effect.
- Parameters
-
sound Sound object
◆ sfSound_play()
void sfSound_play | ( | sfSound * | sound | ) |
Start or resume playing a sound.
This function starts the sound if it was stopped, resumes it if it was paused, and restarts it from beginning if it was it already playing. This function uses its own thread so that it doesn't block the rest of the program while the sound is played.
- Parameters
-
sound Sound object
◆ sfSound_setAttenuation()
void sfSound_setAttenuation | ( | sfSound * | sound, |
float | attenuation | ||
) |
Set the attenuation factor of a sound.
The attenuation is a multiplicative factor which makes the sound more or less loud according to its distance from the listener. An attenuation of 0 will produce a non-attenuated sound, i.e. its volume will always be the same whether it is heard from near or from far. On the other hand, an attenuation value such as 100 will make the sound fade out very quickly as it gets further from the listener. The default value of the attenuation is 1.
- Parameters
-
sound Sound object attenuation New attenuation factor of the sound
◆ sfSound_setBuffer()
void sfSound_setBuffer | ( | sfSound * | sound, |
const sfSoundBuffer * | buffer | ||
) |
Set the source buffer containing the audio data to play.
It is important to note that the sound buffer is not copied, thus the sfSoundBuffer object must remain alive as long as it is attached to the sound.
- Parameters
-
sound Sound object buffer Sound buffer to attach to the sound
◆ sfSound_setLoop()
Set whether or not a sound should loop after reaching the end.
If set, the sound will restart from beginning after reaching the end and so on, until it is stopped or sfSound_setLoop(sound, sfFalse) is called. The default looping state for sounds is false.
- Parameters
-
sound Sound object loop sfTrue to play in loop, sfFalse to play once
◆ sfSound_setMinDistance()
void sfSound_setMinDistance | ( | sfSound * | sound, |
float | distance | ||
) |
Set the minimum distance of a sound.
The "minimum distance" of a sound is the maximum distance at which it is heard at its maximum volume. Further than the minimum distance, it will start to fade out according to its attenuation factor. A value of 0 ("inside the head of the listener") is an invalid value and is forbidden. The default value of the minimum distance is 1.
- Parameters
-
sound Sound object distance New minimum distance of the sound
◆ sfSound_setPitch()
void sfSound_setPitch | ( | sfSound * | sound, |
float | pitch | ||
) |
Set the pitch of a sound.
The pitch represents the perceived fundamental frequency of a sound; thus you can make a sound more acute or grave by changing its pitch. A side effect of changing the pitch is to modify the playing speed of the sound as well. The default value for the pitch is 1.
- Parameters
-
sound Sound object pitch New pitch to apply to the sound
◆ sfSound_setPlayingOffset()
Change the current playing position of a sound.
The playing position can be changed when the sound is either paused or playing.
- Parameters
-
sound Sound object timeOffset New playing position
◆ sfSound_setPosition()
void sfSound_setPosition | ( | sfSound * | sound, |
sfVector3f | position | ||
) |
Set the 3D position of a sound in the audio scene.
Only sounds with one channel (mono sounds) can be spatialized. The default position of a sound is (0, 0, 0).
- Parameters
-
sound Sound object position Position of the sound in the scene
◆ sfSound_setRelativeToListener()
Make the sound's position relative to the listener or absolute.
Making a sound relative to the listener will ensure that it will always be played the same way regardless the position of the listener. This can be useful for non-spatialized sounds, sounds that are produced by the listener, or sounds attached to it. The default value is false (position is absolute).
- Parameters
-
sound Sound object relative sfTrue to set the position relative, sfFalse to set it absolute
◆ sfSound_setVolume()
void sfSound_setVolume | ( | sfSound * | sound, |
float | volume | ||
) |
Set the volume of a sound.
The volume is a value between 0 (mute) and 100 (full volume). The default value for the volume is 100.
- Parameters
-
sound Sound object volume Volume of the sound
◆ sfSound_stop()
void sfSound_stop | ( | sfSound * | sound | ) |
Stop playing a sound.
This function stops the sound if it was playing or paused, and does nothing if it was already stopped. It also resets the playing position (unlike sfSound_pause).
- Parameters
-
sound Sound object