audio: expose API to convert channel array to a mask
authorWim Taymans <wim.taymans@collabora.co.uk>
Thu, 5 Jan 2012 12:59:32 +0000 (13:59 +0100)
committerWim Taymans <wim.taymans@collabora.co.uk>
Thu, 5 Jan 2012 12:59:32 +0000 (13:59 +0100)
gst-libs/gst/audio/audio.c
gst-libs/gst/audio/audio.h

index 0eaed7c576589c90041a911cd885259d5609bb8b..c51d9c9f3338dfd5a72cef24ac41f6d2ce9a84b1 100644 (file)
@@ -1084,6 +1084,23 @@ gst_audio_check_valid_channel_positions (const GstAudioChannelPosition *
   return check_valid_channel_positions (position, channels, force_order, NULL);
 }
 
+/**
+ * gst_audio_channel_positions_to_mask:
+ * @position: The %GstAudioChannelPositions
+ * @channels: The number of channels.
+ * @channel_mask: the output channel mask
+ *
+ * Convert the @position array of @channels channels to a bitmask.
+ *
+ * Returns: %TRUE if the channel positions are valid and could be converted.
+ */
+gboolean
+gst_audio_channel_positions_to_mask (const GstAudioChannelPosition * position,
+    gint channels, guint64 * channel_mask)
+{
+  return check_valid_channel_positions (position, channels, TRUE, channel_mask);
+}
+
 /**
  * gst_audio_get_channel_reorder_map:
  * @channels: The number of channels.
index dac40fc68b20cf891459c01bb4043708b7e2424d..f1a3d11e86f503002a5a55836e0854c35742274e 100644 (file)
@@ -553,6 +553,9 @@ gboolean       gst_audio_channel_positions_to_valid_order (GstAudioChannelPositi
 gboolean       gst_audio_check_valid_channel_positions (const GstAudioChannelPosition *position,
                                                         gint channels, gboolean force_order);
 
+gboolean       gst_audio_channel_positions_to_mask  (const GstAudioChannelPosition *position,
+                                                     gint channels, guint64 *channel_mask);
+
 gboolean       gst_audio_get_channel_reorder_map (gint channels,
                                                   const GstAudioChannelPosition * from,
                                                   const GstAudioChannelPosition * to,