# sf::SoundStream Class Reference

SoundStream is a streamed sound, ie samples are acquired while the sound is playing. More...

`#include <SoundStream.hpp>`

Inheritance diagram for sf::SoundStream:

List of all members.

## Classes

struct | Chunk
| Structure defining a chunk of audio data to stream. More...

## Public Types

enum | Status
| Enumeration of the sound states. More...

## Public Member Functions

virtual | ~SoundStream ()
| Virtual destructor.
void | Play ()
| Start playing the audio stream.
void | Stop ()
| Stop playing the audio stream.
unsigned int | GetChannelsCount () const
| Return the number of channels (1 = mono, 2 = stereo).
unsigned int | GetSampleRate () const
| Get the stream sample rate.
Status | GetStatus () const
| Get the status of the stream (stopped, paused, playing).
float | GetPlayingOffset () const
| Get the current playing position of the stream.
void | SetLoop (bool Loop)
| Set the stream loop state.
bool | GetLoop () const
| Tell whether or not the stream is looping.

## Protected Member Functions

| SoundStream ()
| Default constructor.
void | Initialize (unsigned int ChannelsCount, unsigned int SampleRate)
| Set the audio stream parameters, you must call it before Play().

## Private Types

typedef void(* | FuncType )(void *)

## Private Member Functions

void | Launch ()
| Create and run the thread.
void | Wait ()
| Wait until the thread finishes.
void | Terminate ()
| Terminate the thread Terminating a thread with this function is not safe, you should rather try to make the thread function terminate by itself.
void | Pause ()
| Pause the sound.
void | SetBuffer (const SoundBuffer &Buffer)
| Set the source buffer.
void | SetPitch (float Pitch)
| Set the sound pitch.
void | SetVolume (float Volume)
| Set the sound volume.
void | SetPosition (float X, float Y, float Z)
| Set the sound position (take 3 values).
void | SetPosition (const Vector3f &Position)
| Set the sound position (take a 3D vector).
void | SetRelativeToListener (bool Relative)
| Make the sound's position relative to the listener's position, or absolute.
void | SetMinDistance (float MinDistance)
| Set the minimum distance - closer than this distance, the listener will hear the sound at its maximum volume.
void | SetAttenuation (float Attenuation)
| Set the attenuation factor - the higher the attenuation, the more the sound will be attenuated with distance from listener.
void | SetPlayingOffset (float TimeOffset)
| Set the current playing position of the sound.
const SoundBuffer * | GetBuffer () const
| Get the source buffer.
float | GetPitch () const
| Get the pitch.
float | GetVolume () const
| Get the volume.
Vector3f | GetPosition () const
| Get the sound position.
bool | IsRelativeToListener () const
| Tell if the sound's position is relative to the listener's position, or if it's absolute.
float | GetMinDistance () const
| Get the minimum distance.
float | GetAttenuation () const
| Get the attenuation factor.
void | ResetBuffer ()
| Reset the internal buffer.

## Detailed Description

SoundStream is a streamed sound, ie samples are acquired while the sound is playing.

Use it for big sounds that would require hundreds of MB in memory (see Music), or for streaming sound from the network

Definition at line 44 of file SoundStream.hpp.

## Member Enumeration Documentation

enum sf::Sound::Status

Enumeration of the sound states.

Definition at line 52 of file Sound.hpp.

## Constructor & Destructor Documentation

sf::SoundStream::~SoundStream | ( |  | ) | `[virtual]`

Virtual destructor.

Definition at line 54 of file SoundStream.cpp.

sf::SoundStream::SoundStream | ( |  | ) | `[protected]`

Default constructor.

Definition at line 39 of file SoundStream.cpp.

## Member Function Documentation

unsigned int sf::SoundStream::GetChannelsCount | ( |  | ) | const

Return the number of channels (1 = mono, 2 = stereo).

Return the number of channels (1 = mono, 2 = stereo, .

Returns:
  Number of channels

..)

Definition at line 126 of file SoundStream.cpp.

bool sf::SoundStream::GetLoop | ( |  | ) | const

Tell whether or not the stream is looping.

Tell whether or not the music is looping.

Returns:
  True if the music is looping, false otherwise

Reimplemented from sf::Sound.

Definition at line 180 of file SoundStream.cpp.

float sf::SoundStream::GetPlayingOffset | ( |  | ) | const

Get the current playing position of the stream.

Returns:
  Current playing position, expressed in seconds

  Current playing position, expressed in seconds

Reimplemented from sf::Sound.

Definition at line 162 of file SoundStream.cpp.

unsigned int sf::SoundStream::GetSampleRate | ( |  | ) | const

Get the stream sample rate.

Get the sound frequency (sample rate).

Returns:
  Stream frequency (number of samples per second)

Definition at line 135 of file SoundStream.cpp.

Sound::Status sf::SoundStream::GetStatus | ( |  | ) | const

Get the status of the stream (stopped, paused, playing).

Get the status of the sound (stopped, paused, playing).

Returns:
  Current status of the sound

Reimplemented from sf::Sound.

Definition at line 144 of file SoundStream.cpp.

void sf::SoundStream::Initialize | ( | unsigned int | ChannelsCount,
|  | unsigned int | SampleRate |
| ) |  |  | `[protected]`

Set the audio stream parameters, you must call it before Play().

Parameters:

  | ChannelsCount | : Number of channels
  | SampleRate | : Sample rate

Definition at line 64 of file SoundStream.cpp.

void sf::SoundStream::Play | ( |  | ) |

Start playing the audio stream.

Reimplemented from sf::Sound.

Definition at line 85 of file SoundStream.cpp.

void sf::SoundStream::SetLoop | ( | bool | Loop | ) |

Set the stream loop state.

Set the music loop state.

This parameter is disabled by default

Parameters:

  | Loop | : True to play in loop, false to play once

Reimplemented from sf::Sound.

Definition at line 171 of file SoundStream.cpp.

void sf::SoundStream::Stop | ( |  | ) |

Stop playing the audio stream.

Reimplemented from sf::Sound.

Definition at line 115 of file SoundStream.cpp.

The documentation for this class was generated from the following files:

- SoundStream.hpp
- SoundStream.cpp