Provided by: allegro4-doc_4.4.2-4_all bug


       play_audio_stream  -  Creates  a  new  audio  stream  and  starts playing it. Allegro game
       programming library.


       #include <allegro.h>

       AUDIOSTREAM *play_audio_stream(int len, int bits, int stereo, int freq, int vol, int pan);


       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)

          /* 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");


       This function returns a pointer to the audio stream or NULL if it could not be created.


       install_sound(3alleg4),   get_audio_stream_buffer(3alleg4),    stop_audio_stream(3alleg4),
       AUDIOSTREAM(3alleg4), exstream(3alleg4)