[FFmpeg-devel] [PATCH v5 13/22] cbs: Expose the function to insert a new empty unit into a fragment

Mark Thompson sw at jkqxz.net
Mon May 4 01:05:39 EEST 2020


This will be helpful when adding new SEI to an existing access unit.
---
 libavcodec/cbs.c | 10 +++++-----
 libavcodec/cbs.h |  7 +++++++
 2 files changed, 12 insertions(+), 5 deletions(-)

diff --git a/libavcodec/cbs.c b/libavcodec/cbs.c
index 2f39ddbfb4..2346b1621b 100644
--- a/libavcodec/cbs.c
+++ b/libavcodec/cbs.c
@@ -680,9 +680,9 @@ int ff_cbs_alloc_unit_data(CodedBitstreamContext *ctx,
     return 0;
 }
 
-static int cbs_insert_unit(CodedBitstreamContext *ctx,
-                           CodedBitstreamFragment *frag,
-                           int position)
+int ff_cbs_insert_unit(CodedBitstreamContext *ctx,
+                       CodedBitstreamFragment *frag,
+                       int position)
 {
     CodedBitstreamUnit *units;
 
@@ -742,7 +742,7 @@ int ff_cbs_insert_unit_content(CodedBitstreamContext *ctx,
         content_ref = NULL;
     }
 
-    err = cbs_insert_unit(ctx, frag, position);
+    err = ff_cbs_insert_unit(ctx, frag, position);
     if (err < 0) {
         av_buffer_unref(&content_ref);
         return err;
@@ -781,7 +781,7 @@ int ff_cbs_insert_unit_data(CodedBitstreamContext *ctx,
         return AVERROR(ENOMEM);
     }
 
-    err = cbs_insert_unit(ctx, frag, position);
+    err = ff_cbs_insert_unit(ctx, frag, position);
     if (err < 0) {
         av_buffer_unref(&data_ref);
         return err;
diff --git a/libavcodec/cbs.h b/libavcodec/cbs.h
index eb7f4b878b..09b06a047d 100644
--- a/libavcodec/cbs.h
+++ b/libavcodec/cbs.h
@@ -370,6 +370,13 @@ int ff_cbs_alloc_unit_data(CodedBitstreamContext *ctx,
                            CodedBitstreamUnit *unit,
                            size_t size);
 
+/**
+ * Insert a new empty unit into a fragment.
+ */
+int ff_cbs_insert_unit(CodedBitstreamContext *ctx,
+                       CodedBitstreamFragment *frag,
+                       int position);
+
 /**
  * Insert a new unit into a fragment with the given content.
  *
-- 
2.26.2



More information about the ffmpeg-devel mailing list