#include <polyp/sample.h>
#include <polyp/channelmap.h>
#include <polyp/volume.h>
+#include <polypcore/core-def.h>
#include <polypcore/core.h>
#include <polypcore/idxset.h>
#include <polypcore/source.h>
#include <polypcore/module.h>
-#define PA_MAX_INPUTS_PER_SINK 6
+#define PA_MAX_INPUTS_PER_SINK 32
typedef enum pa_sink_state {
PA_SINK_RUNNING,
PA_SINK_DISCONNECTED
} pa_sink_state_t;
-typedef enum pa_mixer {
- PA_MIXER_SOFTWARE,
- PA_MIXER_HARDWARE
-} pa_mixer_t;
-
struct pa_sink {
int ref;
uint32_t index;
pa_source *monitor_source;
pa_cvolume hw_volume, sw_volume;
+ int hw_muted, sw_muted;
void (*notify)(pa_sink*sink);
pa_usec_t (*get_latency)(pa_sink *s);
int (*set_hw_volume)(pa_sink *s);
int (*get_hw_volume)(pa_sink *s);
+ int (*set_hw_mute)(pa_sink *s);
+ int (*get_hw_mute)(pa_sink *s);
void *userdata;
};
void pa_sink_set_volume(pa_sink *sink, pa_mixer_t m, const pa_cvolume *volume);
const pa_cvolume *pa_sink_get_volume(pa_sink *sink, pa_mixer_t m);
+void pa_sink_set_mute(pa_sink *sink, pa_mixer_t m, int mute);
+int pa_sink_get_mute(pa_sink *sink, pa_mixer_t m);
#endif