| \section{\module{al} --- |
| Audio functions on the SGI} |
| |
| \declaremodule{builtin}{al} |
| \platform{IRIX} |
| \modulesynopsis{Audio functions on the SGI.} |
| |
| |
| This module provides access to the audio facilities of the SGI Indy |
| and Indigo workstations. See section 3A of the IRIX man pages for |
| details. You'll need to read those man pages to understand what these |
| functions do! Some of the functions are not available in IRIX |
| releases before 4.0.5. Again, see the manual to check whether a |
| specific function is available on your platform. |
| |
| All functions and methods defined in this module are equivalent to |
| the C functions with \samp{AL} prefixed to their name. |
| |
| Symbolic constants from the C header file \code{<audio.h>} are |
| defined in the standard module |
| \refmodule[al-constants]{AL}\refstmodindex{AL}, see below. |
| |
| \warning{The current version of the audio library may dump core |
| when bad argument values are passed rather than returning an error |
| status. Unfortunately, since the precise circumstances under which |
| this may happen are undocumented and hard to check, the Python |
| interface can provide no protection against this kind of problems. |
| (One example is specifying an excessive queue size --- there is no |
| documented upper limit.)} |
| |
| The module defines the following functions: |
| |
| |
| \begin{funcdesc}{openport}{name, direction\optional{, config}} |
| The name and direction arguments are strings. The optional |
| \var{config} argument is a configuration object as returned by |
| \function{newconfig()}. The return value is an \dfn{audio port |
| object}; methods of audio port objects are described below. |
| \end{funcdesc} |
| |
| \begin{funcdesc}{newconfig}{} |
| The return value is a new \dfn{audio configuration object}; methods of |
| audio configuration objects are described below. |
| \end{funcdesc} |
| |
| \begin{funcdesc}{queryparams}{device} |
| The device argument is an integer. The return value is a list of |
| integers containing the data returned by \cfunction{ALqueryparams()}. |
| \end{funcdesc} |
| |
| \begin{funcdesc}{getparams}{device, list} |
| The \var{device} argument is an integer. The list argument is a list |
| such as returned by \function{queryparams()}; it is modified in place |
| (!). |
| \end{funcdesc} |
| |
| \begin{funcdesc}{setparams}{device, list} |
| The \var{device} argument is an integer. The \var{list} argument is a |
| list such as returned by \function{queryparams()}. |
| \end{funcdesc} |
| |
| |
| \subsection{Configuration Objects \label{al-config-objects}} |
| |
| Configuration objects (returned by \function{newconfig()} have the |
| following methods: |
| |
| \begin{methoddesc}[audio configuration]{getqueuesize}{} |
| Return the queue size. |
| \end{methoddesc} |
| |
| \begin{methoddesc}[audio configuration]{setqueuesize}{size} |
| Set the queue size. |
| \end{methoddesc} |
| |
| \begin{methoddesc}[audio configuration]{getwidth}{} |
| Get the sample width. |
| \end{methoddesc} |
| |
| \begin{methoddesc}[audio configuration]{setwidth}{width} |
| Set the sample width. |
| \end{methoddesc} |
| |
| \begin{methoddesc}[audio configuration]{getchannels}{} |
| Get the channel count. |
| \end{methoddesc} |
| |
| \begin{methoddesc}[audio configuration]{setchannels}{nchannels} |
| Set the channel count. |
| \end{methoddesc} |
| |
| \begin{methoddesc}[audio configuration]{getsampfmt}{} |
| Get the sample format. |
| \end{methoddesc} |
| |
| \begin{methoddesc}[audio configuration]{setsampfmt}{sampfmt} |
| Set the sample format. |
| \end{methoddesc} |
| |
| \begin{methoddesc}[audio configuration]{getfloatmax}{} |
| Get the maximum value for floating sample formats. |
| \end{methoddesc} |
| |
| \begin{methoddesc}[audio configuration]{setfloatmax}{floatmax} |
| Set the maximum value for floating sample formats. |
| \end{methoddesc} |
| |
| |
| \subsection{Port Objects \label{al-port-objects}} |
| |
| Port objects, as returned by \function{openport()}, have the following |
| methods: |
| |
| \begin{methoddesc}[audio port]{closeport}{} |
| Close the port. |
| \end{methoddesc} |
| |
| \begin{methoddesc}[audio port]{getfd}{} |
| Return the file descriptor as an int. |
| \end{methoddesc} |
| |
| \begin{methoddesc}[audio port]{getfilled}{} |
| Return the number of filled samples. |
| \end{methoddesc} |
| |
| \begin{methoddesc}[audio port]{getfillable}{} |
| Return the number of fillable samples. |
| \end{methoddesc} |
| |
| \begin{methoddesc}[audio port]{readsamps}{nsamples} |
| Read a number of samples from the queue, blocking if necessary. |
| Return the data as a string containing the raw data, (e.g., 2 bytes per |
| sample in big-endian byte order (high byte, low byte) if you have set |
| the sample width to 2 bytes). |
| \end{methoddesc} |
| |
| \begin{methoddesc}[audio port]{writesamps}{samples} |
| Write samples into the queue, blocking if necessary. The samples are |
| encoded as described for the \method{readsamps()} return value. |
| \end{methoddesc} |
| |
| \begin{methoddesc}[audio port]{getfillpoint}{} |
| Return the `fill point'. |
| \end{methoddesc} |
| |
| \begin{methoddesc}[audio port]{setfillpoint}{fillpoint} |
| Set the `fill point'. |
| \end{methoddesc} |
| |
| \begin{methoddesc}[audio port]{getconfig}{} |
| Return a configuration object containing the current configuration of |
| the port. |
| \end{methoddesc} |
| |
| \begin{methoddesc}[audio port]{setconfig}{config} |
| Set the configuration from the argument, a configuration object. |
| \end{methoddesc} |
| |
| \begin{methoddesc}[audio port]{getstatus}{list} |
| Get status information on last error. |
| \end{methoddesc} |
| |
| |
| \section{\module{AL} --- |
| Constants used with the \module{al} module} |
| |
| \declaremodule[al-constants]{standard}{AL} |
| \platform{IRIX} |
| \modulesynopsis{Constants used with the \module{al} module.} |
| |
| |
| This module defines symbolic constants needed to use the built-in |
| module \refmodule{al} (see above); they are equivalent to those defined |
| in the C header file \code{<audio.h>} except that the name prefix |
| \samp{AL_} is omitted. Read the module source for a complete list of |
| the defined names. Suggested use: |
| |
| \begin{verbatim} |
| import al |
| from AL import * |
| \end{verbatim} |