ยปCore Development>Code coverage>Mac/Demo/sound/playaiff.py

Python code coverage for Mac/Demo/sound/playaiff.py

#countcontent
1n/afrom Carbon.Sound import *
2n/afrom Carbon import Snd
3n/a
4n/aimport aifc, audioop
5n/a
6n/afn = 'f:just samples:2ndbeat.aif'
7n/aaf = aifc.open(fn, 'r')
8n/aprint af.getparams()
9n/aprint 'nframes =', af.getnframes()
10n/aprint 'nchannels =', af.getnchannels()
11n/aprint 'framerate =', af.getframerate()
12n/anframes = min(af.getnframes(), 100000)
13n/aframes = af.readframes(nframes)
14n/aprint 'len(frames) =', len(frames)
15n/aprint repr(frames[:100])
16n/aframes = audioop.add(frames, '\x80'*len(frames), 1)
17n/aprint repr(frames[:100])
18n/a
19n/aimport struct
20n/a
21n/aheader1 = struct.pack('llhhllbbl',
22n/a 0,
23n/a af.getnchannels(),
24n/a af.getframerate(),0,
25n/a 0,
26n/a 0,
27n/a 0xFF,
28n/a 60,
29n/a nframes)
30n/aprint repr(header1)
31n/aheader2 = struct.pack('llhlll', 0, 0, 0, 0, 0, 0)
32n/aheader3 = struct.pack('hhlll',
33n/a af.getsampwidth()*8,
34n/a 0,
35n/a 0,
36n/a 0,
37n/a 0)
38n/aprint repr(header3)
39n/aheader = header1 + header2 + header3
40n/a
41n/abuffer = header + frames
42n/a
43n/achan = Snd.SndNewChannel(5,0x00C0)
44n/a
45n/aSnd.SndDoCommand(chan, (bufferCmd, 0, buffer), 0)