audioconvert: add av_get_channel_description().
authorNicolas George <nicolas.george@normalesup.org>
Sun, 29 Jul 2012 22:33:38 +0000 (00:33 +0200)
committerNicolas George <nicolas.george@normalesup.org>
Mon, 30 Jul 2012 09:37:40 +0000 (11:37 +0200)
libavutil/audioconvert.c
libavutil/audioconvert.h

index 8e65d59..224db86 100644 (file)
@@ -219,6 +219,17 @@ const char *av_get_channel_name(uint64_t channel)
     return NULL;
 }
 
+const char *av_get_channel_description(uint64_t channel)
+{
+    int i;
+    if (av_get_channel_layout_nb_channels(channel) != 1)
+        return NULL;
+    for (i = 0; i < FF_ARRAY_ELEMS(channel_names); i++)
+        if ((1ULL<<i) & channel)
+            return channel_names[i].description;
+    return NULL;
+}
+
 uint64_t av_channel_layout_extract_channel(uint64_t channel_layout, int index)
 {
     int i;
index 25e9cf0..f1399b9 100644 (file)
@@ -181,6 +181,14 @@ uint64_t av_channel_layout_extract_channel(uint64_t channel_layout, int index);
 const char *av_get_channel_name(uint64_t channel);
 
 /**
+ * Get the description of a given channel.
+ *
+ * @param channel  a channel layout with a single channel
+ * @return  channel description on success, NULL on error
+ */
+const char *av_get_channel_description(uint64_t channel);
+
+/**
  * @}
  */