2 * Copyright (C) Volition, Inc. 1999. All rights reserved.
4 * All source code herein is the property of Volition, Inc. You may not sell
5 * or otherwise commercially exploit the source or things you created based on
10 * $Logfile: /Freespace2/code/Sound/RBAudio.h $
15 * header for redbook audio playback
18 * Revision 1.2 2002/06/09 04:41:14 relnev
19 * added copyright header
21 * Revision 1.1.1.1 2002/05/03 03:28:12 root
25 * 2 10/07/98 10:54a Dave
28 * 1 10/07/98 10:51a Dave
30 * 1 4/28/97 4:45p John
31 * Initial version of ripping sound & movie out of OsAPI.
33 * 2 1/30/97 9:57a Allender
34 * basic Redbook audio implemented.
36 * 1 1/28/97 9:54a Allender
44 #define RBA_MEDIA_CHANGED -1
46 typedef struct _RBACHANNELCTL {
47 unsigned int out0in, out0vol;
48 unsigned int out1in, out1vol;
49 unsigned int out2in, out2vol;
50 unsigned int out3in, out3vol;
54 // mwa ??#if defined(__NT__)
55 extern void RBAInit(void); //drive a == 0, drive b == 1
57 // mwa ?? extern void RBAInit(ubyte cd_drive_num); //drive a == 0, drive b == 1
59 extern void RBClose(void);
60 extern void RBARegisterCD(void);
61 extern long RBAGetDeviceStatus(void);
62 extern int RBAPlayTrack(int track);
63 extern int RBAPlayTracks(int first, int last); //plays tracks first through last, inclusive
64 extern int RBACheckMediaChange();
65 extern long RBAGetHeadLoc(int *min, int *sec, int *frame);
66 extern int RBAPeekPlayStatus(void);
67 extern void RBAStop(void);
68 extern void RBASetStereoAudio(RBACHANNELCTL *channels);
69 extern void RBASetQuadAudio(RBACHANNELCTL *channels);
70 extern void RBAGetAudioInfo(RBACHANNELCTL *channels);
71 extern void RBASetChannelVolume(int channel, int volume);
72 extern void RBASetVolume(int volume);
73 extern int RBAEnabled(void);
74 extern void RBADisable(void);
75 extern void RBAEnable(void);
76 extern int RBAGetNumberOfTracks(void);
77 extern void RBAPause();
78 extern int RBAResume();
80 //return the track number currently playing. Useful if RBAPlayTracks()
81 //is called. Returns 0 if no track playing, else track number