From e0dbc04dff8e1666b15e3e409c1e9e173a505dbf Mon Sep 17 00:00:00 2001 From: rachel_w Date: Wed, 20 Nov 2024 15:19:56 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9EVVC=20profiles=E5=92=8Clevels?= =?UTF-8?q?=E6=9E=9A=E4=B8=BE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: rachel_w --- multimedia/av_codec/native_avcodec_base.h | 78 +++++++++++++++++++++++ 1 file changed, 78 insertions(+) diff --git a/multimedia/av_codec/native_avcodec_base.h b/multimedia/av_codec/native_avcodec_base.h index 147a7268e..3f53a5565 100644 --- a/multimedia/av_codec/native_avcodec_base.h +++ b/multimedia/av_codec/native_avcodec_base.h @@ -1015,6 +1015,44 @@ typedef enum OH_HEVCProfile { HEVC_PROFILE_MAIN_10_HDR10_PLUS = 4, } OH_HEVCProfile; +/** + * @brief VVC Profile: A specified subset of the syntax of VVC. + * @syscap SystemCapability.Multimedia.Media.CodecBase + * @since 14 + */ +typedef enum OH_VVCProfile { + /** Main 10 profile */ + VVC_PROFILE_MAIN_10 = 1, + /** Main 12 profile */ + VVC_PROFILE_MAIN_12 = 2, + /** Main 12 Intra profile */ + VVC_PROFILE_MAIN_12_INTRA = 10, + /** Multilayer Main 10 profile */ + VVC_PROFILE_MULTI_MAIN_10 = 17, + /** Main 10 4:4:4 profile */ + VVC_PROFILE_MAIN_10_444 = 33, + /** Main 12 4:4:4 profile */ + VVC_PROFILE_MAIN_12_444 = 34, + /** Main 16 4:4:4 profile */ + VVC_PROFILE_MAIN_16_444 = 36, + /** Main 12 4:4:4 Intra profile */ + VVC_PROFILE_MAIN_12_444_INTRA = 42, + /** Main 16 4:4:4 Intra profile */ + VVC_PROFILE_MAIN_16_444_INTRA = 44, + /** Multilayer Main 10 4:4:4 profile */ + VVC_PROFILE_MULTI_MAIN_10_444 = 49, + /** Main 10 Still Picture profile */ + VVC_PROFILE_MAIN_10_STILL = 65, + /** Main 12 Still Picture profile */ + VVC_PROFILE_MAIN_12_STILL = 66, + /** Main 10 4:4:4 Still Picture profile */ + VVC_PROFILE_MAIN_10_444_STILL = 97, + /** Main 12 4:4:4 Still Picture profile */ + VVC_PROFILE_MAIN_12_444_STILL = 98, + /** Main 16 4:4:4 Still Picture profile */ + VVC_PROFILE_MAIN_16_444_STILL = 100, +} OH_VVCProfile; + /** * @brief Enumerates the muxer output file format * @@ -1208,6 +1246,46 @@ typedef enum OH_HEVCLevel { HEVC_LEVEL_62 = 12, } OH_HEVCLevel; +/** + * @brief VVC Level: A defined set of constraints on the values that may be taken by the syntax elements and variables + * of VVC, or the value of a transform coefficient prior to scaling. + * + * @syscap SystemCapability.Multimedia.Media.CodecBase + * @since 14 + */ +typedef enum OH_VVCLevel { + /** VVC level 1.0 */ + VVC_LEVEL_1 = 16, + /** VVC level 2.0 */ + VVC_LEVEL_2 = 32, + /** VVC level 2.1 */ + VVC_LEVEL_21 = 35, + /** VVC level 3.0 */ + VVC_LEVEL_3 = 48, + /** VVC level 3.1 */ + VVC_LEVEL_31 = 51, + /** VVC level 4.0 */ + VVC_LEVEL_4 = 64, + /** VVC level 4.1 */ + VVC_LEVEL_41 = 67, + /** VVC level 5.0 */ + VVC_LEVEL_5 = 80, + /** VVC level 5.1 */ + VVC_LEVEL_51 = 83, + /** VVC level 5.2 */ + VVC_LEVEL_52 = 86, + /** VVC level 6.0 */ + VVC_LEVEL_6 = 96, + /** VVC level 6.1 */ + VVC_LEVEL_61 = 99, + /** VVC level 6.2 */ + VVC_LEVEL_62 = 102, + /** VVC level 6.3 */ + VVC_LEVEL_63 = 105, + /** VVC level 15.5 */ + VVC_LEVEL_155 = 255, +} OH_VVCLevel; + /** * @brief The reference mode in temporal group of picture. * -- Gitee