25#ifndef SFML_SOUNDSTREAM_H
26#define SFML_SOUNDSTREAM_H
31#include <SFML/Audio/Export.h>
32#include <SFML/Audio/SoundStatus.h>
33#include <SFML/Audio/Types.h>
34#include <SFML/System/Time.h>
35#include <SFML/System/Vector3.h>
49typedef void (*sfSoundStreamSeekCallback)(
sfTime,
void*);
64CSFML_AUDIO_API sfSoundStream* sfSoundStream_create(sfSoundStreamGetDataCallback onGetData,
65 sfSoundStreamSeekCallback onSeek,
66 unsigned int channelCount,
67 unsigned int sampleRate,
76CSFML_AUDIO_API
void sfSoundStream_destroy(sfSoundStream* soundStream);
90CSFML_AUDIO_API
void sfSoundStream_play(sfSoundStream* soundStream);
101CSFML_AUDIO_API
void sfSoundStream_pause(sfSoundStream* soundStream);
113CSFML_AUDIO_API
void sfSoundStream_stop(sfSoundStream* soundStream);
123CSFML_AUDIO_API sfSoundStatus sfSoundStream_getStatus(
const sfSoundStream* soundStream);
135CSFML_AUDIO_API
unsigned int sfSoundStream_getChannelCount(
const sfSoundStream* soundStream);
148CSFML_AUDIO_API
unsigned int sfSoundStream_getSampleRate(
const sfSoundStream* soundStream);
163CSFML_AUDIO_API
void sfSoundStream_setPitch(sfSoundStream* soundStream,
float pitch);
175CSFML_AUDIO_API
void sfSoundStream_setVolume(sfSoundStream* soundStream,
float volume);
188CSFML_AUDIO_API
void sfSoundStream_setPosition(sfSoundStream* soundStream,
sfVector3f position);
203CSFML_AUDIO_API
void sfSoundStream_setRelativeToListener(sfSoundStream* soundStream, sfBool relative);
219CSFML_AUDIO_API
void sfSoundStream_setMinDistance(sfSoundStream* soundStream,
float distance);
237CSFML_AUDIO_API
void sfSoundStream_setAttenuation(sfSoundStream* soundStream,
float attenuation);
249CSFML_AUDIO_API
void sfSoundStream_setPlayingOffset(sfSoundStream* soundStream,
sfTime timeOffset);
263CSFML_AUDIO_API
void sfSoundStream_setLoop(sfSoundStream* soundStream, sfBool loop);
273CSFML_AUDIO_API
float sfSoundStream_getPitch(
const sfSoundStream* soundStream);
283CSFML_AUDIO_API
float sfSoundStream_getVolume(
const sfSoundStream* soundStream);
293CSFML_AUDIO_API
sfVector3f sfSoundStream_getPosition(
const sfSoundStream* soundStream);
304CSFML_AUDIO_API sfBool sfSoundStream_isRelativeToListener(
const sfSoundStream* soundStream);
314CSFML_AUDIO_API
float sfSoundStream_getMinDistance(
const sfSoundStream* soundStream);
324CSFML_AUDIO_API
float sfSoundStream_getAttenuation(
const sfSoundStream* soundStream);
334CSFML_AUDIO_API sfBool sfSoundStream_getLoop(
const sfSoundStream* soundStream);
344CSFML_AUDIO_API
sfTime sfSoundStream_getPlayingOffset(
const sfSoundStream* soundStream);
defines the data to fill by the OnGetData callback
unsigned int sampleCount
Number of samples pointed by Samples.
sfInt16 * samples
Pointer to the audio samples.
3-component vector of floats