| 
									
										
										
										
											1992-04-15 17:52:27 +00:00
										 |  |  | import sys | 
					
						
							|  |  |  | import readcd | 
					
						
							| 
									
										
										
										
											1993-07-10 12:11:56 +00:00
										 |  |  | import aifc | 
					
						
							| 
									
										
										
										
											1992-04-15 17:52:27 +00:00
										 |  |  | import AL | 
					
						
							| 
									
										
										
										
											1995-04-06 14:46:31 +00:00
										 |  |  | import cd | 
					
						
							| 
									
										
										
										
											1992-04-15 17:52:27 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											1992-06-03 16:49:44 +00:00
										 |  |  | Error = 'cdaiff.Error' | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											1992-04-15 17:52:27 +00:00
										 |  |  | def writeaudio(a, type, data): | 
					
						
							| 
									
										
										
										
											1993-07-10 12:11:56 +00:00
										 |  |  | 	a.writeframesraw(data) | 
					
						
							| 
									
										
										
										
											1992-04-15 17:52:27 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | def main(): | 
					
						
							| 
									
										
										
										
											1992-06-03 16:49:44 +00:00
										 |  |  | 	if len(sys.argv) > 1: | 
					
						
							| 
									
										
										
										
											1993-07-10 12:11:56 +00:00
										 |  |  | 		a = aifc.open(sys.argv[1], 'w') | 
					
						
							| 
									
										
										
										
											1992-06-03 16:49:44 +00:00
										 |  |  | 	else: | 
					
						
							| 
									
										
										
										
											1993-07-10 12:11:56 +00:00
										 |  |  | 		a = aifc.open('@', 'w') | 
					
						
							|  |  |  | 	a.setsampwidth(AL.SAMPLE_16) | 
					
						
							|  |  |  | 	a.setnchannels(AL.STEREO) | 
					
						
							|  |  |  | 	a.setframerate(AL.RATE_44100) | 
					
						
							| 
									
										
										
										
											1994-10-07 10:25:49 +00:00
										 |  |  | 	r = readcd.Readcd() | 
					
						
							| 
									
										
										
										
											1992-04-15 17:52:27 +00:00
										 |  |  | 	for arg in sys.argv[2:]: | 
					
						
							| 
									
										
										
										
											1992-04-22 13:39:10 +00:00
										 |  |  | 		x = eval(arg) | 
					
						
							|  |  |  | 		try: | 
					
						
							| 
									
										
										
										
											1992-06-03 16:49:44 +00:00
										 |  |  | 			if len(x) <> 2: | 
					
						
							|  |  |  | 				raise Error, 'bad argument' | 
					
						
							| 
									
										
										
										
											1992-04-22 13:39:10 +00:00
										 |  |  | 			r.appendstretch(x[0], x[1]) | 
					
						
							|  |  |  | 		except TypeError: | 
					
						
							|  |  |  | 			r.appendtrack(x) | 
					
						
							| 
									
										
										
										
											1995-04-06 14:46:31 +00:00
										 |  |  | 	r.setcallback(cd.audio, writeaudio, a) | 
					
						
							| 
									
										
										
										
											1992-06-03 16:49:44 +00:00
										 |  |  | 	r.play() | 
					
						
							| 
									
										
										
										
											1993-07-10 12:11:56 +00:00
										 |  |  | 	a.close() | 
					
						
							| 
									
										
										
										
											1992-04-15 17:52:27 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | main() |