cpython/Demo/sgi/cd/cdaiff.py

34 lines
589 B
Python
Raw Normal View History

1992-04-15 14:52:27 -03:00
import sys
import readcd
import aifc
1992-04-15 14:52:27 -03:00
import AL
import cd
1992-04-15 14:52:27 -03:00
1992-06-03 13:49:44 -03:00
Error = 'cdaiff.Error'
1992-04-15 14:52:27 -03:00
def writeaudio(a, type, data):
a.writeframesraw(data)
1992-04-15 14:52:27 -03:00
def main():
1992-06-03 13:49:44 -03:00
if len(sys.argv) > 1:
a = aifc.open(sys.argv[1], 'w')
1992-06-03 13:49:44 -03:00
else:
a = aifc.open('@', 'w')
a.setsampwidth(AL.SAMPLE_16)
a.setnchannels(AL.STEREO)
a.setframerate(AL.RATE_44100)
1994-10-07 07:25:49 -03:00
r = readcd.Readcd()
1992-04-15 14:52:27 -03:00
for arg in sys.argv[2:]:
x = eval(arg)
try:
1992-06-03 13:49:44 -03:00
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)
1992-06-03 13:49:44 -03:00
r.play()
a.close()
1992-04-15 14:52:27 -03:00
main()