3
# Standard library imports
8
# Enthought library imports
9
from traits.util.resource import find_resource
11
def wav_to_numeric( fname, max_frames=-1 ):
12
f = wave.open( fname, 'rb' )
13
sampleRate = f.getframerate()
14
channels = f.getnchannels()
17
max_frames = f.getnframes()
19
frames = f.readframes(max_frames)
21
if f.getsampwidth() == 2:
22
data = numpy.fromstring(frames, numpy.uint16).astype(numpy.float64) - (2**15 - 0.5)
24
data = numpy.fromstring(frames, numpy.uint8).astype(numpy.float64) - 127.5
32
index = numpy.arange(len(data)) * 1.0/sampleRate
37
sample_path = os.path.join('examples','data','sample.wav')
38
alt_path = os.path.join('..','data','sample.wav')
39
fname = find_resource('Chaco', sample_path, alt_path=alt_path,
41
index, data = wav_to_numeric(fname)
45
if __name__== '__main__':