Changeset 53 for pa_proposals/trunk

Show
Ignore:
Timestamp:
10/22/02 05:06:35 (6 years ago)
Author:
rossbencina
Message:

added new proposals

Location:
pa_proposals/trunk
Files:
4 added
2 modified

Legend:

Unmodified
Added
Removed
  • pa_proposals/trunk/index.html

    r50 r53  
    1616 
    1717<P><A href="http://www.portaudio.com/">PortAudio Home Page</A></P> 
    18 <P>Updated: October 21, 2002 </P> 
     18<P>Updated: October 22, 2002 </P> 
    1919 
    2020<H2>Introduction</H2> 
     
    3636<H2>Open Proposals</H2> 
    3737 
    38 <P> The following table lists the proposals currently under consideration. All of the listed proposals have  
    39 undergone considerable peer review and are considerd complete. Most have been fully or partially 
     38<P> The following table lists the proposals currently under consideration. The majority of the listed proposals have undergone considerable peer review and are considerd complete. Most have been fully or partially 
    4039implemented for at least one platform in the v19-devel CVS branch. Until version 19 is released 
    4140there is a small possibility that the content of these proposals may change in response to 
     
    177176                <TD>implemented</TD> 
    178177        </TR> 
    179  
     178        <TR BGCOLOR="#FFCCFF"> 
     179                <TD><A HREF="017-MethodForRetrievingActualStreamSampleRate.html">017 - Method for Retrieving Actual Stream Sample Rate</A></TD> 
     180                <TD>open for discussion</TD> 
     181                <TD>not implemented</TD> 
     182                <TD>not implemented</TD> 
     183                <TD>not implemented</TD> 
     184                <TD>not implemented</TD> 
     185        </TR> 
     186        <TR> 
     187                <TD><A HREF="018-VersionInformationInterface.html">018 - Version Information Interface</A></TD> 
     188                <TD>complete</TD> 
     189                <TD>implemented</TD> 
     190                <TD>N/A</TD> 
     191                <TD>N/A</TD> 
     192                <TD>N/A</TD> 
     193        </TR> 
     194        <TR BGCOLOR="#FFCCFF"> 
     195                <TD><A HREF="019-NotifyClientWhenAllBuffersHavePlayed.html">019 - Notify Client When All Buffers Have Played</A></TD> 
     196                <TD>open for discussion</TD> 
     197                <TD>not implemented</TD> 
     198                <TD>not implemented</TD> 
     199                <TD>not implemented</TD> 
     200                <TD>not implemented</TD> 
     201        </TR> 
     202        <TR BGCOLOR="#FFCCFF"> 
     203                <TD><A HREF="020-AllowCallbackToPrimeStream.html">020 - Allow Callback to Prime Stream</A></TD> 
     204                <TD>open for discussion</TD> 
     205                <TD>not implemented</TD> 
     206                <TD>not implemented</TD> 
     207                <TD>not implemented</TD> 
     208                <TD>not implemented</TD> 
     209        </TR> 
    180210</TABLE> 
    181211 
  • pa_proposals/trunk/possibilities.html

    r30 r53  
    1818<P><A href="index.html">Enhancement Proposals Index</A>, 
    1919<A href="http://www.portaudio.com/">PortAudio Home Page</A></P> 
    20 <P>Updated: October 5, 2002 </P> 
     20<P>Updated: October 22, 2002 </P> 
    2121 
    2222<H4>Overview</H4> 
     
    2828made about when or if these enhancements will be adopted. 
    2929</P> 
    30  
    31  
    32 <H4>Stream Finished Callback</H4> 
    33  
    34 <P> 
    35 PortAudio allows clients to terminate a stream by returning non-zero from the 
    36 stream callback function. However, PortAudio cannot notify clients when the stream has 
    37 actually completed playing all audio data. Currently the only methods of discovering 
    38 whether a stream has actually finished playing is to poll Pa_IsStreamActive() 
    39 or to wait for a blocking call to Pa_StopStream() to return. Some clients would  
    40 prefer to receive an asyncronous notification when the stream completes playing: 
    41 </P> 
    42  
    43 <PRE> 
    44 typedef void PaStreamFinishedCallback( void *userData ); 
    45  
    46 /* register a callback function which will be called when a stream enters 
    47  the Callback Finished state in response to the audio callback returning 
    48  non-zero*/ 
    49  
    50 PaError Pa_SetStreamFinishedCallback( PaStream *stream, PaStreamFinishedCallback* streamFinishedCallback );  
    51 </PRE> 
    52  
    53  
    54 <H4>Version querying functions</H4> 
    55  
    56 <P> 
    57 Some clients could benefit from being able to determine which version of 
    58 PortAudio is in use. This could be achieved using the following version  
    59 querying functions: 
    60 </P> 
    61  
    62 <PRE> 
    63 /* return the release number of the currently running build of PortAudio, eg 1900 */ 
    64 int Pa_GetVersion(); 
    65  
    66 /* return a textual description of the current PortAudio build, eg "PortAudio V19-devel 13 October 2002" */ 
    67 const char* Pa_GetVersionText(); 
    68 </PRE> 
    6930 
    7031 
     
    7940 
    8041 
    81 <H4>Pa_OpenStream() Flag to Prime Initial Buffers Using the Stream Callback</H4> 
    82  
    83 <P> 
    84 Currently, when a stream is started, host buffers are initially filled with zeros (silence). This is done so that the Stream Callback: a) is called regularly (useful for time syncronisation), b) provides relatively constant latency from calback to output, and c) avoids a peak in processor load while a number of buffers are filled one after another. The downside of this strategy is that the startup latency is held constant, whereas some host APIs may be able to provide significantly lower startup latency if the initial buffers are filled with valid sample data. 
    85 </P> 
    86  
    87 <P> 
    88 Although it is generally held that the above behavior is the most widely useful for streaming audio applications, a flag could be provided to Pa_OpenStream() to indicate that the buffers should initially be primed using the callback: 
    89 </P> 
    90  
    91 <PRE> 
    92 paPrimeBuffersUsingCallback 
    93 </PRE> 
    94  
    9542</BODY> 
    9643</HTML>