diff options
Diffstat (limited to 'libavutil')
-rw-r--r-- | libavutil/audioconvert.c | 10 | ||||
-rw-r--r-- | libavutil/audioconvert.h | 12 | ||||
-rw-r--r-- | libavutil/version.h | 2 |
3 files changed, 23 insertions, 1 deletions
diff --git a/libavutil/audioconvert.c b/libavutil/audioconvert.c index 224db86..0164171 100644 --- a/libavutil/audioconvert.c +++ b/libavutil/audioconvert.c @@ -243,3 +243,13 @@ uint64_t av_channel_layout_extract_channel(uint64_t channel_layout, int index) } return 0; } + +int av_get_standard_channel_layout(unsigned index, uint64_t *layout, + const char **name) +{ + if (index >= FF_ARRAY_ELEMS(channel_layout_map)) + return AVERROR_EOF; + if (layout) *layout = channel_layout_map[index].layout; + if (name) *name = channel_layout_map[index].name; + return 0; +} diff --git a/libavutil/audioconvert.h b/libavutil/audioconvert.h index f1399b9..5ddda0c 100644 --- a/libavutil/audioconvert.h +++ b/libavutil/audioconvert.h @@ -189,6 +189,18 @@ const char *av_get_channel_name(uint64_t channel); const char *av_get_channel_description(uint64_t channel); /** + * Get the value and name of a standard channel layout. + * + * @param[in] index index in an internal list, starting at 0 + * @param[out] layout channel layout mask + * @param[out] name name of the layout + * @return 0 if the layout exists, + * <0 if index is beyond the limits + */ +int av_get_standard_channel_layout(unsigned index, uint64_t *layout, + const char **name); + +/** * @} */ diff --git a/libavutil/version.h b/libavutil/version.h index a06fbc7..04d111b 100644 --- a/libavutil/version.h +++ b/libavutil/version.h @@ -39,7 +39,7 @@ */ #define LIBAVUTIL_VERSION_MAJOR 51 -#define LIBAVUTIL_VERSION_MINOR 65 +#define LIBAVUTIL_VERSION_MINOR 66 #define LIBAVUTIL_VERSION_MICRO 100 #define LIBAVUTIL_VERSION_INT AV_VERSION_INT(LIBAVUTIL_VERSION_MAJOR, \ |