| Introduction. | 
 |  | 
 | A number of programs have been written which access the Silicon | 
 | Graphics CD-ROM player.  These programs all use the interface defined | 
 | in readcd.py (see readcd.doc for documentation). | 
 |  | 
 | Specifying music stretches. | 
 |  | 
 | The programs that are capable of reading music CD's all use the same | 
 | syntax to describe which part of the CD is to be read.  The syntax | 
 | closely corresponds to the available methods in readcd.py. | 
 |  | 
 | The music to be read is divided into stretches of music.  Each stretch | 
 | must be specified as a separate argument on the command line.  A | 
 | stretch can be a whole CD track, specified as a single number; or it | 
 | can be a start time and a end time.  The start and end times must be | 
 | specified as a tuple, thus: ``(starttime, endtime)''.  Don't forget to | 
 | quote the parenthesis to the shell.  Both starttime and endtime can be | 
 | ``None'', a simple number which refers to a CD track, or a tuple | 
 | consisting of either 3 or 4 elements.  A starttime of ``None'' refers | 
 | to the start of the CD, an endtime of ``None'' refers to the end of | 
 | the CD.  A tuple of 3 elements is an absolute time on the CD.  The | 
 | three elements are (minutes, seconds, frames).  A tuple of 4 elements | 
 | is a track-relative time.  The four elements are (track, minutes, | 
 | seconds, frames). | 
 |  | 
 | When one stretch ends at the end of a track and the following stretch | 
 | starts at the next track, there is the option of either playing or not | 
 | playing the pause between the two tracks.  When either the end time of | 
 | the first stretch or the start time of the second stretch is specified | 
 | using absolute or track-relative times, the pause will not be played. | 
 | When both times are specified as simple track numbers, the pause will | 
 | be played. | 
 |  | 
 | If no stretches are specified, the whole CD will be played. | 
 |  | 
 | The programs. | 
 |  | 
 | Currently, the following programs exist. | 
 | playcd [ stretch specification ] | 
 | 	Play (part of) a CD through the system loadspeaker or | 
 | 	headphone set. | 
 | cdaiff [ file [ stretch specification ] ] | 
 | 	Copy (part of) a CD to a file.  The file will be written in | 
 | 	AIFF format.  If no file is specified, cdaiff will write to | 
 | 	the file ``@'' in the current directory. |