The sunau module provides a convenient interface to the Sun
AU sound format. Note that this module is interface-compatible with
the modules aifc and wave.
An audio file consists of a header followed by the data. The fields
of the header are:
magic word |
The four bytes ".snd". |
header size |
Size of the header, including info, in bytes. |
data size |
Physical size of the data, in bytes. |
encoding |
Indicates how the audio samples are encoded. |
sample rate |
The sampling rate. |
# of channels |
The number of channels in the samples. |
info |
ASCII string giving a description of the audio
file (padded with null bytes). |
Apart from the info field, all header fields are 4 bytes in size.
They are all 32-bit unsigned integers encoded in big-endian byte
order.
The sunau module defines the following functions:
- open (file, mode)
-
If file is a string, open the file by that name, otherwise treat it
as a seekable file-like object. mode can be any of
'r'
- Read only mode.
'w'
- Write only mode.
Note that it does not allow read/write files.
A mode of 'r'
returns a AU_read
object, while a mode of 'w'
or 'wb'
returns
a AU_write object.
- openfp (file, mode)
-
A synonym for open, maintained for backwards compatibility.
The sunau module defines the following exception:
- Error
-
An error raised when something is impossible because of Sun AU specs or
implementation deficiency.
The sunau module defines the following data items:
- AUDIO_FILE_MAGIC
-
An integer every valid Sun AU file begins with, stored in big-endian
form. This is the string ".snd" interpreted as an integer.
- AUDIO_FILE_ENCODING_MULAW_8
-
- AUDIO_FILE_ENCODING_LINEAR_8
-
- AUDIO_FILE_ENCODING_LINEAR_16
-
- AUDIO_FILE_ENCODING_LINEAR_24
-
- AUDIO_FILE_ENCODING_LINEAR_32
-
- AUDIO_FILE_ENCODING_ALAW_8
-
Values of the encoding field from the AU header which are supported by
this module.
- AUDIO_FILE_ENCODING_FLOAT
-
- AUDIO_FILE_ENCODING_DOUBLE
-
- AUDIO_FILE_ENCODING_ADPCM_G721
-
- AUDIO_FILE_ENCODING_ADPCM_G722
-
- AUDIO_FILE_ENCODING_ADPCM_G723_3
-
- AUDIO_FILE_ENCODING_ADPCM_G723_5
-
Additional known values of the encoding field from the AU header, but
which are not supported by this module.
Subsections
See About this document... for information on suggesting changes.