Back to index

python3.2  3.2.2
Classes | Functions | Variables
wave Namespace Reference

Classes

class  Error
class  Wave_read
class  Wave_write

Functions

def open

Variables

list __all__ = ["open", "openfp", "Error"]
int WAVE_FORMAT_PCM = 0x0001
string _array_fmts = 'b'
int big_endian = 1
 openfp = open

Detailed Description

Stuff to parse WAVE files.

Usage.

Reading WAVE files:
      f = wave.open(file, 'r')
where file is either the name of a file or an open file pointer.
The open file pointer must have methods read(), seek(), and close().
When the setpos() and rewind() methods are not used, the seek()
method is not  necessary.

This returns an instance of a class with the following public methods:
      getnchannels()  -- returns number of audio channels (1 for
                 mono, 2 for stereo)
      getsampwidth()  -- returns sample width in bytes
      getframerate()  -- returns sampling frequency
      getnframes()    -- returns number of audio frames
      getcomptype()   -- returns compression type ('NONE' for linear samples)
      getcompname()   -- returns human-readable version of
                 compression type ('not compressed' linear samples)
      getparams()     -- returns a tuple consisting of all of the
                 above in the above order
      getmarkers()    -- returns None (for compatibility with the
                 aifc module)
      getmark(id)     -- raises an error since the mark does not
                 exist (for compatibility with the aifc module)
      readframes(n)   -- returns at most n frames of audio
      rewind()        -- rewind to the beginning of the audio stream
      setpos(pos)     -- seek to the specified position
      tell()          -- return the current position
      close()         -- close the instance (make it unusable)
The position returned by tell() and the position given to setpos()
are compatible and have nothing to do with the actual position in the
file.
The close() method is called automatically when the class instance
is destroyed.

Writing WAVE files:
      f = wave.open(file, 'w')
where file is either the name of a file or an open file pointer.
The open file pointer must have methods write(), tell(), seek(), and
close().

This returns an instance of a class with the following public methods:
      setnchannels(n) -- set the number of channels
      setsampwidth(n) -- set the sample width
      setframerate(n) -- set the frame rate
      setnframes(n)   -- set the number of frames
      setcomptype(type, name)
              -- set the compression type and the
                 human-readable compression type
      setparams(tuple)
              -- set all parameters at once
      tell()          -- return current position in output file
      writeframesraw(data)
              -- write audio frames without pathing up the
                 file header
      writeframes(data)
              -- write audio frames and patch up the file header
      close()         -- patch up the file header and close the
                 output file
You should set the parameters before the first writeframesraw or
writeframes.  The total number of frames does not need to be set,
but when it is set to the correct value, the header does not have to
be patched up.
It is best to first set all parameters, perhaps possibly the
compression type, and then write audio frames using writeframesraw.
When all frames have been written, either call writeframes('') or
close() to patch up the sizes in the header.
The close() method is called automatically when the class instance
is destroyed.

Function Documentation

def wave.open (   f,
  mode = None 
)

Definition at line 491 of file wave.py.

00491 
00492 def open(f, mode=None):
00493     if mode is None:
00494         if hasattr(f, 'mode'):
00495             mode = f.mode
00496         else:
00497             mode = 'rb'
00498     if mode in ('r', 'rb'):
00499         return Wave_read(f)
00500     elif mode in ('w', 'wb'):
00501         return Wave_write(f)
00502     else:
00503         raise Error("mode must be 'r', 'rb', 'w', or 'wb'")

Here is the caller graph for this function:


Variable Documentation

list wave.__all__ = ["open", "openfp", "Error"]

Definition at line 76 of file wave.py.

Definition at line 83 of file wave.py.

Definition at line 88 of file wave.py.

Definition at line 504 of file wave.py.

Definition at line 81 of file wave.py.