summaryrefslogtreecommitdiffstats
path: root/src/pulse/volume.c
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2009-08-17 03:40:36 +0200
committerLennart Poettering <lennart@poettering.net>2009-08-17 03:40:36 +0200
commit82082148821d5ebe05fea12fd57d68b31740e04b (patch)
tree41ce317387ad06463087e3c36ce7a497d8298153 /src/pulse/volume.c
parent01e4b61a910afdd21f860fadbe98075735c2bf51 (diff)
volume: add pa_cvolume_merge() call
Diffstat (limited to 'src/pulse/volume.c')
-rw-r--r--src/pulse/volume.c18
1 files changed, 18 insertions, 0 deletions
diff --git a/src/pulse/volume.c b/src/pulse/volume.c
index c23f360b..e816d679 100644
--- a/src/pulse/volume.c
+++ b/src/pulse/volume.c
@@ -815,3 +815,21 @@ pa_volume_t pa_cvolume_get_position(
return v;
}
+
+pa_cvolume* pa_cvolume_merge(pa_cvolume *dest, const pa_cvolume *a, const pa_cvolume *b) {
+ unsigned i;
+
+ pa_assert(dest);
+ pa_assert(a);
+ pa_assert(b);
+
+ pa_return_val_if_fail(pa_cvolume_valid(a), NULL);
+ pa_return_val_if_fail(pa_cvolume_valid(b), NULL);
+
+ for (i = 0; i < a->channels && i < b->channels; i++)
+ dest->values[i] = PA_MAX(a->values[i], b->values[i]);
+
+ dest->channels = (uint8_t) i;
+
+ return dest;
+}