From dac7e8a94e49e41f1dd0af34dc17d124d5b156ba Mon Sep 17 00:00:00 2001
From: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Date: Tue, 22 Apr 2014 07:26:07 +0200
Subject: [PATCH] avutil: Add av_get_time_base_q()

This fixes usage of AV_TIME_BASE_Q in C++ applications, which
cannot use compound literals directly in their code.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
---
 doc/APIchanges      | 3 +++
 libavutil/avutil.h  | 6 ++++++
 libavutil/utils.c   | 5 +++++
 libavutil/version.h | 2 +-
 4 files changed, 15 insertions(+), 1 deletion(-)

diff --git a/doc/APIchanges b/doc/APIchanges
index 453707cbadd..880e1d325f9 100644
--- a/doc/APIchanges
+++ b/doc/APIchanges
@@ -15,6 +15,9 @@ libavutil:     2012-10-22
 
 API changes, most recent first:
 
+2014-04-xx - xxxxxxx - lavu 53.13.0 / 52.78.100 - avutil.h
+  Add av_get_time_base_q().
+
 2014-04-xx - xxxxxxx - lavu 53.12.0 / 52.77.100 - crc.h
   Add AV_CRC_16_ANSI_LE crc variant.
 
diff --git a/libavutil/avutil.h b/libavutil/avutil.h
index d6566c11636..3b644f9941d 100644
--- a/libavutil/avutil.h
+++ b/libavutil/avutil.h
@@ -246,6 +246,11 @@ const char *av_get_media_type_string(enum AVMediaType media_type);
 
 #define AV_TIME_BASE_Q          (AVRational){1, AV_TIME_BASE}
 
+/**
+ * Return the fractional representation of the internal time base.
+ */
+AVRational av_get_time_base_q(void);
+
 /**
  * @}
  * @}
@@ -282,6 +287,7 @@ char av_get_picture_type_char(enum AVPictureType pict_type);
 
 #include "common.h"
 #include "error.h"
+#include "rational.h"
 #include "version.h"
 #include "macros.h"
 #include "mathematics.h"
diff --git a/libavutil/utils.c b/libavutil/utils.c
index 4c82503d9c6..6c9b493a8f9 100644
--- a/libavutil/utils.c
+++ b/libavutil/utils.c
@@ -113,3 +113,8 @@ unsigned av_int_list_length_for_size(unsigned elsize,
     }
     return i;
 }
+
+AVRational av_get_time_base_q(void)
+{
+    return (AVRational){1, AV_TIME_BASE};
+}
diff --git a/libavutil/version.h b/libavutil/version.h
index 02015e30255..832892b862d 100644
--- a/libavutil/version.h
+++ b/libavutil/version.h
@@ -56,7 +56,7 @@
  */
 
 #define LIBAVUTIL_VERSION_MAJOR  52
-#define LIBAVUTIL_VERSION_MINOR  77
+#define LIBAVUTIL_VERSION_MINOR  78
 #define LIBAVUTIL_VERSION_MICRO 100
 
 #define LIBAVUTIL_VERSION_INT   AV_VERSION_INT(LIBAVUTIL_VERSION_MAJOR, \
-- 
GitLab