diff --git a/interface/inner_api/meta/meta.h b/interface/inner_api/meta/meta.h index 98ba3f735141e24c4a3e4f75bf25cc94c0adeb7f..2fa9c8694d30b2dcf17dcd71555965e9702eb791 100644 --- a/interface/inner_api/meta/meta.h +++ b/interface/inner_api/meta/meta.h @@ -422,6 +422,8 @@ public: tagCharSeq == Tag::TIMED_METADATA_SRC_TRACK, int32_t, AnyValueType::INT32_T); DEFINE_INSERT_GET_FUNC( tagCharSeq == Tag::VIDEO_DECODER_OUTPUT_COLOR_SPACE, int32_t, AnyValueType::INT32_T); + DEFINE_INSERT_GET_FUNC( + tagCharSeq == Tag::VIDEO_DECODER_OUTPUT_ENABLE_VRR, int32_t, AnyValueType::INT32_T); Meta &operator=(const Meta &other) { diff --git a/interface/inner_api/meta/meta_key.h b/interface/inner_api/meta/meta_key.h index 75d535b92f381a3eb3c1c7fa690ef60e5f39ff1e..cda3fba9b6706ee0e862e0cd1b3731e174e7d75f 100644 --- a/interface/inner_api/meta/meta_key.h +++ b/interface/inner_api/meta/meta_key.h @@ -448,6 +448,9 @@ public: static constexpr const char AV_TRANSCODER_VIDEO_DECODER_DURATION[] = "av_transcoder_video_decoder_duration"; static constexpr const char AV_TRANSCODER_VIDEO_ENCODER_DURATION[] = "av_transcoder_video_encoder_duration"; static constexpr const char AV_TRANSCODER_VIDEO_VPE_DURATION[] = "av_transcoder_video_vpe_duration"; +/* -------------------- vrr tag -------------------- */ + // int32_t, 1 is enabled, 0 is unabled + static constexpr const char VIDEO_DECODER_OUTPUT_ENABLE_VRR[] = "video_decoder_output_enable_vrr"; }; using TagTypeCharSeq = const char *; diff --git a/src/meta/meta.cpp b/src/meta/meta.cpp index bb93ef1f5b5c225628a8dc4ff46bbedb2ceff518..75643ed4e1e63c46e53ba699d94c4e2c983f6b5d 100644 --- a/src/meta/meta.cpp +++ b/src/meta/meta.cpp @@ -373,6 +373,7 @@ static std::map g_metadataDefaultValueMap = { {Tag::VIDEO_ENCODER_REPEAT_PREVIOUS_FRAME_AFTER, defaultInt32}, {Tag::VIDEO_ENCODER_REPEAT_PREVIOUS_MAX_COUNT, defaultInt32}, {Tag::VIDEO_DECODER_OUTPUT_COLOR_SPACE, defaultInt32}, + {Tag::VIDEO_DECODER_OUTPUT_ENABLE_VRR, defaultInt32}, {Tag::AV_TRANSCODER_ERR_CODE, defaultInt32}, {Tag::AV_TRANSCODER_SOURCE_DURATION, defaultInt32}, {Tag::AV_TRANSCODER_TRANSCODER_DURATION, defaultInt32}, diff --git a/tests/unittest/meta/meta_func_unit_test.cpp b/tests/unittest/meta/meta_func_unit_test.cpp index e79f99bdfdd976debd51dcc69dbae09ecae3344e..d8d5e797fcee2349e4cb2446ce5069ff68feb85e 100644 --- a/tests/unittest/meta/meta_func_unit_test.cpp +++ b/tests/unittest/meta/meta_func_unit_test.cpp @@ -474,6 +474,7 @@ map testInt32Data = { {Tag::VIDEO_ENCODER_REPEAT_PREVIOUS_FRAME_AFTER, 10}, {Tag::VIDEO_ENCODER_REPEAT_PREVIOUS_MAX_COUNT, 10}, {Tag::VIDEO_DECODER_OUTPUT_COLOR_SPACE, 8}, + {Tag::VIDEO_DECODER_OUTPUT_ENABLE_VRR, 0}, // UINT8_T {Tag::AUDIO_AAC_PROFILE, static_cast(Plugins::AudioAacProfile::ELD)}, {Tag::AUDIO_AAC_STREAM_FORMAT, static_cast(Plugins::AudioAacStreamFormat::ADIF)}};