[FFmpeg-devel] [PATCH 1/2] lavc/cbs_h265: Add sps_multilayer_extension support

Jun Zhao mypopydev at gmail.com
Fri Nov 17 15:03:21 EET 2023


Add sps_multilayer_extensio support.

Signed-off-by: Jun Zhao <barryjzhao at tencent.com>
---
 libavcodec/cbs_h265.h                 |  3 +++
 libavcodec/cbs_h265_syntax_template.c | 12 +++++++++++-
 2 files changed, 14 insertions(+), 1 deletion(-)

diff --git a/libavcodec/cbs_h265.h b/libavcodec/cbs_h265.h
index 1b1195f198..15951269fd 100644
--- a/libavcodec/cbs_h265.h
+++ b/libavcodec/cbs_h265.h
@@ -330,6 +330,9 @@ typedef struct H265RawSPS {
     uint8_t persistent_rice_adaptation_enabled_flag;
     uint8_t cabac_bypass_alignment_enabled_flag;
 
+    // Multilayer extension.
+    uint8_t inter_view_mv_vert_constraint_flag;
+
     // Screen content coding extension.
     uint8_t sps_curr_pic_ref_enabled_flag;
     uint8_t palette_mode_enabled_flag;
diff --git a/libavcodec/cbs_h265_syntax_template.c b/libavcodec/cbs_h265_syntax_template.c
index 2d4b954718..1e3bc1acd8 100644
--- a/libavcodec/cbs_h265_syntax_template.c
+++ b/libavcodec/cbs_h265_syntax_template.c
@@ -717,6 +717,16 @@ static int FUNC(sps_range_extension)(CodedBitstreamContext *ctx, RWContext *rw,
     return 0;
 }
 
+static int FUNC(sps_multilayer_extension)(CodedBitstreamContext *ctx, RWContext *rw,
+                                          H265RawSPS *current)
+{
+    int err;
+
+    flag(inter_view_mv_vert_constraint_flag);
+
+    return 0;
+}
+
 static int FUNC(sps_scc_extension)(CodedBitstreamContext *ctx, RWContext *rw,
                                    H265RawSPS *current)
 {
@@ -952,7 +962,7 @@ static int FUNC(sps)(CodedBitstreamContext *ctx, RWContext *rw,
     if (current->sps_range_extension_flag)
         CHECK(FUNC(sps_range_extension)(ctx, rw, current));
     if (current->sps_multilayer_extension_flag)
-        return AVERROR_PATCHWELCOME;
+        CHECK(FUNC(sps_multilayer_extension)(ctx, rw, current));
     if (current->sps_3d_extension_flag)
         return AVERROR_PATCHWELCOME;
     if (current->sps_scc_extension_flag)
-- 
2.25.1



More information about the ffmpeg-devel mailing list