matthijs@9959: /* $Id$ */ matthijs@9959: matthijs@9959: #ifndef MIXER_H matthijs@9959: #define MIXER_H matthijs@9959: matthijs@9959: typedef struct Mixer Mixer; matthijs@9959: typedef struct MixerChannel MixerChannel; matthijs@9959: matthijs@9959: enum { matthijs@9959: MX_AUTOFREE = 1, matthijs@9959: // MX_8BIT = 2, matthijs@9959: // MX_STEREO = 4, matthijs@9959: // MX_UNSIGNED = 8, matthijs@9959: }; matthijs@9959: matthijs@9959: VARDEF Mixer *_mixer; matthijs@9959: matthijs@9959: bool MxInitialize(uint rate); matthijs@9959: void MxMixSamples(Mixer *mx, void *buffer, uint samples); matthijs@9959: matthijs@9959: MixerChannel *MxAllocateChannel(Mixer *mx); matthijs@9959: void MxSetChannelRawSrc(MixerChannel *mc, int8 *mem, uint size, uint rate, uint flags); matthijs@9959: void MxSetChannelVolume(MixerChannel *mc, uint left, uint right); matthijs@9959: void MxActivateChannel(MixerChannel*); matthijs@9959: matthijs@9959: #endif /* MIXER_H */