| \section{Built-in Module \sectcode{macspeech}} | 
 | \label{module-macspeech} | 
 | \bimodindex{macspeech} | 
 |  | 
 | \setindexsubitem{(in module macspeech)} | 
 |  | 
 | This module provides an interface to the Macintosh Speech Manager, | 
 | allowing you to let the Macintosh utter phrases. You need a version of | 
 | the speech manager extension (version 1 and 2 have been tested) in | 
 | your \code{Extensions} folder for this to work. The module does not | 
 | provide full access to all features of the Speech Manager yet.  It may | 
 | not be available in all Mac Python versions. | 
 |  | 
 | \begin{funcdesc}{Available}{} | 
 | Test availability of the Speech Manager extension (and, on the | 
 | PowerPC, the Speech Manager shared library). Return 0 or 1.  | 
 | \end{funcdesc} | 
 |  | 
 | \begin{funcdesc}{Version}{} | 
 | Return the (integer) version number of the Speech Manager. | 
 | \end{funcdesc} | 
 |  | 
 | \begin{funcdesc}{SpeakString}{str} | 
 | Utter the string \var{str} using the default voice, | 
 | asynchronously. This aborts any speech that may still be active from | 
 | prior \code{SpeakString} invocations. | 
 | \end{funcdesc} | 
 |  | 
 | \begin{funcdesc}{Busy}{} | 
 | Return the number of speech channels busy, system-wide. | 
 | \end{funcdesc} | 
 |  | 
 | \begin{funcdesc}{CountVoices}{} | 
 | Return the number of different voices available. | 
 | \end{funcdesc} | 
 |  | 
 | \begin{funcdesc}{GetIndVoice}{num} | 
 | Return a voice object for voice number \var{num}. | 
 | \end{funcdesc} | 
 |  | 
 | \subsection{voice objects} | 
 | Voice objects contain the description of a voice. It is currently not | 
 | yet possible to access the parameters of a voice. | 
 |  | 
 | \setindexsubitem{(voice object method)} | 
 |  | 
 | \begin{funcdesc}{GetGender}{} | 
 | Return the gender of the voice: 0 for male, 1 for female and -1 for neuter. | 
 | \end{funcdesc} | 
 |  | 
 | \begin{funcdesc}{NewChannel}{} | 
 | Return a new speech channel object using this voice. | 
 | \end{funcdesc} | 
 |  | 
 | \subsection{speech channel objects} | 
 | A speech channel object allows you to speak strings with slightly more | 
 | control than \code{SpeakString()}, and allows you to use multiple | 
 | speakers at the same time. Please note that channel pitch and rate are | 
 | interrelated in some way, so that to make your Macintosh sing you will | 
 | have to adjust both. | 
 |  | 
 | \setindexsubitem{(speech channel object method)} | 
 | \begin{funcdesc}{SpeakText}{str} | 
 | Start uttering the given string. | 
 | \end{funcdesc} | 
 |  | 
 | \begin{funcdesc}{Stop}{} | 
 | Stop babbling. | 
 | \end{funcdesc} | 
 |  | 
 | \begin{funcdesc}{GetPitch}{} | 
 | Return the current pitch of the channel, as a floating-point number. | 
 | \end{funcdesc} | 
 |  | 
 | \begin{funcdesc}{SetPitch}{pitch} | 
 | Set the pitch of the channel. | 
 | \end{funcdesc} | 
 |  | 
 | \begin{funcdesc}{GetRate}{} | 
 | Get the speech rate (utterances per minute) of the channel as a | 
 | floating point number. | 
 | \end{funcdesc} | 
 |  | 
 | \begin{funcdesc}{SetRate}{rate} | 
 | Set the speech rate of the channel. | 
 | \end{funcdesc} | 
 |  |