Game Development Reference
The sf::Sound class
A sound is composed of two classes, Sound and SoundBuffer . The SoundBuffer
class is the resource in the memory and Sound is the wrapper that plays the resource.
This should ring a bell, since it uses the same structure as Sprite and Tex-
ture — Sprite uses Texture as a resource. By designing it in such a way, multiple
Sound instances can use the same SoundBuffer instance, reducing the amount of
memory required significantly.
Enough with the explanations, here is how we create a sound:
We use the same format to load Texture as we do here with SoundBuffer —check
whether the loading has failed and do something accordingly. In this case, without a sound
buffer, it doesn't make sense to continue with the program execution, so we will terminate
it. Some of the common supported audio formats are: OGG, WAV, FLAC, and so on. It is
important to note that MP3 is not supported due to licensing issues.