mirror of
				https://github.com/saitohirga/WSJT-X.git
				synced 2025-10-31 04:50:34 -04:00 
			
		
		
		
	git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/trunk@189 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
		
			
				
	
	
		
			57 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
			
		
		
	
	
			57 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
| <!doctype html public "-//w3c//dtd html 4.0 transitional//en">
 | |
| <html>
 | |
| <head>
 | |
|    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
 | |
|    <meta name="GENERATOR" content="Mozilla/4.73 [en]C-gatewaynet  (Win98; U) [Netscape]">
 | |
|    <meta name="Author" content="Phil Burk">
 | |
|    <meta name="Description" content="Tutorial for PortAudio, a cross platform, open-source, audio I/O library.It provides a very simple API for recording and/or playing sound using a simple callback function.">
 | |
|    <meta name="KeyWords" content="audio, tutorial, library, portable, open-source, DirectSound,sound, music, JSyn, synthesis,">
 | |
|    <title>PortAudio Tutorial</title>
 | |
| </head>
 | |
| <body>
 | |
|  
 | |
| <center><table COLS=1 WIDTH="100%" BGCOLOR="#FADA7A" >
 | |
| <tr>
 | |
| <td>
 | |
| <center>
 | |
| <h1>
 | |
| PortAudio Tutorial</h1></center>
 | |
| </td>
 | |
| </tr>
 | |
| </table></center>
 | |
| 
 | |
| <h2>
 | |
| Starting and Stopping a Stream</h2>
 | |
| 
 | |
| <blockquote>The stream will not start running until you call Pa_StartStream().
 | |
| Then it will start calling your callback function to perform the audio
 | |
| processing.
 | |
| <blockquote>
 | |
| <pre>err = Pa_StartStream( stream );
 | |
| if( err != paNoError ) goto error;</pre>
 | |
| </blockquote>
 | |
| At this point, audio is being generated. You can communicate to your callback
 | |
| routine through the data structure you passed in on the open call, or through
 | |
| global variables, or using other interprocess communication techniques.
 | |
| Please be aware that your callback function may be called at interrupt
 | |
| time when your foreground process is least expecting it. So avoid sharing
 | |
| complex data structures that are easily corrupted like double linked lists.
 | |
| <p>In many of the tests we simply sleep for a few seconds so we can hear
 | |
| the sound. This is easy to do with Pa_Sleep() which will sleep for some
 | |
| number of milliseconds. Do not rely on this function for accurate scheduling.
 | |
| it is mostly for writing examples.
 | |
| <blockquote>
 | |
| <pre>/* Sleep for several seconds. */
 | |
| Pa_Sleep(NUM_SECONDS*1000);</pre>
 | |
| </blockquote>
 | |
| When you are through, you can stop the stream from the foreground.
 | |
| <blockquote>
 | |
| <pre>err = Pa_StopStream( stream );
 | |
| if( err != paNoError ) goto error;</pre>
 | |
| </blockquote>
 | |
| You can also stop the stream by returning 1 from your custom callback function.</blockquote>
 | |
| <font size=+2><a href="http://www.portaudio.com/">home</a> | <a href="pa_tutorial.html">contents</a>
 | |
| | <a href="pa_tut_open.html">previous</a> |  <a href="pa_tut_term.html">next</a></font>
 | |
| </body>
 | |
| </html>
 |