#!/usr/bin/env python import ogg import ogg.vorbis import struct import array class WaveReader: def __init__(self, filename): self.filename = filename self._f = open(filename, 'rb') self._read_header() def _read_header(self): f = self._f f.seek(12) #skip RIFF chunk, go to fmt chunk if f.read(3) != 'fmt': raise RuntimeError, "Bad chunk" f.seek(20) data = f.read(16) # format, channels, sample rate, Bpsec, Bpsample, bpsample res = struct.unpack('