[FFmpeg-devel] [PATCH 30/44] avformat/utils: Move adding AVProgram to avformat.c

Andreas Rheinhardt andreas.rheinhardt at outlook.com
Sat May 7 14:28:16 EEST 2022


Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt at outlook.com>
---
 libavformat/avformat.c | 58 ++++++++++++++++++++++++++++++++++++++++++
 libavformat/utils.c    | 58 ------------------------------------------
 2 files changed, 58 insertions(+), 58 deletions(-)

diff --git a/libavformat/avformat.c b/libavformat/avformat.c
index baad2acde1..0b86ff025c 100644
--- a/libavformat/avformat.c
+++ b/libavformat/avformat.c
@@ -196,3 +196,61 @@ uint8_t *av_stream_new_side_data(AVStream *st, enum AVPacketSideDataType type,
 
     return data;
 }
+
+AVProgram *av_new_program(AVFormatContext *ac, int id)
+{
+    AVProgram *program = NULL;
+    int ret;
+
+    av_log(ac, AV_LOG_TRACE, "new_program: id=0x%04x\n", id);
+
+    for (unsigned i = 0; i < ac->nb_programs; i++)
+        if (ac->programs[i]->id == id)
+            program = ac->programs[i];
+
+    if (!program) {
+        program = av_mallocz(sizeof(*program));
+        if (!program)
+            return NULL;
+        ret = av_dynarray_add_nofree(&ac->programs, &ac->nb_programs, program);
+        if (ret < 0) {
+            av_free(program);
+            return NULL;
+        }
+        program->discard = AVDISCARD_NONE;
+        program->pmt_version = -1;
+        program->id = id;
+        program->pts_wrap_reference = AV_NOPTS_VALUE;
+        program->pts_wrap_behavior = AV_PTS_WRAP_IGNORE;
+        program->start_time =
+        program->end_time   = AV_NOPTS_VALUE;
+    }
+    return program;
+}
+
+void av_program_add_stream_index(AVFormatContext *ac, int progid, unsigned idx)
+{
+    AVProgram *program = NULL;
+    void *tmp;
+
+    if (idx >= ac->nb_streams) {
+        av_log(ac, AV_LOG_ERROR, "stream index %d is not valid\n", idx);
+        return;
+    }
+
+    for (unsigned i = 0; i < ac->nb_programs; i++) {
+        if (ac->programs[i]->id != progid)
+            continue;
+        program = ac->programs[i];
+        for (unsigned j = 0; j < program->nb_stream_indexes; j++)
+            if (program->stream_index[j] == idx)
+                return;
+
+        tmp = av_realloc_array(program->stream_index, program->nb_stream_indexes+1, sizeof(unsigned int));
+        if (!tmp)
+            return;
+        program->stream_index = tmp;
+        program->stream_index[program->nb_stream_indexes++] = idx;
+        return;
+    }
+}
diff --git a/libavformat/utils.c b/libavformat/utils.c
index e7788f3f40..3267db432e 100644
--- a/libavformat/utils.c
+++ b/libavformat/utils.c
@@ -457,64 +457,6 @@ int ff_stream_side_data_copy(AVStream *dst, const AVStream *src)
     return 0;
 }
 
-AVProgram *av_new_program(AVFormatContext *ac, int id)
-{
-    AVProgram *program = NULL;
-    int ret;
-
-    av_log(ac, AV_LOG_TRACE, "new_program: id=0x%04x\n", id);
-
-    for (unsigned i = 0; i < ac->nb_programs; i++)
-        if (ac->programs[i]->id == id)
-            program = ac->programs[i];
-
-    if (!program) {
-        program = av_mallocz(sizeof(AVProgram));
-        if (!program)
-            return NULL;
-        ret = av_dynarray_add_nofree(&ac->programs, &ac->nb_programs, program);
-        if (ret < 0) {
-            av_free(program);
-            return NULL;
-        }
-        program->discard = AVDISCARD_NONE;
-        program->pmt_version = -1;
-        program->id = id;
-        program->pts_wrap_reference = AV_NOPTS_VALUE;
-        program->pts_wrap_behavior = AV_PTS_WRAP_IGNORE;
-        program->start_time =
-        program->end_time   = AV_NOPTS_VALUE;
-    }
-    return program;
-}
-
-void av_program_add_stream_index(AVFormatContext *ac, int progid, unsigned idx)
-{
-    AVProgram *program = NULL;
-    void *tmp;
-
-    if (idx >= ac->nb_streams) {
-        av_log(ac, AV_LOG_ERROR, "stream index %d is not valid\n", idx);
-        return;
-    }
-
-    for (unsigned i = 0; i < ac->nb_programs; i++) {
-        if (ac->programs[i]->id != progid)
-            continue;
-        program = ac->programs[i];
-        for (unsigned j = 0; j < program->nb_stream_indexes; j++)
-            if (program->stream_index[j] == idx)
-                return;
-
-        tmp = av_realloc_array(program->stream_index, program->nb_stream_indexes+1, sizeof(unsigned int));
-        if (!tmp)
-            return;
-        program->stream_index = tmp;
-        program->stream_index[program->nb_stream_indexes++] = idx;
-        return;
-    }
-}
-
 uint64_t ff_ntp_time(void)
 {
     return (av_gettime() / 1000) * 1000 + NTP_OFFSET_US;
-- 
2.32.0



More information about the ffmpeg-devel mailing list