X-Git-Url: https://hackdaworld.org/gitweb/?p=my-code%2Fivac.git;a=blobdiff_plain;f=src%2Faudio.h;fp=src%2Faudio.h;h=33e90cb70ba050c584859c6652136332c334203d;hp=b0c01db106585d89fd0ccd6703090f2f0f00f5b8;hb=51804c822aba850ad3d1589b4dc3dc2709d980f5;hpb=16b3789b687a3002b80a38f58c07b7a46ac89c6c diff --git a/src/audio.h b/src/audio.h index b0c01db..33e90cb 100644 --- a/src/audio.h +++ b/src/audio.h @@ -4,17 +4,50 @@ #define AUDIO_H /* includes */ +#include +#include +#include +#include +#include +#include +#include +#include #include /* defines */ #define MAX_CHAR_DEVICE 32 #define SOUND_DEVICE "/dev/dsp" +#define A_SUCCESS 1 +#define A_ERROR -1 + +#define BIT_8 AFMT_U8 +#define BIT_16 AFMT_S16_LE +#define MONO 1 +#define STEREO 2 + /* audio specific variables */ typedef struct s_audio { - int fd; - char device[MAX_CHAR_DEVICE]; - int cap; + int dsp_fd; + int mixer_fd; + char dsp_dev[MAX_CHAR_DEVICE]; + char mixer_dev[MAX_CHAR_DEVICE]; + int dsp_cap; + int fmt; + int channels; + int speed; + int blksize; + int mixer_cap; + unsigned char volume; + unsigned char *play_data; + unsigned char *rec_data; } t_audio; +/* function prototypes */ +int audio_init(t_audio *audio); +int audio_setup(t_audio *audio); +int audio_shutdown(t_audio *audio); +int audio_play(t_audio *audio,int len); +int audio_record(t_audio *audio,int len); + #endif