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

index 2ef2ad632e2132f48d61348beea68b171204096c..7f38be1167e0ce12c05660a7512f7eec380c0806 100644 (file)
@@ -98,6 +98,7 @@ pa_context_unload_module;
 pa_context_unref;
 pa_cvolume_avg;
 pa_cvolume_channels_equal_to;
+pa_cvolume_compatible;
 pa_cvolume_equal;
 pa_cvolume_max;
 pa_cvolume_remap;
index 4d5fcf08d9f09e34a35a40dc82e4a702e5221db5..e809ef9cf8ba8ae68ab140369545715a8d78491c 100644 (file)
@@ -325,3 +325,17 @@ pa_cvolume *pa_cvolume_remap(pa_cvolume *v, pa_channel_map *from, pa_channel_map
     *v = result;
     return v;
 }
+
+int pa_cvolume_compatible(const pa_cvolume *v, const pa_sample_spec *ss) {
+
+    pa_assert(v);
+    pa_assert(ss);
+
+    if (!pa_cvolume_valid(v))
+        return 0;
+
+    if (!pa_sample_spec_valid(ss))
+        return 0;
+
+    return v->channels == ss->channels;
+}
index d6eb6061218482035a4ee90ad7cea38208626768..90fb59e5f9805dcad1e0c51f5e4b97cea132e7c5 100644 (file)
@@ -192,6 +192,10 @@ double pa_sw_volume_to_linear(pa_volume_t v) PA_GCC_CONST;
 /** Remap a volume from one channel mapping to a different channel mapping. \since 0.9.12 */
 pa_cvolume *pa_cvolume_remap(pa_cvolume *v, pa_channel_map *from, pa_channel_map *to);
 
+/** Return non-zero if the specified volume is compatible with
+ * the specified sample spec. \since 0.9.13 */
+int pa_cvolume_compatible(const pa_cvolume *v, const pa_sample_spec *ss) PA_GCC_PURE;
+
 PA_C_DECL_END
 
 #endif