---

This is pretty AC3-centric, but using abosulte scale factors rather than dB
levels (or worse, indexes/codes) should make it compatible with other codecs
should they implement a similar kind of downmix metadata.

Justin suggested making even more codec-agnostic by using flags to indicate
the precense or absence of certain fields, but I'm unsure as to how this could
be implemented. Any ides or examples?

 doc/APIchanges      | 4 ++++
 libavutil/Makefile  | 2 ++
 libavutil/frame.h   | 5 +++++
 libavutil/version.h | 2 +-
 4 files changed, 12 insertions(+), 1 deletion(-)

diff --git a/doc/APIchanges b/doc/APIchanges
index 6b9efd0..9428b94 100644
--- a/doc/APIchanges
+++ b/doc/APIchanges
@@ -13,6 +13,10 @@ libavutil:     2013-12-xx
 
 API changes, most recent first:
 
+2014-02-xx - xxxxxxx - lavu 53.3.0 - frame.h
+  Add AV_FRAME_DATA_DOWNMIX_INFO value to the AVFrameSideDataType enum and
+  downmix_info.h API, which identify downmix-related metadata.
+
 2014-02-xx - xxxxxxx - lavf 55.11.0 - avformat.h
   Add AVFormatContext.max_interleave_delta for controlling amount of buffering
   when interleaving.
diff --git a/libavutil/Makefile b/libavutil/Makefile
index e0e32b4..f663f18 100644
--- a/libavutil/Makefile
+++ b/libavutil/Makefile
@@ -16,6 +16,7 @@ HEADERS = adler32.h                                           
          \
           common.h                                                      \
           cpu.h                                                         \
           crc.h                                                         \
+          downmix_info.h                                                \
           error.h                                                       \
           eval.h                                                        \
           fifo.h                                                        \
@@ -67,6 +68,7 @@ OBJS = adler32.o                                              
          \
        cpu.o                                                            \
        crc.o                                                            \
        des.o                                                            \
+       downmix_info.o                                                   \
        error.o                                                          \
        eval.o                                                           \
        fifo.o                                                           \
diff --git a/libavutil/frame.h b/libavutil/frame.h
index 5b04291..2076642 100644
--- a/libavutil/frame.h
+++ b/libavutil/frame.h
@@ -64,6 +64,11 @@ enum AVFrameSideDataType {
      * The data is the AVMatrixEncoding enum defined in 
libavutil/channel_layout.h.
      */
     AV_FRAME_DATA_MATRIXENCODING,
+    /**
+     * Metadata relevant to a downmix procedure.
+     * The data is the AVDownmixInfo struct defined in 
libavutil/downmix_info.h.
+     */
+    AV_FRAME_DATA_DOWNMIX_INFO,
 };
 
 typedef struct AVFrameSideData {
diff --git a/libavutil/version.h b/libavutil/version.h
index e95d77c..5196a67 100644
--- a/libavutil/version.h
+++ b/libavutil/version.h
@@ -54,7 +54,7 @@
  */
 
 #define LIBAVUTIL_VERSION_MAJOR 53
-#define LIBAVUTIL_VERSION_MINOR  2
+#define LIBAVUTIL_VERSION_MINOR  3
 #define LIBAVUTIL_VERSION_MICRO  0
 
 #define LIBAVUTIL_VERSION_INT   AV_VERSION_INT(LIBAVUTIL_VERSION_MAJOR, \
-- 
1.8.3.4 (Apple Git-47)

_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel

Reply via email to