Blob Blame History Raw
#ifndef SND_H
#define SND_H


#include "xmain.h"

#ifdef WITHSOUND

#include <AL/al.h>
#include <AL/alc.h>


typedef struct {
  ALuint buf, src;
} Sound;


extern ALCdevice *adev;
extern ALCcontext *actx;


void sndInit();
void sndDeinit();

static inline int sndValid(Sound snd) { return snd.buf && snd.src; }
void sndFree(Sound *snd);
Sound sndGen(int rate, int freq, int samples);
Sound sndLoadRaw(const char *filename, int rate);
void sndPlay(Sound);

#endif
#endif