[FFmpeg-cvslog] avformat/utils: Move avpriv_set_pts_info() to avformat.c

Andreas Rheinhardt git at videolan.org
Tue May 10 09:36:11 EEST 2022


ffmpeg | branch: master | Andreas Rheinhardt <andreas.rheinhardt at outlook.com> | Sat May  7 08:59:48 2022 +0200| [60fa58b8357984867b9104ad5e902a21ba2d78b0] | committer: Andreas Rheinhardt

avformat/utils: Move avpriv_set_pts_info() to avformat.c

It is an essential auxiliary function for both demuxing and muxing.

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt at outlook.com>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=60fa58b8357984867b9104ad5e902a21ba2d78b0
---

 libavformat/avformat.c | 26 ++++++++++++++++++++++++++
 libavformat/utils.c    | 26 --------------------------
 2 files changed, 26 insertions(+), 26 deletions(-)

diff --git a/libavformat/avformat.c b/libavformat/avformat.c
index 2249f09825..2a919ad89f 100644
--- a/libavformat/avformat.c
+++ b/libavformat/avformat.c
@@ -663,6 +663,32 @@ AVRational av_stream_get_codec_timebase(const AVStream *st)
     return cffstream(st)->avctx->time_base;
 }
 
+void avpriv_set_pts_info(AVStream *st, int pts_wrap_bits,
+                         unsigned int pts_num, unsigned int pts_den)
+{
+    FFStream *const sti = ffstream(st);
+    AVRational new_tb;
+    if (av_reduce(&new_tb.num, &new_tb.den, pts_num, pts_den, INT_MAX)) {
+        if (new_tb.num != pts_num)
+            av_log(NULL, AV_LOG_DEBUG,
+                   "st:%d removing common factor %d from timebase\n",
+                   st->index, pts_num / new_tb.num);
+    } else
+        av_log(NULL, AV_LOG_WARNING,
+               "st:%d has too large timebase, reducing\n", st->index);
+
+    if (new_tb.num <= 0 || new_tb.den <= 0) {
+        av_log(NULL, AV_LOG_ERROR,
+               "Ignoring attempt to set invalid timebase %d/%d for st:%d\n",
+               new_tb.num, new_tb.den,
+               st->index);
+        return;
+    }
+    st->time_base     = new_tb;
+    sti->avctx->pkt_timebase = new_tb;
+    st->pts_wrap_bits = pts_wrap_bits;
+}
+
 const AVCodec *ff_find_decoder(AVFormatContext *s, const AVStream *st,
                                enum AVCodecID codec_id)
 {
diff --git a/libavformat/utils.c b/libavformat/utils.c
index 26f44ddfa1..848afa3c35 100644
--- a/libavformat/utils.c
+++ b/libavformat/utils.c
@@ -530,32 +530,6 @@ int ff_hex_to_data(uint8_t *data, const char *p)
     return len;
 }
 
-void avpriv_set_pts_info(AVStream *st, int pts_wrap_bits,
-                         unsigned int pts_num, unsigned int pts_den)
-{
-    FFStream *const sti = ffstream(st);
-    AVRational new_tb;
-    if (av_reduce(&new_tb.num, &new_tb.den, pts_num, pts_den, INT_MAX)) {
-        if (new_tb.num != pts_num)
-            av_log(NULL, AV_LOG_DEBUG,
-                   "st:%d removing common factor %d from timebase\n",
-                   st->index, pts_num / new_tb.num);
-    } else
-        av_log(NULL, AV_LOG_WARNING,
-               "st:%d has too large timebase, reducing\n", st->index);
-
-    if (new_tb.num <= 0 || new_tb.den <= 0) {
-        av_log(NULL, AV_LOG_ERROR,
-               "Ignoring attempt to set invalid timebase %d/%d for st:%d\n",
-               new_tb.num, new_tb.den,
-               st->index);
-        return;
-    }
-    st->time_base     = new_tb;
-    sti->avctx->pkt_timebase = new_tb;
-    st->pts_wrap_bits = pts_wrap_bits;
-}
-
 void ff_parse_key_value(const char *str, ff_parse_key_val_cb callback_get_buf,
                         void *context)
 {



More information about the ffmpeg-cvslog mailing list