From 26c62832420553f6f82ec3daeef6df08326fc922 Mon Sep 17 00:00:00 2001 From: XANTRONIX Development Date: Tue, 18 Jan 2022 13:17:45 -0500 Subject: It compiles! Beep! Beep! --- include/xas/mixer.h | 46 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 include/xas/mixer.h (limited to 'include/xas') diff --git a/include/xas/mixer.h b/include/xas/mixer.h new file mode 100644 index 0000000..9fd77cb --- /dev/null +++ b/include/xas/mixer.h @@ -0,0 +1,46 @@ +#ifndef _XAS_MIXER_H +#define _XAS_MIXER_H + +#include + +#include + +typedef struct _xas_mixer_input { + xas_audio_stream *stream; + + float gain, + bias_l, + bias_r; + + struct _xas_mixer_input *next; +} xas_mixer_input; + +typedef struct _xas_mixer { + xas_mixer_input *inputs, + *last; + + xas_audio_stream *output; + + void *buf; + size_t buffer_size; +} xas_mixer; + +xas_mixer *xas_mixer_new(size_t sample_size, + size_t sample_rate, + size_t channels, + size_t buffer_size); + +void xas_mixer_destroy(xas_mixer *mixer); + +xas_audio_stream *xas_mixer_output(xas_mixer *mixer); + +xas_mixer_input *xas_mixer_input_add(xas_mixer *mixer, + xas_audio_stream *stream, + float gain, + float pan); + +void xas_mixer_input_set_gain(xas_mixer_input *input, float gain); + +void xas_mixer_input_set_pan(xas_mixer_input *input, float pan); + +#endif /* _XAS_MIXER_H */ -- cgit v1.2.3