#include "sink-input.h"
#include "sample-util.h"
#include "xmalloc.h"
+#include "subscribe.h"
#define CONVERT_BUFFER_LENGTH 4096
pa_sample_snprint(st, sizeof(st), spec);
fprintf(stderr, "sink-input: created %u \"%s\" on %u with sample spec \"%s\"\n", i->index, i->name, s->index, st);
+
+ pa_subscription_post(s->core, PA_SUBSCRIPTION_EVENT_SINK_INPUT|PA_SUBSCRIPTION_EVENT_NEW, i->index);
return i;
}
pa_memblock_unref(i->resampled_chunk.memblock);
if (i->resampler)
pa_resampler_free(i->resampler);
+
+ pa_subscription_post(i->sink->core, PA_SUBSCRIPTION_EVENT_SINK_INPUT|PA_SUBSCRIPTION_EVENT_REMOVE, i->index);
pa_xfree(i->name);
pa_xfree(i);
i->resampled_chunk.index = i->resampled_chunk.length = 0;
}
}
+
+void pa_sink_input_set_volume(struct pa_sink_input *i, pa_volume_t volume) {
+ assert(i && i->sink && i->sink->core);
+
+ if (i->volume != volume) {
+ i->volume = volume;
+ pa_subscription_post(i->sink->core, PA_SUBSCRIPTION_EVENT_SINK_INPUT|PA_SUBSCRIPTION_EVENT_CHANGE, i->index);
+ }
+}