summaryrefslogtreecommitdiffstats
path: root/polyp/module-combine.c
diff options
context:
space:
mode:
Diffstat (limited to 'polyp/module-combine.c')
-rw-r--r--polyp/module-combine.c11
1 files changed, 10 insertions, 1 deletions
diff --git a/polyp/module-combine.c b/polyp/module-combine.c
index 28e3b39d..49a6951e 100644
--- a/polyp/module-combine.c
+++ b/polyp/module-combine.c
@@ -42,7 +42,7 @@ PA_MODULE_DESCRIPTION("Combine multiple sinks to one")
PA_MODULE_VERSION(PACKAGE_VERSION)
PA_MODULE_USAGE("sink_name=<name for the sink> master=<master sink> slave=<slave sinks>")
-#define DEFAULT_SINK_NAME "combine"
+#define DEFAULT_SINK_NAME "combined"
#define MEMBLOCKQ_MAXLENGTH (1024*170)
#define RENDER_SIZE (1024*10)
@@ -78,6 +78,13 @@ struct userdata {
static void output_free(struct output *o);
static void clear_up(struct userdata *u);
+static void update_usage(struct userdata *u) {
+ pa_module_set_used(u->module,
+ (u->sink ? pa_idxset_ncontents(u->sink->inputs) : 0) +
+ (u->sink ? pa_idxset_ncontents(u->sink->monitor_source->outputs) : 0));
+}
+
+
static void adjust_rates(struct userdata *u) {
struct output *o;
pa_usec_t max = 0;
@@ -120,6 +127,8 @@ static void request_memblock(struct userdata *u) {
struct output *o;
assert(u && u->sink);
+ update_usage(u);
+
if (pa_sink_render(u->sink, RENDER_SIZE, &chunk) < 0)
return;