From fe8aa4ce5e8eebc1c6f762f4fc40328718a13e22 Mon Sep 17 00:00:00 2001 From: Miller Puckette Date: Sat, 31 Dec 2005 01:32:12 +0000 Subject: Deleted unused (?) files svn path=/trunk/; revision=4318 --- pd/portaudio_v18/docs/pa_tut_rw.html | 79 ------------------------------------ 1 file changed, 79 deletions(-) delete mode 100644 pd/portaudio_v18/docs/pa_tut_rw.html (limited to 'pd/portaudio_v18/docs/pa_tut_rw.html') diff --git a/pd/portaudio_v18/docs/pa_tut_rw.html b/pd/portaudio_v18/docs/pa_tut_rw.html deleted file mode 100644 index 3e8889fb..00000000 --- a/pd/portaudio_v18/docs/pa_tut_rw.html +++ /dev/null @@ -1,79 +0,0 @@ - - - - - - - - - PortAudio Tutorial - - -  -
- - - -
-
-

-PortAudio Tutorial

-
- -

-Blocking Read/Write Functions

- -
[Note: These functions are not part of the official PortAudio -API. They are simply built on top of PortAudio as an extra utility. Also -note that they are under evaluation and their definition may change.] -

There are two fundamentally different ways to design an audio API. One -is to use callback functions the way we have already shown. The callback -function operates under an interrupt or background thread This leaves the -foreground application free to do other things while the audio just runs -in the background. But this can sometimes be awkward. -

So we have provided an alternative technique that lets a program generate -audio in the foreground and then just write it to the audio stream as if -it was a file. If there is not enough room in the audio buffer for more -data, then the write function will just block until more room is available. -This can make it very easy to write an audio example. To use this tool, -you must add the files "pablio/pablio.c" and "pablio/ringbuffer.c" to your -project. You must also: -

-
#include "pablio.h"
-
-Here is a short excerpt of a program that opens a stream for input and -output. It then reads a block of samples from input, and writes them to -output, in a loop.  The complete example can be found in "pablio/test_rw.c". -
-
    #define SAMPLES_PER_FRAME     (2)
-    #define FRAMES_PER_BLOCK    (1024)
-    SAMPLE          samples[SAMPLES_PER_FRAME * FRAMES_PER_BLOCK];
-    PaError         err;
-    PABLIO_Stream  *aStream;
-
-/* Open simplified blocking I/O layer on top of PortAudio. */
-    err = OpenAudioStream( &aStream, SAMPLE_RATE, paFloat32,
-                         (PABLIO_READ_WRITE | PABLIO_STEREO) );
-    if( err != paNoError ) goto error;
-
-/* Process samples in the foreground. */
-    for( i=0; i<(NUM_SECONDS * SAMPLE_RATE); i++ )
-    {
-    /* Read one block of data into sample array from audio input. */
-        ReadAudioStream( aStream, samples, FRAMES_PER_BLOCK );
-    /*
-    ** At this point you could process the data in samples array,
-    ** and write the result back to the same samples array.
-    */
-    /* Write that same frame of data to output. */
-        WriteAudioStream( aStream, samples, FRAMES_PER_BLOCK );
-    }
-
-    CloseAudioStream( aStream );
-
-
-home | -contents -| previousnext - - -- cgit v1.2.1