[FFmpeg-devel] [PATCH 2/4] audioconvert: add av_get_channel_description().

Nicolas George nicolas.george at normalesup.org
Mon Jul 30 10:41:07 CEST 2012


Signed-off-by: Nicolas George <nicolas.george at normalesup.org>
---
 libavutil/audioconvert.c |   11 +++++++++++
 libavutil/audioconvert.h |    7 +++++++
 2 files changed, 18 insertions(+)


Version bump and APIchanges are in the next patch.


diff --git a/libavutil/audioconvert.c b/libavutil/audioconvert.c
index 8e65d59..224db86 100644
--- a/libavutil/audioconvert.c
+++ b/libavutil/audioconvert.c
@@ -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;
diff --git a/libavutil/audioconvert.h b/libavutil/audioconvert.h
index 25e9cf0..063cb12 100644
--- a/libavutil/audioconvert.h
+++ b/libavutil/audioconvert.h
@@ -181,6 +181,13 @@ 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.
+ *
+ * @return channel description on success, NULL on error.
+ */
+const char *av_get_channel_description(uint64_t channel);
+
+/**
  * @}
  */
 
-- 
1.7.10.4



More information about the ffmpeg-devel mailing list