From dfadeaa83da28f67201fcb95a4cc7946c555fff2 Mon Sep 17 00:00:00 2001 From: Corvo_s Date: Wed, 28 May 2025 14:55:34 +0800 Subject: [PATCH 1/3] =?UTF-8?q?sqr=E7=A0=81=E6=8E=A7=20Signed-off-by:=20Ya?= =?UTF-8?q?nghaolong=20?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- multimedia/av_codec/native_avcodec_base.h | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) diff --git a/multimedia/av_codec/native_avcodec_base.h b/multimedia/av_codec/native_avcodec_base.h index 609dc238e..9803aa898 100644 --- a/multimedia/av_codec/native_avcodec_base.h +++ b/multimedia/av_codec/native_avcodec_base.h @@ -1031,6 +1031,22 @@ extern const char *OH_MD_KEY_VIDEO_ENCODER_REPEAT_PREVIOUS_FRAME_AFTER; * @since 18 */ extern const char *OH_MD_KEY_VIDEO_ENCODER_REPEAT_PREVIOUS_MAX_COUNT; +/** + * @brief Key for the desired encoding quality, value type is int32_t, this key is only + * supported for encoders that are configured in Stable Quality RateControl, the higher + * values generally result in more efficient(smaller-sized) encoding. + * + * @syscap SystemCapability.Multimedia.Media.CodecBase + * @since 20 +*/ +extern const char *OH_MD_KEY_SQR_FACTOR; +/** + * @brief Key for maximum bitrate, value type is int64_t. + * + * @syscap SystemCapability.Multimedia.Media.CodecBase + * @since 20 +*/ +extern const char *OH_MD_KEY_MAX_BITRATE; /** * @brief Media type. @@ -1562,7 +1578,11 @@ typedef enum OH_BitrateMode { /** Variable Bit rate mode. */ BITRATE_MODE_VBR = 1, /** Constant Quality mode. */ - BITRATE_MODE_CQ = 2 + BITRATE_MODE_CQ = 2, + /** Stable Quality Rate Control mode. + * @since 20 + */ + BITRATE_MODE_SQR = 3 } OH_BitrateMode; #ifdef __cplusplus -- Gitee From ab452fa60b996c9a6b9479bfbf051ee5311bfae9 Mon Sep 17 00:00:00 2001 From: Corvo_s Date: Wed, 28 May 2025 15:39:03 +0800 Subject: [PATCH 2/3] =?UTF-8?q?sqr=E7=A0=81=E6=8E=A7=20Signed-off-by:=20Ya?= =?UTF-8?q?nghaolong=20?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- multimedia/av_codec/native_avcodec_base.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/multimedia/av_codec/native_avcodec_base.h b/multimedia/av_codec/native_avcodec_base.h index 9803aa898..4c60a7297 100644 --- a/multimedia/av_codec/native_avcodec_base.h +++ b/multimedia/av_codec/native_avcodec_base.h @@ -1038,14 +1038,14 @@ extern const char *OH_MD_KEY_VIDEO_ENCODER_REPEAT_PREVIOUS_MAX_COUNT; * * @syscap SystemCapability.Multimedia.Media.CodecBase * @since 20 -*/ + */ extern const char *OH_MD_KEY_SQR_FACTOR; /** * @brief Key for maximum bitrate, value type is int64_t. * * @syscap SystemCapability.Multimedia.Media.CodecBase * @since 20 -*/ + */ extern const char *OH_MD_KEY_MAX_BITRATE; /** -- Gitee From 7839567c2a6ebdf6bee1d0a14c454ebe8c6662cd Mon Sep 17 00:00:00 2001 From: Corvo_s Date: Thu, 29 May 2025 21:06:31 +0800 Subject: [PATCH 3/3] add json Signed-off-by: Yanghaolong --- .../codec_base/libnative_media_codecbase.ndk.json | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/multimedia/av_codec/codec_base/libnative_media_codecbase.ndk.json b/multimedia/av_codec/codec_base/libnative_media_codecbase.ndk.json index 8077a4119..1e3ad6e15 100644 --- a/multimedia/av_codec/codec_base/libnative_media_codecbase.ndk.json +++ b/multimedia/av_codec/codec_base/libnative_media_codecbase.ndk.json @@ -423,6 +423,14 @@ "first_introduced": "18", "name": "OH_MD_KEY_VIDEO_ENCODER_REPEAT_PREVIOUS_MAX_COUNT" }, + { + "first_introduced": "20", + "name": "OH_MD_KEY_SQR_FACTOR" + }, + { + "first_introduced": "20", + "name": "OH_MD_KEY_MAX_BITRATE" + }, { "first_introduced": "10", "name": "OH_AVCodec_GetCapability" -- Gitee