File: cdaiff.py

package info (click to toggle)
python2.2 2.2.1-4.7
  • links: PTS
  • area: main
  • in suites: woody
  • size: 33,360 kB
  • ctags: 68,048
  • sloc: ansic: 218,675; python: 199,829; sh: 6,101; perl: 3,450; makefile: 3,391; lisp: 2,476; xml: 2,262; cpp: 106; sed: 2
file content (33 lines) | stat: -rwxr-xr-x 589 bytes parent folder | download | duplicates (8)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
import sys
import readcd
import aifc
import AL
import cd

Error = 'cdaiff.Error'

def writeaudio(a, type, data):
	a.writeframesraw(data)

def main():
	if len(sys.argv) > 1:
		a = aifc.open(sys.argv[1], 'w')
	else:
		a = aifc.open('@', 'w')
	a.setsampwidth(AL.SAMPLE_16)
	a.setnchannels(AL.STEREO)
	a.setframerate(AL.RATE_44100)
	r = readcd.Readcd()
	for arg in sys.argv[2:]:
		x = eval(arg)
		try:
			if len(x) <> 2:
				raise Error, 'bad argument'
			r.appendstretch(x[0], x[1])
		except TypeError:
			r.appendtrack(x)
	r.setcallback(cd.audio, writeaudio, a)
	r.play()
	a.close()

main()