Simple Sound for Small
Devices
libsssd
last updated: 03 JUN 2003 (v0.6)
Function Name: sssd_registerSample
Register a sample already in memory with sssd. The
sample data may not be freed after registering as sssd does not make a
copy. The sample must also be in the same format as the player
(bits, channels, frequency.) This function can be used for
dynamic samples.
C Prototype:
int sssd_registerSample( struct sssdaudio* ga,void *sampledata, int
channels, int freq, int bits, int samples, int flags);
Other Prototypes:
Arguments:
struct
gameaudio *ga
Pointer to an initialized sssdaudio structure
(returned by sssd_initAudio)
void *sampledata
Pointer to the digital audio sample data.
(Must be unsigned 8-bit or signed 16-bit.)
int channels
Number of channels present in the sample data
(currently only 1 or 2 for mono or stereo are supported)
int frequency
Sample frequency of the sound data. (See also
frequency hints)
int bits
Number of bits per sample value (currently only 8
and 16 are supported)
int samples
Number of samples in the sample data.
(sometimes called 'frames')
int flags
A series of or'ed {|} flags
Override sample parameters: LOAD_RIGHT, LOAD_LEFT
will blank the left or the right channel ONLY when the sample is first
registered. If the sample is dynamic and software fills the buffer
with new sample data, sssd will not blank the channel again.
These should be used when you want a sample to pan.
Returns:
>0
Successful copy returns the sample_id of the sample.
This ID number is used to control and play the sample.
ERR_NOT_INITIALIZED
SSSD system has not been initialized.
ERR_SAMPLES_FULL
No open sample slots are available to create a new
SSSD sample.
libsssd (c)2003
Patrick Roberts created from libgaudio (c) 1999-2000 A. Schiffler.
Release as open source under MPL 1.1. Documentation (c)2003
Patrick Roberts.