DragonFly On-Line Manual Pages
play_audio_stream(3) Allegro manual play_audio_stream(3)
NAME
play_audio_stream - Creates a new audio stream and starts playing it.
Allegro game programming library.
SYNOPSIS
#include <allegro.h>
AUDIOSTREAM *play_audio_stream(int len, int bits, int stereo, int freq,
int vol, int pan);
DESCRIPTION
This function creates a new audio stream and starts playing it. The
length is the size of each transfer buffer in sample frames (not
bytes), where a sample frame is a single sample value for mono data or
a pair of interleaved sample values (left first) for stereo data. The
length should normally be (but doesn't have to be) a power of 2
somewhere around 1k in size. Larger buffers are more efficient and
require fewer updates, but result in more latency between you providing
the data and it actually being played.
The `bits' parameter must be 8 or 16. `freq' is the sample rate of the
data in Hertz. The `vol' and `pan' values use the same 0-255 ranges as
the regular sample playing functions. The `stereo' parameter should be
set to 1 for stereo streams, or 0 otherwise.
If you want to adjust the pitch, volume, or panning of a stream once it
is playing, you can use the regular voice_*() functions with
stream->voice as a parameter. The format of the sample data is
described in the SAMPLE entry of the "Structures and types defined by
Allegro" chapter. The formula to get the size of the buffers in bytes
could be:
bytes = length * (bits / 8) * (stereo ? 2 : 1)
Example:
/* Create a 22KHz 8bit mono audio stream. */
stream = play_audio_stream(1024, 8, FALSE, 22050, 255, 128);
if (!stream)
abort_on_error("Error creating audio stream!\n");
RETURN VALUE
This function returns a pointer to the audio stream or NULL if it could
not be created.
SEE ALSO
install_sound(3), get_audio_stream_buffer(3), stop_audio_stream(3),
AUDIOSTREAM(3), exstream(3)
Allegro version 4.4.2 play_audio_stream(3)