]> code.delx.au - pulseaudio/commitdiff
add new API call pa_cvolume_init()
authorLennart Poettering <lennart@poettering.net>
Fri, 3 Oct 2008 15:16:55 +0000 (17:16 +0200)
committerLennart Poettering <lennart@poettering.net>
Fri, 3 Oct 2008 15:16:55 +0000 (17:16 +0200)
src/pulse/volume.c
src/pulse/volume.h

index 60a86bebcb7b98bd67fd71a7949ed3b1e71b1955..7c0522e9dce2d81c553be7248e33c38140c3d5db 100644 (file)
@@ -47,6 +47,19 @@ int pa_cvolume_equal(const pa_cvolume *a, const pa_cvolume *b) {
     return 1;
 }
 
+pa_cvolume* pa_cvolume_init(pa_cvolume *a) {
+    unsigned c;
+
+    pa_assert(a);
+
+    a->channels = 0;
+
+    for (c = 0; c < PA_CHANNELS_MAX; c++)
+        a->values[c] = (pa_volume_t) -1;
+
+    return a;
+}
+
 pa_cvolume* pa_cvolume_set(pa_cvolume *a, unsigned channels, pa_volume_t v) {
     int i;
 
@@ -88,7 +101,7 @@ pa_volume_t pa_cvolume_max(const pa_cvolume *a) {
 }
 
 pa_volume_t pa_sw_volume_multiply(pa_volume_t a, pa_volume_t b) {
-    return pa_sw_volume_from_linear(pa_sw_volume_to_linear(a)* pa_sw_volume_to_linear(b));
+    return pa_sw_volume_from_linear(pa_sw_volume_to_linear(a) * pa_sw_volume_to_linear(b));
 }
 
 #define USER_DECIBEL_RANGE 60
index d612c7f91b87c5cef8c673e08e9d3d87ef77100f..4b2f3a76b5abcb2d12fd79c52d9fa3763a82ca64 100644 (file)
@@ -116,6 +116,11 @@ typedef struct pa_cvolume {
 /** Return non-zero when *a == *b */
 int pa_cvolume_equal(const pa_cvolume *a, const pa_cvolume *b) PA_GCC_PURE;
 
+/** Initialize the specified volume and return a pointer to
+ * it. The sample spec will have a defined state but
+ * pa_cvolume_valid() will fail for it. \since 0.9.13 */
+pa_cvolume* pa_cvolume_init(pa_cvolume *a);
+
 /** Set the volume of all channels to PA_VOLUME_NORM */
 #define pa_cvolume_reset(a, n) pa_cvolume_set((a), (n), PA_VOLUME_NORM)