• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# CodecBase
2
3
4## 概述
5
6CodecBase模块提供用于音视频封装、解封装、编解码基础功能的变量、属性以及函数。
7
8**系统能力:** SystemCapability.Multimedia.Media.CodecBase
9
10**起始版本:** 9
11
12### 媒体编解码格式
13
14用于描述媒体编解码格式的名字如下表。类型是常量字符串。
15
16| 名称                                                         | 描述                                                   |
17| ------------------------------------------------------------ | ------------------------------------------------------ |
18| [OH_AVCODEC_MIMETYPE_AUDIO_AAC](#oh_avcodec_mimetype_audio_aac) | AAC音频编解码器的MIME类型。                            |
19| [OH_AVCODEC_MIMETYPE_AUDIO_FLAC](#oh_avcodec_mimetype_audio_flac) | FLAC音频编解码器的MIME类型。                           |
20| [OH_AVCODEC_MIMETYPE_AUDIO_OPUS](#oh_avcodec_mimetype_audio_opus) | OPUS音频编解码器的MIME类型。<!--Del-->(此规格暂未开放)<!--DelEnd-->        |
21| [OH_AVCODEC_MIMETYPE_AUDIO_G711MU](#oh_avcodec_mimetype_audio_g711mu) | G711MU音频编解码器的MIME类型。                         |
22| [OH_AVCODEC_MIMETYPE_AUDIO_RAW](#oh_avcodec_mimetype_audio_raw) | RAW音频码流的MIME类型。                         |
23| [OH_AVCODEC_MIMETYPE_AUDIO_VORBIS](#oh_avcodec_mimetype_audio_vorbis) | VORBIS音频解码器的MIME类型。                           |
24| [OH_AVCODEC_MIMETYPE_AUDIO_MPEG](#oh_avcodec_mimetype_audio_mpeg) | MP3音频解码器的MIME类型。                              |
25| [OH_AVCODEC_MIMETYPE_AUDIO_VIVID](#oh_avcodec_mimetype_audio_vivid) | Audio Vivid音频解码器的MIME类型。<!--Del-->(此规格暂未开放)<!--DelEnd-->     |
26| [OH_AVCODEC_MIMETYPE_AUDIO_AMR_NB](#oh_avcodec_mimetype_audio_amr_nb) | AMR_NB音频解码器的MIME类型。                           |
27| [OH_AVCODEC_MIMETYPE_AUDIO_AMR_WB](#oh_avcodec_mimetype_audio_amr_wb) | AMR_WB音频解码器的MIME类型。                           |
28| [OH_AVCODEC_MIMETYPE_AUDIO_APE](#oh_avcodec_mimetype_audio_ape) |APE音频解码器的MIME类型。                         |
29| [OH_AVCODEC_MIMETYPE_VIDEO_VVC](#oh_avcodec_mimetype_video_vvc) | VVC(H.266)视频编解码器的MIME类型。                    |
30| [OH_AVCODEC_MIMETYPE_VIDEO_HEVC](#oh_avcodec_mimetype_video_hevc) | HEVC(H.265)视频编解码器的MIME类型。                    |
31| [OH_AVCODEC_MIMETYPE_VIDEO_AVC](#oh_avcodec_mimetype_video_avc) | AVC(H.264)视频编解码器的MIME类型。                     |
32| [OH_AVCODEC_MIMETYPE_VIDEO_H263](#oh_avcodec_mimetype_video_h263) | H.263视频编解码器的MIME类型。                     |
33| [OH_AVCODEC_MIMETYPE_VIDEO_MPEG4](#oh_avcodec_mimetype_video_mpeg4) | MPEG4视频编码的MIME类型,仅用于封装MPEG4视频码流使用。(API11废弃) |
34| [OH_AVCODEC_MIMETYPE_VIDEO_MPEG4_PART2](#oh_avcodec_mimetype_video_mpeg4_part2) | 视频MPEG4 Part2编解码器的MIME类型。 |
35| [OH_AVCODEC_MIMETYPE_VIDEO_MPEG2](#oh_avcodec_mimetype_video_mpeg2) | 视频MPEG2编解码器的MIME类型。 |
36| [OH_AVCODEC_MIMETYPE_IMAGE_JPG](#oh_avcodec_mimetype_image_jpg) | JPG图片编码的MIME类型,仅用于封装JPG封面时使用。       |
37| [OH_AVCODEC_MIMETYPE_IMAGE_PNG](#oh_avcodec_mimetype_image_png) | PNG图片编码的MIME类型,仅用于封装PNG封面时使用。       |
38| [OH_AVCODEC_MIMETYPE_IMAGE_BMP](#oh_avcodec_mimetype_image_bmp) | BMP图片编码的MIME类型,仅用于封装BMP封面时使用。       |
39| [OH_AVCODEC_MIMETYPE_SUBTITLE_WEBVTT](#oh_avcodec_mimetype_subtitle_webvtt) |WEBVTT字幕解封装器的MIME类型。                         |
40| [OH_AVCODEC_MIMETYPE_SUBTITLE_SRT](#oh_avcodec_mimetype_subtitle_srt) |SRT字幕解封装器的MIME类型。                         |
41
42
43### 媒体数据键值对
44
45用于描述媒体数据的键值对查找表如下。键的类型是常量字符串,值的类型可以是int32_t/int64_t/float/double/char */uint8_t *。
46
47使用以下key的主要接口是[OH_AVFormat](_core.md#函数),通过以下key可以进行参数配置或查询。
48
49能力查询专有的键值对:
50
51| 名称                                                         | 描述                                                         |
52| ------------------------------------------------------------ | ------------------------------------------------------------ |
53| [OH_FEATURE_PROPERTY_KEY_VIDEO_ENCODER_MAX_LTR_FRAME_COUNT](#oh_feature_property_key_video_encoder_max_ltr_frame_count)     | 在视频编码中获取长期参考帧的最大个数的键,值类型为int32_t。 |
54
55音视频公共的键值对:
56
57| 名称                                                         | 描述                                                         |
58| ------------------------------------------------------------ | ------------------------------------------------------------ |
59| [OH_MD_KEY_CODEC_CONFIG](#oh_md_key_codec_config)            | 编解码器特定数据的键,视频中表示传递SPS/PPS,音频中表示传递extraData,值类型为uint8_t\*。该键是可选的。 <!--Del-->(视频编解码此功能暂未支持)<!--DelEnd--> |
60| [OH_MD_MAX_INPUT_BUFFER_COUNT](#oh_md_max_input_buffer_count) | 最大输入缓冲区个数的键,值类型为int32_t。该键是可选的。      |
61| [OH_MD_MAX_OUTPUT_BUFFER_COUNT](#oh_md_max_output_buffer_count) | 最大输出缓冲区个数的键,值类型int32_t。该键是可选的。        |
62| [OH_MD_KEY_BITRATE](#oh_md_key_bitrate)                      | 比特率的键,值类型为int64_t。该键用于音视频编码场景。在视频编码场景下该键是可选的。 |
63| [OH_MD_KEY_PROFILE](#oh_md_key_profile)                      | 编码档次,值类型为int32_t,请参见[OH_AVCProfile](#oh_avcprofile),[OH_HEVCProfile](#oh_hevcprofile),[OH_AACProfile](#oh_aacprofile)。该键是可选的。 |
64| [OH_MD_KEY_MAX_INPUT_SIZE](#oh_md_key_max_input_size)        | 设置解码输入码流大小最大值的键,值类型为int32_t。该键是可选的。           |
65
66
67视频专有的键值对:
68
69| 名称                                                         | 描述                                                         |
70| ------------------------------------------------------------ | ------------------------------------------------------------ |
71| [OH_ED_KEY_TIME_STAMP](#oh_ed_key_time_stamp)                | 表示surfacebuffer时间戳的键,值类型为int64_t。该键是可选的。(API14废弃) |
72| [OH_ED_KEY_EOS](#oh_ed_key_eos)                              | 表示surfacebuffer流结束符的键,值类型为int32_t。该键是可选的。(API14废弃)|
73| [OH_MD_KEY_WIDTH](#oh_md_key_width)                          | 视频宽度的键,值类型为int32_t。                             |
74| [OH_MD_KEY_HEIGHT](#oh_md_key_height)                        | 视频高度键,值类型为int32_t。                               |
75| [OH_MD_KEY_PIXEL_FORMAT](#oh_md_key_pixel_format)            | 视频像素格式的键,值类型为int32_t,请参见[OH_AVPixelFormat](_core.md#oh_avpixelformat)。 |
76| [OH_MD_KEY_FRAME_RATE](#oh_md_key_frame_rate)                | 视频帧率的键,值类型为double。该键是可选的。                 |
77| [OH_MD_KEY_RANGE_FLAG](#oh_md_key_range_flag)                | 视频YUV值域标志的键,值类型为int32_t,1表示full range,0表示limited range。该键是可选的。 |
78| [OH_MD_KEY_COLOR_PRIMARIES](#oh_md_key_color_primaries)      | 视频色域的键,值类型为int32_t,请参见[OH_ColorPrimary](#oh_colorprimary),遵循H.273标准Table2。该键是可选的。 |
79| [OH_MD_KEY_TRANSFER_CHARACTERISTICS](#oh_md_key_transfer_characteristics) | 视频传递函数的键,值类型为int32_t,请参见[OH_TransferCharacteristic](#oh_transfercharacteristic),遵循H.273标准Table3。该键是可选的。 |
80| [OH_MD_KEY_MATRIX_COEFFICIENTS](#oh_md_key_matrix_coefficients) | 视频矩阵系数的键,值类型为int32_t,请参见[OH_MatrixCoefficient](#oh_matrixcoefficient),遵循H.273标准Table4。该键是可选的。 |
81| [OH_MD_KEY_VIDEO_STRIDE](#oh_md_key_video_stride)       | 描述视频帧宽跨距的键,值类型为int32_t。该键是可选的。        |
82| [OH_MD_KEY_VIDEO_SLICE_HEIGHT](#oh_md_key_video_slice_height)    | 描述视频帧高跨距的键,值类型为int32_t。该键是可选的。        |
83| [OH_MD_KEY_VIDEO_PIC_WIDTH](#oh_md_key_video_pic_width)       | 描述视频帧真实宽度的键,值类型为int32_t。该键是可选的。        |
84| [OH_MD_KEY_VIDEO_PIC_HEIGHT](#oh_md_key_video_pic_height)    | 描述视频帧真实高度的键,值类型为int32_t。该键是可选的。        |
85| [OH_MD_KEY_VIDEO_ENABLE_LOW_LATENCY](#oh_md_key_video_enable_low_latency)   | 使能低时延视频编解码的键,值类型为int32_t,1表示使能,0表示其它情况。该键是可选,在Configure阶段使用。 |
86| [OH_MD_KEY_VIDEO_ENCODE_BITRATE_MODE](#oh_md_key_video_encode_bitrate_mode) | 视频编码码率模式,值类型为int32_t,请参见[OH_BitrateMode](#oh_bitratemode-1)。该键是可选的。 |
87| [OH_MD_KEY_QUALITY](#oh_md_key_quality)                      | 所需编码质量的键。值类型为int32_t,此键仅适用于配置在恒定质量模式下的编码器。该键是可选的。 |
88| [OH_MD_KEY_REQUEST_I_FRAME](#oh_md_key_request_i_frame)      | 请求立即编码I帧的键。值类型为int32_t。该键是可选的。            |
89| [OH_MD_KEY_I_FRAME_INTERVAL](#oh_md_key_i_frame_interval)    | 关键帧间隔的键,值类型为int32_t,单位为毫秒。该键是可选的且只用于视频编码。 |
90| [OH_MD_KEY_VIDEO_ENCODER_ENABLE_TEMPORAL_SCALABILITY](#oh_md_key_video_encoder_enable_temporal_scalability)          | 使能分层编码的键,值类型为int32_t,1表示使能,0表示其它情况。该键是可选的且只用于视频编码,在Configure阶段使用。 |
91| [OH_MD_KEY_VIDEO_ENCODER_TEMPORAL_GOP_SIZE](#oh_md_key_video_encoder_temporal_gop_size)       | 描述图片组基本层图片的间隔大小的键,值类型为int32_t,只在使能分层编码时生效。该键是可选的且只用于视频编码,在Configure阶段使用。 |
92| [OH_MD_KEY_VIDEO_ENCODER_TEMPORAL_GOP_REFERENCE_MODE](#oh_md_key_video_encoder_temporal_gop_reference_mode)         | 描述图片组内参考模式的键,值类型为int32_t,请参见[OH_TemporalGopReferenceMode](#oh_temporalgopreferencemode-1),只在使能分层编码时生效。该键是可选的且只用于视频编码,在Configure阶段使用。 |
93| [OH_MD_KEY_VIDEO_ENCODER_LTR_FRAME_COUNT](#oh_md_key_video_encoder_ltr_frame_count)        | 描述长期参考帧个数的键,值类型为int32_t,必须在支持的值范围内使用。该键是可选的且只用于视频编码。|
94| [OH_MD_KEY_VIDEO_ENCODER_PER_FRAME_MARK_LTR](#oh_md_key_video_encoder_per_frame_mark_ltr)  | 标记当前帧为长期参考帧的键,值类型为int32_t,1表示被标记,0表示其它情况。该键是可选的且只用于视频编码。 |
95| [OH_MD_KEY_VIDEO_ENCODER_PER_FRAME_USE_LTR](#oh_md_key_video_encoder_per_frame_use_ltr)    | 	描述当前帧参考的长期参考帧帧的POC号的键,值类型为int32_t。该键是可选的且只用于视频编码。 |
96| [OH_MD_KEY_VIDEO_PER_FRAME_IS_LTR](#oh_md_key_video_per_frame_is_ltr)      | 当前[OH_AVBuffer](_core.md#oh_avbuffer)中输出的码流对应的帧是否为长期参考帧的键,值类型为int32_t,1表示是LTR,0表示其它情况。该键是可选的且只用于视频编码。 |
97| [OH_MD_KEY_VIDEO_PER_FRAME_POC](#oh_md_key_video_per_frame_poc)            | 描述帧的POC号的键,值类型为int32_t。该键是可选的且只用于视频编码。 |
98| [OH_MD_KEY_VIDEO_ENCODER_QP_MAX](#oh_md_key_video_encoder_qp_max)       | 描述视频编码器允许的最大量化参数的键,值类型为int32_t。该键是可选的且只用于视频编码。 |
99| [OH_MD_KEY_VIDEO_ENCODER_QP_MIN](#oh_md_key_video_encoder_qp_min)      | 描述视频编码器允许的最小量化参数的键,值类型为int32_t。该键是可选的且只用于视频编码。 |
100| [OH_MD_KEY_VIDEO_ENCODER_QP_AVERAGE](#oh_md_key_video_encoder_qp_average)     |描述视频帧平均量化参数的键,值类型为int32_t。该键是可选的且只用于视频编码。  |
101| [OH_MD_KEY_VIDEO_ENCODER_MSE](#oh_md_key_video_encoder_mse)     |描述视频帧平方误差的键,值类型为double。该键是可选的且只用于视频编码。  |
102| [OH_MD_KEY_VIDEO_ENCODER_REPEAT_PREVIOUS_FRAME_AFTER](#oh_md_key_video_encoder_repeat_previous_frame_after)         | 如果在上一帧提交给编码器之后没有新的帧可用,则会以毫秒为单位重复提交最后一帧,值类型为int32_t。该键只用于视频编码Surface模式,在Configure阶段使用。 |
103| [OH_MD_KEY_VIDEO_ENCODER_REPEAT_PREVIOUS_MAX_COUNT](#oh_md_key_video_encoder_repeat_previous_max_count)         | 描述编码器在没有新的帧可用的情况下,可以对之前的帧进行重复编码的最大次数,值类型为int32_t。该键仅在OH_MD_KEY_VIDEO_ENCODER_REPEAT_PREVIOUS_FRAME_AFTER可用时生效,在Configure阶段使用。|
104| [OH_MD_KEY_VIDEO_DECODER_OUTPUT_COLOR_SPACE](#oh_md_key_video_decoder_output_color_space)    | 设置视频解码器输出色彩空间的键,值类型为int32_t。 支持的值为OH_COLORSPACE_BT709_LIMIT。|
105| [OH_MD_KEY_ROTATION](#oh_md_key_rotation)                    | surface旋转角度的键。值类型为int32_t:应为{0, 90, 180, 270},默认值为0。该键只在视频解码Surface模式下使用。该键是可选的。 |
106| [OH_MD_KEY_SCALING_MODE](#oh_md_key_scaling_mode)            | 视频缩放模式,值类型为int32_t,请参见[OH_ScalingMode](#oh_scalingmode)。该键是可选的且只用于视频解码Surface模式。建议直接调用[OH_NativeWindow_NativeWindowSetScalingModeV2](../apis-arkgraphics2d/_native_window.md#oh_nativewindow_nativewindowsetscalingmodev2)接口进行设置。(API14废弃)|
107| [OH_MD_KEY_VIDEO_CROP_TOP](#oh_md_key_video_crop_top)       | 描述裁剪矩形顶部坐标(y)值的键,值类型为int32_t。该键是可选的且只用于视频解码。 |
108| [OH_MD_KEY_VIDEO_CROP_BOTTOM](#oh_md_key_video_crop_bottom)        | 描述裁剪矩形底部坐标(y)值的键,值类型为int32_t。该键是可选的且只用于视频解码。 |
109| [OH_MD_KEY_VIDEO_CROP_LEFT](#oh_md_key_video_crop_left)     | 描述裁剪矩形左坐标(x)值的键,值类型为int32_t。该键是可选的且只用于视频解码。 |
110| [OH_MD_KEY_VIDEO_CROP_RIGHT](#oh_md_key_video_crop_right)     | 描述裁剪矩形右坐标(x)值的键,值类型为int32_t。该键是可选的且只用于视频解码。 |
111| [OH_MD_KEY_VIDEO_DECODER_OUTPUT_ENABLE_VRR](#oh_md_key_video_decoder_output_enable_vrr)     | 解码器是否打开视频可变帧率功能的键,值类型为int32_t。该键是可选的且只用于视频解码。 |
112
113音频专有的键值对:
114
115| 名称                                                         | 描述                                                         |
116| ------------------------------------------------------------ | ------------------------------------------------------------ |
117| [OH_MD_KEY_AUDIO_SAMPLE_FORMAT](#oh_md_key_audio_sample_format) | 音频原始格式的键,值类型为int32_t。请参见[OH_BitsPerSample](#oh_bitspersample-1)。|
118| [OH_MD_KEY_AUD_CHANNEL_COUNT](#oh_md_key_aud_channel_count)  | 音频通道计数键,值类型为int32_t。                           |
119| [OH_MD_KEY_AUD_SAMPLE_RATE](#oh_md_key_aud_sample_rate)      | 音频采样率键,值类型为int32_t。                             |
120| [OH_MD_KEY_AUDIO_COMPRESSION_LEVEL](#oh_md_key_audio_compression_level) | 音频编解码压缩水平的键,只在音频编码使用,值类型为int32_t。该键是可选的。     |
121| [OH_MD_KEY_CHANNEL_LAYOUT](#oh_md_key_channel_layout)        | 所需编码通道布局的键。值类型为int64_t,此键仅适用于编码器。请参见[OH_AudioChannelLayout](_core.md#oh_audiochannellayout-1)。  |
122| [OH_MD_KEY_BITS_PER_CODED_SAMPLE](#oh_md_key_bits_per_coded_sample) | 每个编码样本位数的键,值类型为int32_t,支持flac编码器,请参见[OH_BitsPerSample](#oh_bitspersample-1)。该键是可选的。 |
123| [OH_MD_KEY_SBR](#oh_md_key_sbr)                              | aac sbr模式的键,值类型为int32_t,aac编码器支持。该键是可选的。 |
124| [OH_MD_KEY_COMPLIANCE_LEVEL](#oh_md_key_compliance_level)    | flac兼容性等级的键,值类型为int32_t,仅在音频编码使用。该键是可选的。          |
125| [OH_MD_KEY_AAC_IS_ADTS](#oh_md_key_aac_is_adts)              | aac格式的键,aac格式分为ADTS格式和LATM格式。值类型为int32_t,aac解码器支持。该键是可选的。  |
126| [OH_MD_KEY_IDENTIFICATION_HEADER](#oh_md_key_identification_header) | vorbis标识头的键,值类型为uint8_t\*,仅vorbis解码器支持。该键是可选的。 |
127| [OH_MD_KEY_SETUP_HEADER](#oh_md_key_setup_header)            | vorbis设置头的键,值类型为uint8_t\*,仅vorbis解码器支持。该键是可选的。 |
128| [OH_MD_KEY_AUDIO_OBJECT_NUMBER](#oh_md_key_audio_object_number) | 音频对象数目的键,值类型为int32_t,只有Audio Vivid解码使用。该键是可选的。            |
129| [OH_MD_KEY_AUDIO_VIVID_METADATA](#oh_md_key_audio_vivid_metadata) | Audio Vivid元数据的键,值类型为uint8_t\*,只有Audio Vivid解码使用。该键是可选的。     |
130
131封装/解封装专有的键值对:
132
133| 名称                                                         | 描述                                                         |
134| ------------------------------------------------------------ | ------------------------------------------------------------ |
135| [OH_MD_KEY_VIDEO_IS_HDR_VIVID](#oh_md_key_video_is_hdr_vivid) | 媒体文件中的视频轨是否为HDR Vivid的键,支持封装和解封装,值类型为int32_t。该键是可选的。  |
136| [OH_MD_KEY_START_TIME](#oh_md_key_start_time) | 媒体文件中第一帧起始位置开始时间的键,以微秒为单位,值类型为int64_t。该键是可选的。            |
137| [OH_MD_KEY_TRACK_START_TIME](#oh_md_key_track_start_time) | 轨道开始时间的键,以微秒为单位,值类型为int64_t。该键是可选的。            |
138| [OH_MD_KEY_TRACK_TYPE](#oh_md_key_track_type)                | 轨道媒体类型的键,值类型为int32_t,请参见[OH_MediaType](#oh_mediatype-1)。该键是可选的。 |
139| [OH_MD_KEY_DURATION](#oh_md_key_duration)                    | 媒体文件持续时间的键,值类型为int64_t。该键是可选的。                  |
140| [OH_MD_KEY_TITLE](#oh_md_key_title)                          | 媒体文件标题的键,值类型为string。该键是可选的。               |
141| [OH_MD_KEY_ARTIST](#oh_md_key_artist)                        | 艺术家的键,值类型为string。该键是可选的。             |
142| [OH_MD_KEY_ALBUM](#oh_md_key_album)                          | 专辑的媒体文件的键,值类型为string。该键是可选的。               |
143| [OH_MD_KEY_ALBUM_ARTIST](#oh_md_key_album_artist)            | 专辑艺术家的键,值类型为string。该键是可选的。               |
144| [OH_MD_KEY_DATE](#oh_md_key_date)                            | 媒体文件日期的键,值类型为string,例如2024年。该键是可选的。    |
145| [OH_MD_KEY_COMMENT](#oh_md_key_comment)                      | 媒体文件注释的键,值类型为string。该键是可选的。               |
146| [OH_MD_KEY_GENRE](#oh_md_key_genre)                          | 媒体文件流派的键,值类型为string。该键是可选的。               |
147| [OH_MD_KEY_COPYRIGHT](#oh_md_key_copyright)                  | 媒体文件版权的键,值类型为string。该键是可选的。               |
148| [OH_MD_KEY_LANGUAGE](#oh_md_key_language)                    | 媒体文件语言的键,值类型为string。该键是可选的。               |
149| [OH_MD_KEY_DESCRIPTION](#oh_md_key_description)              | 媒体文件描述的键,值类型为string。该键是可选的。               |
150| [OH_MD_KEY_LYRICS](#oh_md_key_lyrics)                        | 媒体文件歌词的键,值类型为string。该键是可选的。               |
151| [OH_MD_KEY_TRACK_COUNT](#oh_md_key_track_count)              | 媒体文件轨道数量的键,值类型为int32_t。该键是可选的。         |
152| [OH_MD_KEY_BUFFER_DURATION](#oh_md_key_buffer_duration) | AVBuffer中携带的音视频或字幕的sample对应的持续时间的键,以微秒为单位,值类型为int64_t。该键是可选的。            |
153| [OH_MD_KEY_DECODING_TIMESTAMP](#oh_md_key_decoding_timestamp) | AVBuffer中携带的音视频或字幕的sample对应的解码时间戳的键,以微秒为单位,值类型为int64_t。该键是可选的。            |
154| [OH_MD_KEY_CODEC_MIME](#oh_md_key_codec_mime)                | 编解码器[MIME](#媒体编解码格式)类型的键,值类型为string。该键是可选的。         |
155| [OH_MD_KEY_VIDEO_SAR](#oh_md_key_video_sar)                  | 样本长宽比的键,值类型为double。 |
156| [OH_MD_KEY_CREATION_TIME](#oh_md_key_creation_time)          | 媒体文件创建时间的元数据,值类型为string。 |
157
158
159## 汇总
160
161
162### 文件
163
164| 名称 | 描述 |
165| -------- | -------- |
166| [avcodec_audio_channel_layout.h](avcodec__audio__channel__layout_8h.md) | 音频编解码枚举的声明。 |
167| [native_avcodec_base.h](native__avcodec__base_8h.md) | 音视频封装、解封装、编解码基础功能Native API的声明。 |
168
169
170### 结构体
171
172| 名称 | 描述 |
173| -------- | -------- |
174| struct  [OH_AVCodecAsyncCallback](_o_h___a_v_codec_async_callback.md) | OH_AVCodec中所有异步回调函数指针的集合。(API11废弃)|
175| struct  [OH_AVCodecCallback](_o_h___a_v_codec_callback.md) | OH_AVCodec中所有异步回调函数指针的集合。 |
176| struct  [OH_AVDataSource](_o_h___a_v_data_source.md) | 用户自定义数据源。  |
177
178
179### 类型定义
180
181| 名称 | 描述 |
182| -------- | -------- |
183| typedef struct NativeWindow [OHNativeWindow](#ohnativewindow) | 为图形接口定义native层对象。  |
184| typedef struct [OH_AVCodec](#oh_avcodec) [OH_AVCodec](#oh_avcodec) | 为音视频编解码接口定义native层对象。  |
185| typedef void(\* [OH_AVCodecOnError](#oh_avcodeconerror)) ([OH_AVCodec](#oh_avcodec) \*codec, int32_t errorCode, void \*userData) | 当OH_AVCodec实例运行出错时,会调用来上报具体的错误信息的函数指针。 |
186| typedef void(\* [OH_AVCodecOnStreamChanged](#oh_avcodeconstreamchanged)) ([OH_AVCodec](#oh_avcodec) \*codec, [OH_AVFormat](_core.md#oh_avformat) \*format, void \*userData) | 当视频解码输入码流分辨率或者视频编码输出码流的分辨率发生变化时,将调用此函数指针报告新的流描述信息。<br>从API 15开始,支持音频解码时,码流采样率、声道数或者音频采样格式发生变化时,将调用此函数指针报告新的流描述信息,支持检测此变化的解码格式有:<!--RP3--><!--RP3End-->AAC,FLAC,MP3,VORBIS。|
187| typedef void(\* [OH_AVCodecOnNeedInputData](#oh_avcodeconneedinputdata)) ([OH_AVCodec](#oh_avcodec) \*codec, uint32_t index, [OH_AVMemory](_core.md#oh_avmemory) \*data, void \*userData) | 当OH_AVCodec在运行过程中需要新的输入数据时,将调用此函数指针,并携带可用的缓冲区来填充新的输入数据。(API11废弃)|
188| typedef void(\* [OH_AVCodecOnNewOutputData](#oh_avcodeconnewoutputdata)) ([OH_AVCodec](#oh_avcodec) \*codec, uint32_t index, [OH_AVMemory](_core.md#oh_avmemory) \*data, [OH_AVCodecBufferAttr](_o_h___a_v_codec_buffer_attr.md) \*attr, void \*userData) | 当OH_AVCodec运行过程中生成新的输出数据时,将调用此函数指针,并携带包含新输出数据的缓冲区。(API11废弃)|
189| typedef void(\* [OH_AVCodecOnNeedInputBuffer](#oh_avcodeconneedinputbuffer)) ([OH_AVCodec](#oh_avcodec) \*codec, uint32_t index, [OH_AVBuffer](_core.md#oh_avbuffer) \*buffer, void \*userData) | 当OH_AVCodec在运行过程中需要新的输入数据时,将调用此函数指针,并携带可用的缓冲区来填充新的输入数据。 |
190| typedef void(\* [OH_AVCodecOnNewOutputBuffer](#oh_avcodeconnewoutputbuffer)) ([OH_AVCodec](#oh_avcodec) \*codec, uint32_t index, [OH_AVBuffer](_core.md#oh_avbuffer) \*buffer, void \*userData) | 当OH_AVCodec运行过程中生成新的输出数据时,将调用此函数指针,并携带包含新输出数据的缓冲区。 |
191| typedef struct [OH_AVCodecAsyncCallback](_o_h___a_v_codec_async_callback.md) [OH_AVCodecAsyncCallback](#oh_avcodecasynccallback) | OH_AVCodec中所有异步回调函数指针的集合。(API11废弃)|
192| typedef struct [OH_AVCodecCallback](_o_h___a_v_codec_callback.md) [OH_AVCodecCallback](#oh_avcodeccallback) | OH_AVCodec中所有异步回调函数指针的集合。 |
193| typedef int32_t(\* [OH_AVDataSourceReadAt](#oh_avdatasourcereadat)) (OH_AVBuffer \*data, int32_t length, int64_t pos) | 函数指针定义,用于提供获取用户自定义媒体数据的能力。  |
194| typedef struct [OH_AVDataSource](_o_h___a_v_data_source.md) [OH_AVDataSource](#oh_avdatasource) | 用户自定义数据源。  |
195| typedef enum [OH_MediaType](#oh_mediatype-1) [OH_MediaType](#oh_mediatype) | 媒体类型。 |
196| typedef enum [OH_AACProfile](#oh_aacprofile-1) [OH_AACProfile](#oh_aacprofile) | AAC档次。 |
197| typedef enum [OH_AVCProfile](#oh_avcprofile-1) [OH_AVCProfile](#oh_avcprofile) | AVC档次。 |
198| typedef enum [OH_HEVCProfile](#oh_hevcprofile-1) [OH_HEVCProfile](#oh_hevcprofile) | HEVC档次。 |
199| typedef enum [OH_VVCProfile](#oh_vvcprofile-1) [OH_VVCProfile](#oh_vvcprofile) | VVC档次。 |
200| typedef enum [OH_H263Profile](#oh_h263profile-1) [OH_H263Profile](#oh_h263profile) | H.263档次。 |
201| typedef enum [OH_MPEG2Profile](#oh_mpeg2profile-1) [OH_MPEG2Profile](#oh_mpeg2profile) | MPEG2档次。 |
202| typedef enum [OH_MPEG4Profile](#oh_mpeg4profile-1) [OH_MPEG4Profile](#oh_mpeg4profile) | MPEG4档次。 |
203| typedef enum [OH_AVOutputFormat](#oh_avoutputformat-1) [OH_AVOutputFormat](#oh_avoutputformat) | 封装器支持的输出文件格式。 |
204| typedef enum [OH_AVSeekMode](#oh_avseekmode-1) [OH_AVSeekMode](#oh_avseekmode) | 跳转模式。 |
205| typedef enum [OH_ScalingMode](#oh_scalingmode-1) [OH_ScalingMode](#oh_scalingmode) | 缩放模式,只在Surface模式下使用。(API14废弃) |
206| typedef enum [OH_BitsPerSample](#oh_bitspersample-1) [OH_BitsPerSample](#oh_bitspersample) | 每个编码样本的音频位数。 |
207| typedef enum [OH_ColorPrimary](#oh_colorprimary-1) [OH_ColorPrimary](#oh_colorprimary) | 色域。 |
208| typedef enum [OH_TransferCharacteristic](#oh_transfercharacteristic-1) [OH_TransferCharacteristic](#oh_transfercharacteristic) | 转移特性。 |
209| typedef enum [OH_MatrixCoefficient](#oh_matrixcoefficient-1) [OH_MatrixCoefficient](#oh_matrixcoefficient) | 矩阵系数。 |
210| typedef enum [OH_AVCLevel](#oh_avclevel-1) [OH_AVCLevel](#oh_avclevel) | AVC级别。  |
211| typedef enum [OH_HEVCLevel](#oh_hevclevel-1) [OH_HEVCLevel](#oh_hevclevel) | HEVC级别。  |
212| typedef enum [OH_VVCLevel](#oh_vvclevel-1) [OH_VVCLevel](#oh_vvclevel) | VVC级别。  |
213| typedef enum [OH_H263Level ](#oh_h263level-1) [OH_H263Level ](#oh_h263level) | H.263级别。  |
214| typedef enum [OH_MPEG2Level](#oh_mpeg2level-1) [OH_MPEG2Level](#oh_mpeg2level) | MPEG2级别。 |
215| typedef enum [OH_MPEG4Level](#oh_mpeg4level-1) [OH_MPEG4Level](#oh_mpeg4level) | MPEG4级别。 |
216| typedef enum [OH_TemporalGopReferenceMode](#oh_temporalgopreferencemode-1) [OH_TemporalGopReferenceMode](#oh_temporalgopreferencemode) | 时域图片组参考模式。  |
217| typedef enum [OH_BitrateMode](#oh_bitratemode-1) [OH_BitrateMode](#oh_bitratemode) | 编码器的比特率模式。  |
218
219
220### 枚举
221
222| 名称 | 描述 |
223| -------- | -------- |
224| [AudioChannelSet](#audiochannelset) : uint64_t {<br/>FRONT_LEFT = 1ULL &lt;&lt; 0U,<br/>FRONT_RIGHT = 1ULL &lt;&lt; 1U,<br/>FRONT_CENTER = 1ULL &lt;&lt; 2U,<br/>LOW_FREQUENCY = 1ULL &lt;&lt; 3U,<br/>BACK_LEFT = 1ULL &lt;&lt; 4U,<br/>BACK_RIGHT = 1ULL &lt;&lt; 5U,<br/>FRONT_LEFT_OF_CENTER = 1ULL &lt;&lt; 6U,<br/>FRONT_RIGHT_OF_CENTER = 1ULL &lt;&lt; 7U,<br/>BACK_CENTER = 1ULL &lt;&lt; 8U,<br/>SIDE_LEFT = 1ULL &lt;&lt; 9U,<br/>SIDE_RIGHT = 1ULL &lt;&lt; 10U,<br/>TOP_CENTER = 1ULL &lt;&lt; 11U,<br/>TOP_FRONT_LEFT = 1ULL &lt;&lt; 12U,<br/>TOP_FRONT_CENTER = 1ULL &lt;&lt; 13U,<br/>TOP_FRONT_RIGHT = 1ULL &lt;&lt; 14U,<br/>TOP_BACK_LEFT = 1ULL &lt;&lt; 15U,<br/>TOP_BACK_CENTER = 1ULL &lt;&lt; 16U,<br/>TOP_BACK_RIGHT = 1ULL &lt;&lt; 17U,<br/>STEREO_LEFT = 1ULL &lt;&lt; 29U,<br/>STEREO_RIGHT = 1ULL &lt;&lt; 30U,<br/>WIDE_LEFT = 1ULL &lt;&lt; 31U,<br/>WIDE_RIGHT = 1ULL &lt;&lt; 32U,<br/>SURROUND_DIRECT_LEFT = 1ULL &lt;&lt; 33U,<br/>SURROUND_DIRECT_RIGHT = 1ULL &lt;&lt; 34U,<br/>LOW_FREQUENCY_2 = 1ULL &lt;&lt; 35U,<br/>TOP_SIDE_LEFT = 1ULL &lt;&lt; 36U,<br/>TOP_SIDE_RIGHT = 1ULL &lt;&lt; 37U,<br/>BOTTOM_FRONT_CENTER = 1ULL &lt;&lt; 38U,<br/>BOTTOM_FRONT_LEFT = 1ULL &lt;&lt; 39U,<br/>BOTTOM_FRONT_RIGHT = 1ULL &lt;&lt; 40U,<br/>AMBISONICS_ACN0 = 1ULL &lt;&lt; 41U,<br/>AMBISONICS_ACN1 = 1ULL &lt;&lt; 42U,<br/>AMBISONICS_ACN2 = 1ULL &lt;&lt; 43U,<br/>AMBISONICS_ACN3 = 1ULL &lt;&lt; 44U,<br/>AMBISONICS_W = AMBISONICS_ACN0,<br/>AMBISONICS_Y = AMBISONICS_ACN1,<br/>AMBISONICS_Z = AMBISONICS_ACN2,<br/>AMBISONICS_X = AMBISONICS_ACN3,<br/>AMBISONICS_ACN4 = 1ULL &lt;&lt; 45U,<br/>AMBISONICS_ACN5 = 1ULL &lt;&lt; 46U,<br/>AMBISONICS_ACN6 = 1ULL &lt;&lt; 47U,<br/>AMBISONICS_ACN7 = 1ULL &lt;&lt; 48U,<br/>AMBISONICS_ACN8 = 1ULL &lt;&lt; 49U,<br/>AMBISONICS_ACN9 = 1ULL &lt;&lt; 50U,<br/>AMBISONICS_ACN10 = 1ULL &lt;&lt; 51U,<br/>AMBISONICS_ACN11 = 1ULL &lt;&lt; 52U,<br/>AMBISONICS_ACN12 = 1ULL &lt;&lt; 53U,<br/>AMBISONICS_ACN13 = 1ULL &lt;&lt; 54U,<br/>AMBISONICS_ACN14 = 1ULL &lt;&lt; 55U,<br/>AMBISONICS_ACN15 = 1ULL &lt;&lt; 56U<br/>} | 音频声道数集合, 将每一个声道数映射为int64_t的变量。(API11废弃)|
225| [AudioChannelLayout](#audiochannellayout) : uint64_t {<br/>UNKNOWN_CHANNEL_LAYOUT = 0,<br/>MONO = (AudioChannelSet::FRONT_CENTER),<br/>STEREO = (AudioChannelSet::FRONT_LEFT \| AudioChannelSet::FRONT_RIGHT),<br/>CH_2POINT1 = (STEREO \| AudioChannelSet::LOW_FREQUENCY),<br/>CH_2_1 = (STEREO \| AudioChannelSet::BACK_CENTER),<br/>SURROUND = (STEREO \| AudioChannelSet::FRONT_CENTER),<br/>CH_3POINT1 = (SURROUND \| AudioChannelSet::LOW_FREQUENCY),<br/>CH_4POINT0 = (SURROUND \| AudioChannelSet::BACK_CENTER),<br/>CH_4POINT1 = (CH_4POINT0 \| AudioChannelSet::LOW_FREQUENCY),<br/>CH_2_2 = (STEREO \| AudioChannelSet::SIDE_LEFT \| AudioChannelSet::SIDE_RIGHT),<br/>QUAD = (STEREO \| AudioChannelSet::BACK_LEFT \| AudioChannelSet::BACK_RIGHT),<br/>CH_5POINT0 = (SURROUND \| AudioChannelSet::SIDE_LEFT \| AudioChannelSet::SIDE_RIGHT),<br/>CH_5POINT1 = (CH_5POINT0 \| AudioChannelSet::LOW_FREQUENCY),<br/>CH_5POINT0_BACK = (SURROUND \| AudioChannelSet::BACK_LEFT \| AudioChannelSet::BACK_RIGHT),<br/>CH_5POINT1_BACK = (CH_5POINT0_BACK \| AudioChannelSet::LOW_FREQUENCY),<br/>CH_6POINT0 = (CH_5POINT0 \| AudioChannelSet::BACK_CENTER),<br/>CH_6POINT0_FRONT = (CH_2_2 \| AudioChannelSet::FRONT_LEFT_OF_CENTER \| AudioChannelSet::FRONT_RIGHT_OF_CENTER),<br/>HEXAGONAL = (CH_5POINT0_BACK \| AudioChannelSet::BACK_CENTER),<br/>CH_6POINT1 = (CH_5POINT1 \| AudioChannelSet::BACK_CENTER),<br/>CH_6POINT1_BACK = (CH_5POINT1_BACK \| AudioChannelSet::BACK_CENTER),<br/>CH_6POINT1_FRONT = (CH_6POINT0_FRONT \| AudioChannelSet::LOW_FREQUENCY),<br/>CH_7POINT0 = (CH_5POINT0 \| AudioChannelSet::BACK_LEFT \| AudioChannelSet::BACK_RIGHT),<br/>CH_7POINT0_FRONT = (CH_5POINT0 \| AudioChannelSet::FRONT_LEFT_OF_CENTER \| AudioChannelSet::FRONT_RIGHT_OF_CENTER),<br/>CH_7POINT1 = (CH_5POINT1 \| AudioChannelSet::BACK_LEFT \| AudioChannelSet::BACK_RIGHT),<br/>CH_7POINT1_WIDE = (CH_5POINT1 \| AudioChannelSet::FRONT_LEFT_OF_CENTER \| AudioChannelSet::FRONT_RIGHT_OF_CENTER),<br/>CH_7POINT1_WIDE_BACK, CH_3POINT1POINT2 = (CH_3POINT1 \| AudioChannelSet::TOP_FRONT_LEFT \| AudioChannelSet::TOP_FRONT_RIGHT),<br/>CH_5POINT1POINT2 = (CH_5POINT1 \| AudioChannelSet::TOP_SIDE_LEFT \| AudioChannelSet::TOP_SIDE_RIGHT),<br/>CH_5POINT1POINT4, CH_7POINT1POINT2 = (CH_7POINT1 \| AudioChannelSet::TOP_SIDE_LEFT \| AudioChannelSet::TOP_SIDE_RIGHT),<br/>CH_7POINT1POINT4, CH_9POINT1POINT4 = (CH_7POINT1POINT4 \| AudioChannelSet::WIDE_LEFT \| AudioChannelSet::WIDE_RIGHT),<br/>CH_9POINT1POINT6 = (CH_9POINT1POINT4 \| AudioChannelSet::TOP_SIDE_LEFT \| AudioChannelSet::TOP_SIDE_RIGHT),<br/>CH_10POINT2, CH_22POINT2, OCTAGONAL = (CH_5POINT0 \| AudioChannelSet::BACK_LEFT \| AudioChannelSet::BACK_CENTER \| AudioChannelSet::BACK_RIGHT),<br/>HEXADECAGONAL, STEREO_DOWNMIX = (AudioChannelSet::STEREO_LEFT \| AudioChannelSet::STEREO_RIGHT),<br/>HOA_FIRST,<br/>HOA_SECOND,<br/>HOA_THIRD<br/>} | 音频声道数类型,将用户申请的解码器输出格式表示为编解码器的声道类型。(API11废弃) |
226| [OH_MediaType](#oh_mediatype-1) {<br/>MEDIA_TYPE_AUD = 0,<br/>MEDIA_TYPE_VID = 1,<br/>MEDIA_TYPE_SUBTITILE = 2<br/>} | 媒体类型。 |
227| [OH_AACProfile](#oh_aacprofile-1) {<br/>AAC_PROFILE_LC = 0,<br/>AAC_PROFILE_HE = 3,<br/>AAC_PROFILE_HE_V2 = 4<br/>} | AAC档次。<!--Del--><br/>(AAC_PROFILE_HE, AAC_PROFILE_HE_V2暂未开放)<!--DelEnd--> |
228| [OH_AVCProfile](#oh_avcprofile-1) {<br/>AVC_PROFILE_BASELINE = 0,<br/>AVC_PROFILE_HIGH = 4,<br/>AVC_PROFILE_MAIN = 8<br/>} | AVC档次。 |
229| [OH_HEVCProfile](#oh_hevcprofile-1) {<br/>HEVC_PROFILE_MAIN = 0,<br/>HEVC_PROFILE_MAIN_10 = 1,<br/>HEVC_PROFILE_MAIN_STILL = 2,<br/>HEVC_PROFILE_MAIN_10_HDR10 = 3,<br/>HEVC_PROFILE_MAIN_10_HDR10_PLUS = 4<br/>} | HEVC档次。<br>(HEVC_PROFILE_MAIN_10_HDR10、HEVC_PROFILE_MAIN_10_HDR10_PLUS在API 14废弃)。|
230| [OH_VVCProfile](#oh_vvcprofile-1) {<br/>VVC_PROFILE_MAIN_10 = 1, <br/>VVC_PROFILE_MAIN_12 = 2, <br/>VVC_PROFILE_MAIN_12_INTRA = 10, <br/>VVC_PROFILE_MULTI_MAIN_10 = 17, <br/>VVC_PROFILE_MAIN_10_444 = 33, <br/>VVC_PROFILE_MAIN_12_444 = 34, <br/>VVC_PROFILE_MAIN_16_444 = 36, <br/>VVC_PROFILE_MAIN_12_444_INTRA = 42, <br/>VVC_PROFILE_MAIN_16_444_INTRA = 44, <br/>VVC_PROFILE_MULTI_MAIN_10_444 = 49, <br/>VVC_PROFILE_MAIN_10_STILL = 65, <br/>VVC_PROFILE_MAIN_12_STILL = 66, <br/>VVC_PROFILE_MAIN_10_444_STILL = 97, <br/>VVC_PROFILE_MAIN_12_444_STILL = 98, <br/>VVC_PROFILE_MAIN_16_444_STILL = 100 <br/>} | VVC档次。 |
231| [OH_H263Profile](#oh_h263profile-1) {<br/>H263_PROFILE_BASELINE = 0,<br/>H263_PROFILE_VERSION_1_BACKWARD_COMPATIBILITY = 2<br/>} | H.263档次。 |
232| [OH_MPEG2Profile](#oh_mpeg2profile-1) {<br/>MPEG2_PROFILE_SIMPLE = 0,<br/>MPEG2_PROFILE_MAIN = 1,<br/>MPEG2_PROFILE_SNR = 2,<br/>MPEG2_PROFILE_SPATIAL = 3,<br/>MPEG2_PROFILE_HIGH = 4,<br/>MPEG2_PROFILE_422 = 5<br/>} | MPEG2档次。 |
233| [OH_MPEG4Profile](#oh_mpeg4profile-1) {<br/>MPEG4_PROFILE_SIMPLE = 0,<br/>MPEG4_PROFILE_SIMPLE_SCALABLE = 1,<br/>MPEG4_PROFILE_CORE = 2,<br/>MPEG4_PROFILE_MAIN = 3,<br/>MPEG4_PROFILE_NBIT = 4,<br/>MPEG4_PROFILE_HYBRID = 5,<br/>MPEG4_PROFILE_BASIC_ANIMATED_TEXTURE = 6,<br/>MPEG4_PROFILE_SCALABLE_TEXTURE = 7,<br/>MPEG4_PROFILE_SIMPLE_FA = 8,<br/>MPEG4_PROFILE_ADVANCED_REAL_TIME_SIMPLE = 9,<br/>MPEG4_PROFILE_CORE_SCALABLE = 10,<br/>MPEG4_PROFILE_ADVANCED_CODING_EFFICIENCY = 11,<br/>MPEG4_PROFILE_ADVANCED_CORE = 12,<br/>MPEG4_PROFILE_ADVANCED_SCALABLE_TEXTURE = 13,<br/>MPEG4_PROFILE_ADVANCED_SIMPLE = 17<br/>} | MPEG4档次。 |
234| [OH_AVOutputFormat](#oh_avoutputformat-1) {<br/>AV_OUTPUT_FORMAT_DEFAULT = 0,<br/>AV_OUTPUT_FORMAT_MPEG_4 = 2,<br/>AV_OUTPUT_FORMAT_M4A = 6,<br/>AV_OUTPUT_FORMAT_AMR = 8,<br/>AV_OUTPUT_FORMAT_MP3 = 9,<br/>AV_OUTPUT_FORMAT_WAV = 10, <br/>AV_OUTPUT_FORMAT_AAC = 11<br/>} | 封装器支持的输出文件格式。 |
235| [OH_AVSeekMode](#oh_avseekmode-1) {<br/>SEEK_MODE_NEXT_SYNC = 0,<br/>SEEK_MODE_PREVIOUS_SYNC,<br/>SEEK_MODE_CLOSEST_SYNC<br/>} | 跳转模式。 |
236| [OH_ScalingMode](#oh_scalingmode-1) {<br/>SCALING_MODE_SCALE_TO_WINDOW = 1,<br/>SCALING_MODE_SCALE_CROP = 2<br/>} | 缩放模式。(API14废弃) |
237| [OH_BitsPerSample](#oh_bitspersample-1) {<br/>SAMPLE_U8 = 0, SAMPLE_S16LE = 1,<br/>SAMPLE_S24LE = 2, SAMPLE_S32LE = 3,<br/>SAMPLE_F32LE = 4, SAMPLE_U8P = 5,<br/>SAMPLE_S16P = 6, SAMPLE_S24P = 7,<br/>SAMPLE_S32P = 8, SAMPLE_F32P = 9,<br/>INVALID_WIDTH = -1<br/>} | 每个编码样本的音频位数。 |
238| [OH_ColorPrimary](#oh_colorprimary-1) {<br/>COLOR_PRIMARY_BT709 = 1,<br/>COLOR_PRIMARY_UNSPECIFIED = 2,<br/>COLOR_PRIMARY_BT470_M = 4,<br/>COLOR_PRIMARY_BT601_625 = 5,<br/>COLOR_PRIMARY_BT601_525 = 6,<br/>COLOR_PRIMARY_SMPTE_ST240 = 7,<br/>COLOR_PRIMARY_GENERIC_FILM = 8,<br/>COLOR_PRIMARY_BT2020 = 9,<br/>COLOR_PRIMARY_SMPTE_ST428 = 10,<br/>COLOR_PRIMARY_P3DCI = 11,<br/>COLOR_PRIMARY_P3D65 = 12<br/>} | 色域。 |
239| [OH_TransferCharacteristic](#oh_transfercharacteristic-1) {<br/>TRANSFER_CHARACTERISTIC_BT709 = 1,<br/>TRANSFER_CHARACTERISTIC_UNSPECIFIED = 2,<br/>TRANSFER_CHARACTERISTIC_GAMMA_2_2 = 4,<br/>TRANSFER_CHARACTERISTIC_GAMMA_2_8 = 5,<br/>TRANSFER_CHARACTERISTIC_BT601 = 6,<br/>TRANSFER_CHARACTERISTIC_SMPTE_ST240 = 7,<br/>TRANSFER_CHARACTERISTIC_LINEAR = 8,<br/>TRANSFER_CHARACTERISTIC_LOG = 9,<br/>TRANSFER_CHARACTERISTIC_LOG_SQRT = 10,<br/>TRANSFER_CHARACTERISTIC_IEC_61966_2_4 = 11,<br/>TRANSFER_CHARACTERISTIC_BT1361 = 12,<br/>TRANSFER_CHARACTERISTIC_IEC_61966_2_1 = 13,<br/>TRANSFER_CHARACTERISTIC_BT2020_10BIT = 14,<br/>TRANSFER_CHARACTERISTIC_BT2020_12BIT = 15,<br/>TRANSFER_CHARACTERISTIC_PQ = 16,<br/>TRANSFER_CHARACTERISTIC_SMPTE_ST428 = 17,<br/>TRANSFER_CHARACTERISTIC_HLG = 18<br/>} | 转移特性。 |
240| [OH_MatrixCoefficient](#oh_matrixcoefficient-1) {<br/>MATRIX_COEFFICIENT_IDENTITY = 0,<br/>MATRIX_COEFFICIENT_BT709 = 1,<br/>MATRIX_COEFFICIENT_UNSPECIFIED = 2,<br/>MATRIX_COEFFICIENT_FCC = 4,<br/>MATRIX_COEFFICIENT_BT601_625 = 5,<br/>MATRIX_COEFFICIENT_BT601_525 = 6, MATRIX_COEFFICIENT_SMPTE_ST240 = 7,<br/>MATRIX_COEFFICIENT_YCGCO = 8,<br/>MATRIX_COEFFICIENT_BT2020_NCL = 9,<br/>MATRIX_COEFFICIENT_BT2020_CL = 10,<br/>MATRIX_COEFFICIENT_SMPTE_ST2085 = 11,<br/>MATRIX_COEFFICIENT_CHROMATICITY_NCL = 12,<br/>MATRIX_COEFFICIENT_CHROMATICITY_CL = 13,<br/>MATRIX_COEFFICIENT_ICTCP = 14<br/>} | 矩阵系数。 |
241| [OH_AVCLevel](#oh_avclevel-1) {<br/>AVC_LEVEL_1 = 0, <br/>AVC_LEVEL_1b = 1, <br/>AVC_LEVEL_11 = 2, <br/>AVC_LEVEL_12 = 3,<br/>AVC_LEVEL_13 = 4, <br/>AVC_LEVEL_2 = 5, <br/>AVC_LEVEL_21 = 6, <br/>AVC_LEVEL_22 = 7,<br/>AVC_LEVEL_3 = 8, <br/>AVC_LEVEL_31 = 9, <br/>AVC_LEVEL_32 = 10, <br/>AVC_LEVEL_4 = 11,<br/>AVC_LEVEL_41 = 12, <br/>AVC_LEVEL_42 = 13, <br/>AVC_LEVEL_5 = 14, <br/>AVC_LEVEL_51 = 15, <br/>AVC_LEVEL_52 = 16, <br/>AVC_LEVEL_6 = 17, <br/>AVC_LEVEL_61 = 18, <br/>AVC_LEVEL_62 = 19<br/>} | AVC级别。  |
242| [OH_HEVCLevel](#oh_hevclevel-1) {<br/>HEVC_LEVEL_1 = 0, <br/>HEVC_LEVEL_2 = 1, <br/>HEVC_LEVEL_21 = 2, <br/>HEVC_LEVEL_3 = 3,<br/>HEVC_LEVEL_31 = 4, <br/>HEVC_LEVEL_4 = 5, <br/>HEVC_LEVEL_41 = 6, <br/>HEVC_LEVEL_5 = 7,<br/>HEVC_LEVEL_51 = 8, <br/>HEVC_LEVEL_52 = 9, <br/>HEVC_LEVEL_6 = 10, <br/>HEVC_LEVEL_61 = 11,<br/>HEVC_LEVEL_62 = 12<br/>} | HEVC级别。  |
243| [OH_VVCLevel](#oh_vvclevel-1) {<br/>VVC_LEVEL_1 = 16, <br/>VVC_LEVEL_2 = 32, <br/>VVC_LEVEL_21 = 35, <br/>VVC_LEVEL_3 = 48, <br/>VVC_LEVEL_31 = 51, <br/>VVC_LEVEL_4 = 64, <br/>VVC_LEVEL_41 = 67, <br/>VVC_LEVEL_5 = 80, <br/>VVC_LEVEL_51 = 83, <br/>VVC_LEVEL_52 = 86, <br/>VVC_LEVEL_6 = 96, <br/>VVC_LEVEL_61 = 99, <br/>VVC_LEVEL_62 = 102, <br/>VVC_LEVEL_63 = 105, <br/>VVC_LEVEL_155 = 255<br/>} | VVC级别。  |
244| [OH_H263Level ](#oh_h263level-1) {<br/>H263_LEVEL_10 = 0, <br/>H263_LEVEL_20 = 1, <br/>H263_LEVEL_30 = 2, <br/>H263_LEVEL_40 = 3, <br/>H263_LEVEL_45 = 4, <br/>H263_LEVEL_50 = 5, <br/>H263_LEVEL_60 = 6, <br/>H263_LEVEL_70 = 7<br/>} | H.263级别。  |
245| [OH_MPEG2Level](#oh_mpeg2level-1) {<br/>MPEG2_LEVEL_LL = 0,<br/>MPEG2_LEVEL_ML = 1,<br/>MPEG2_LEVEL_H14 = 2,<br/>MPEG2_LEVEL_HL = 3<br/> } | MPEG2级别。 |
246| [OH_MPEG4Level](#oh_mpeg4level-1) {<br/>MPEG4_LEVEL_0 = 0,<br/>MPEG4_LEVEL_0B = 1,<br/>MPEG4_LEVEL_1 = 2,<br/>MPEG4_LEVEL_2 = 3,<br/>MPEG4_LEVEL_3 = 4,<br/>MPEG4_LEVEL_3B = 5,<br/>MPEG4_LEVEL_4 = 6,<br/>MPEG4_LEVEL_4A = 7,<br/>MPEG4_LEVEL_5 = 8,<br/>MPEG4_LEVEL_6 = 9<br/>} | MPEG4级别。 |
247| [OH_TemporalGopReferenceMode](#oh_temporalgopreferencemode-1) { <br/>ADJACENT_REFERENCE = 0, <br/>JUMP_REFERENCE = 1, <br/>UNIFORMLY_SCALED_REFERENCE = 2 <br/>} | 时域图片组参考模式。  |
248| [OH_BitrateMode](#oh_bitratemode-1) { <br/>BITRATE_MODE_CBR = 0, <br/>BITRATE_MODE_VBR = 1, <br/>BITRATE_MODE_CQ = 2 } | 编码器的比特率模式。  |
249
250### 变量
251
252| 名称 | 描述 |
253| -------- | -------- |
254| const char \* [OH_AVCODEC_MIMETYPE_AUDIO_AAC](#oh_avcodec_mimetype_audio_aac) | AAC音频编解码器的MIME类型。 |
255| const char \* [OH_AVCODEC_MIMETYPE_AUDIO_FLAC](#oh_avcodec_mimetype_audio_flac) | FLAC音频编解码器的MIME类型。 |
256| const char \* [OH_AVCODEC_MIMETYPE_AUDIO_OPUS](#oh_avcodec_mimetype_audio_opus) | OPUS音频编解码器的MIME类型。<!--Del-->(此规格暂未开放)<!--DelEnd-->  |
257| const char \* [OH_AVCODEC_MIMETYPE_AUDIO_G711MU](#oh_avcodec_mimetype_audio_g711mu) | G711MU音频编解码器的MIME类型。 |
258| const char \* [OH_AVCODEC_MIMETYPE_AUDIO_VORBIS](#oh_avcodec_mimetype_audio_vorbis) | VORBIS音频解码器的MIME类型。 |
259| const char \* [OH_AVCODEC_MIMETYPE_AUDIO_MPEG](#oh_avcodec_mimetype_audio_mpeg) | MP3音频解码器的MIME类型。 |
260| const char \* [OH_AVCODEC_MIMETYPE_AUDIO_VIVID](#oh_avcodec_mimetype_audio_vivid) | Audio Vivid音频解码器的MIME类型。<!--Del-->(此规格暂未开放)<!--DelEnd-->  |
261| const char \* [OH_AVCODEC_MIMETYPE_AUDIO_AMR_NB](#oh_avcodec_mimetype_audio_amr_nb) | AMR_NB音频解码器的MIME类型。 |
262| const char \* [OH_AVCODEC_MIMETYPE_AUDIO_AMR_WB](#oh_avcodec_mimetype_audio_amr_wb) | AMR_WB音频解码器的MIME类型。 |
263| const char \* [OH_AVCODEC_MIMETYPE_AUDIO_APE](#oh_avcodec_mimetype_audio_ape) |APE音频解码器的MIME类型。                         |
264| const char \* [OH_AVCODEC_MIMETYPE_VIDEO_VVC](#oh_avcodec_mimetype_video_vvc) | VVC(H.266)视频编解码器的MIME类型。 |
265| const char \* [OH_AVCODEC_MIMETYPE_VIDEO_HEVC](#oh_avcodec_mimetype_video_hevc) | HEVC(H.265)视频编解码器的MIME类型。 |
266| const char \* [OH_AVCODEC_MIMETYPE_VIDEO_AVC](#oh_avcodec_mimetype_video_avc) | AVC(H.264)视频编解码器的MIME类型。 |
267| const char \* [OH_AVCODEC_MIMETYPE_VIDEO_H263](#oh_avcodec_mimetype_video_h263) | H.263视频编解码器的MIME类型。                     |
268| const char \* [OH_AVCODEC_MIMETYPE_VIDEO_MPEG4](#oh_avcodec_mimetype_video_mpeg4) | MPEG4视频编码的MIME类型,仅用于封装MPEG4视频码流使用。(API11废弃) |
269| const char \* [OH_AVCODEC_MIMETYPE_VIDEO_MPEG2](#oh_avcodec_mimetype_video_mpeg2) | 视频MPEG2编解码器的MIME类型。                        |
270| const char \* [OH_AVCODEC_MIMETYPE_VIDEO_MPEG4_PART2](#oh_avcodec_mimetype_video_mpeg4_part2) | 视频MPEG4 Part2编解码器的MIME类型。         |
271| const char \* [OH_AVCODEC_MIMETYPE_IMAGE_JPG](#oh_avcodec_mimetype_image_jpg) | JPG图片编码的MIME类型,仅用于封装JPG封面时使用。 |
272| const char \* [OH_AVCODEC_MIMETYPE_IMAGE_PNG](#oh_avcodec_mimetype_image_png) | PNG图片编码的MIME类型,仅用于封装PNG封面时使用。 |
273| const char \* [OH_AVCODEC_MIMETYPE_IMAGE_BMP](#oh_avcodec_mimetype_image_bmp) | BMP图片编码的MIME类型,仅用于封装BMP封面时使用。 |
274| const char \* [OH_AVCODEC_MIMETYPE_SUBTITLE_WEBVTT](#oh_avcodec_mimetype_subtitle_webvtt) |WEBVTT字幕解封装器的MIME类型。                 |
275| const char \* [OH_AVCODEC_MIMETYPE_SUBTITLE_SRT](#oh_avcodec_mimetype_subtitle_srt) |SRT字幕解封装器的MIME类型。                         |
276| const char \* [OH_FEATURE_PROPERTY_KEY_VIDEO_ENCODER_MAX_LTR_FRAME_COUNT](#oh_feature_property_key_video_encoder_max_ltr_frame_count) | 在视频编码中获取长期参考帧的最大个数的键,值类型为int32_t。  |
277| const char \* [OH_MD_KEY_CODEC_CONFIG](#oh_md_key_codec_config) | 编解码器特定数据的键,视频中表示传递SPS/PPS,音频中表示传递extraData,值类型为uint8_t\*。 <!--Del-->(视频编解码此功能暂未支持)<!--DelEnd--> |
278| const char \* [OH_MD_MAX_INPUT_BUFFER_COUNT](#oh_md_max_input_buffer_count) | 最大输入缓冲区个数的键,值类型为int32_t。 |
279| const char \* [OH_MD_MAX_OUTPUT_BUFFER_COUNT](#oh_md_max_output_buffer_count) | 最大输出缓冲区个数的键,值类型int32_t。 |
280| const char \* [OH_MD_KEY_BITRATE](#oh_md_key_bitrate) | 比特率的键,值类型为int64_t。 |
281| const char \* [OH_MD_KEY_PROFILE](#oh_md_key_profile) | 编码档次,值类型为int32_t,请参见[OH_AVCProfile](#oh_avcprofile),[OH_HEVCProfile](#oh_hevcprofile),[OH_AACProfile](#oh_aacprofile)。 |
282| const char \* [OH_MD_KEY_MAX_INPUT_SIZE](#oh_md_key_max_input_size) | 设置解码输入码流大小最大值的键,值类型为int32_t。 |
283| const char \* [OH_ED_KEY_TIME_STAMP](#oh_ed_key_time_stamp) | 表示surfacebuffer时间戳的键,值类型为int64_t。(API14废弃)|
284| const char \* [OH_ED_KEY_EOS](#oh_ed_key_eos) | 表示surfacebuffer流结束符的键,值类型为int32_t。(API14废弃)|
285| const char \* [OH_MD_KEY_WIDTH](#oh_md_key_width) | 视频宽度的键,值类型为int32_t。 |
286| const char \* [OH_MD_KEY_HEIGHT](#oh_md_key_height) | 视频高度键,值类型为int32_t。 |
287| const char \* [OH_MD_KEY_PIXEL_FORMAT](#oh_md_key_pixel_format) | 视频像素格式的键,值类型为int32_t,请参见[OH_AVPixelFormat](_core.md#oh_avpixelformat)。 |
288| const char \* [OH_MD_KEY_FRAME_RATE](#oh_md_key_frame_rate) | 视频帧率的键,值类型为double。 |
289| const char \* [OH_MD_KEY_ROTATION](#oh_md_key_rotation) | surface旋转角度的键。值类型为int32_t:应为{0, 90, 180, 270},默认值为0。该键只在视频解码Surface模式下使用。 |
290| const char \* [OH_MD_KEY_RANGE_FLAG](#oh_md_key_range_flag) | 视频YUV值域标志的键,值类型为int32_t,1表示full range,0表示limited range。 |
291| const char \* [OH_MD_KEY_COLOR_PRIMARIES](#oh_md_key_color_primaries) | 视频色域的键,值类型为int32_t,请参见[OH_ColorPrimary](#oh_colorprimary),遵循H.273标准Table2。 |
292| const char \* [OH_MD_KEY_TRANSFER_CHARACTERISTICS](#oh_md_key_transfer_characteristics) | 视频传递函数的键,值类型为int32_t,请参见[OH_TransferCharacteristic](#oh_transfercharacteristic),遵循H.273标准Table3。 |
293| const char \* [OH_MD_KEY_MATRIX_COEFFICIENTS](#oh_md_key_matrix_coefficients) | 视频矩阵系数的键,值类型为int32_t,请参见[OH_MatrixCoefficient](#oh_matrixcoefficient),遵循H.273标准Table4。 |
294| const char \* [OH_MD_KEY_SCALING_MODE](#oh_md_key_scaling_mode) | 视频缩放模式,值类型为int32_t,请参见[OH_ScalingMode](#oh_scalingmode)。该键是可选的且只用于视频解码Surface模式。建议直接调用[OH_NativeWindow_NativeWindowSetScalingModeV2](../apis-arkgraphics2d/_native_window.md#oh_nativewindow_nativewindowsetscalingmodev2)接口进行设置。(API14废弃)|
295| const char \* [OH_MD_KEY_VIDEO_CROP_TOP](#oh_md_key_video_crop_top) | 描述裁剪矩形顶部坐标(y)值的键,值类型为int32_t。  |
296| const char \* [OH_MD_KEY_VIDEO_CROP_BOTTOM](#oh_md_key_video_crop_bottom) | 描述裁剪矩形底部坐标(y)值的键,值类型为int32_t。  |
297| const char \* [OH_MD_KEY_VIDEO_CROP_LEFT](#oh_md_key_video_crop_left) | 描述裁剪矩形左坐标(x)值的键,值类型为int32_t。  |
298| const char \* [OH_MD_KEY_VIDEO_CROP_RIGHT](#oh_md_key_video_crop_right) | 描述裁剪矩形右坐标(x)值的键,值类型为int32_t。 |
299| const char \* [OH_MD_KEY_VIDEO_DECODER_OUTPUT_ENABLE_VRR](#oh_md_key_video_decoder_output_enable_vrr) | 解码器是否打开视频可变帧率功能的键,值类型为int32_t。 |
300| const char \* [OH_MD_KEY_VIDEO_STRIDE](#oh_md_key_video_stride) | 描述视频帧宽跨距的键,值类型为int32_t。  |
301| const char \* [OH_MD_KEY_VIDEO_SLICE_HEIGHT](#oh_md_key_video_slice_height) | 描述视频帧高跨距的键,值类型为int32_t。  |
302| const char \* [OH_MD_KEY_VIDEO_PIC_WIDTH](#oh_md_key_video_pic_width) | 描述视频帧真实宽度的键,值类型为int32_t。  |
303| const char \* [OH_MD_KEY_VIDEO_PIC_HEIGHT](#oh_md_key_video_pic_height) | 描述视频帧真实高度的键,值类型为int32_t。  |
304| const char \* [OH_MD_KEY_VIDEO_ENABLE_LOW_LATENCY](#oh_md_key_video_enable_low_latency) | 使能低时延视频编解码的键,值类型为int32_t,1表示使能,0表示其它情况。如果使能,则视频编码器或视频解码器持有的输入和输出数据不会超过编解码器标准所要求的数量。   |
305| const char \* [OH_MD_KEY_VIDEO_ENCODE_BITRATE_MODE](#oh_md_key_video_encode_bitrate_mode) | 视频编码码率模式,值类型为int32_t,请参见[OH_BitrateMode](#oh_bitratemode-1)。 |
306| const char \* [OH_MD_KEY_QUALITY](#oh_md_key_quality) | 所需编码质量的键。值类型为int32_t,此键仅适用于配置在恒定质量模式下的编码器。 |
307| const char \* [OH_MD_KEY_REQUEST_I_FRAME](#oh_md_key_request_i_frame) | 请求立即编码I帧的键。值类型为int32_t。 |
308| const char \* [OH_MD_KEY_I_FRAME_INTERVAL](#oh_md_key_i_frame_interval) | 关键帧间隔的键,值类型为int32_t,单位为毫秒。该键是可选的且只用于视频编码。 |
309| const char \* [OH_MD_KEY_VIDEO_ENCODER_ENABLE_TEMPORAL_SCALABILITY](#oh_md_key_video_encoder_enable_temporal_scalability) | 使能分层编码的键,值类型为int32_t,1表示使能,0表示其它情况。  |
310| const char \* [OH_MD_KEY_VIDEO_ENCODER_TEMPORAL_GOP_SIZE](#oh_md_key_video_encoder_temporal_gop_size) | 描述图片组基本层图片的间隔大小的键,值类型为int32_t,只在使能分层编码时生效。  |
311| const char \* [OH_MD_KEY_VIDEO_ENCODER_TEMPORAL_GOP_REFERENCE_MODE](#oh_md_key_video_encoder_temporal_gop_reference_mode) | 描述图片组内参考模式的键,值类型为int32_t,请参见[OH_TemporalGopReferenceMode](#oh_temporalgopreferencemode),只在使能分层编码时生效。  |
312| const char \* [OH_MD_KEY_VIDEO_ENCODER_LTR_FRAME_COUNT](#oh_md_key_video_encoder_ltr_frame_count) | 描述长期参考帧个数的键,值类型为int32_t,必须在支持的值范围内使用。该键是可选的且只用于视频编码。  |
313| const char \* [OH_MD_KEY_VIDEO_ENCODER_PER_FRAME_MARK_LTR](#oh_md_key_video_encoder_per_frame_mark_ltr) | 标记当前帧为长期参考帧的键,值类型为int32_t,1表示被标记,0表示其它情况。该键是可选的且只用于视频编码。  |
314| const char \* [OH_MD_KEY_VIDEO_ENCODER_PER_FRAME_USE_LTR](#oh_md_key_video_encoder_per_frame_use_ltr) | 描述当前帧参考的长期参考帧帧的POC号的键,值类型为int32_t。该键是可选的且只用于视频编码。  |
315| const char \* [OH_MD_KEY_VIDEO_PER_FRAME_IS_LTR](#oh_md_key_video_per_frame_is_ltr) | 当前OH_AVBuffer中输出的码流对应的帧是否为长期参考帧的键,值类型为int32_t,1表示是LTR,0表示其它情况。该键是可选的且只用于视频编码。  |
316| const char \* [OH_MD_KEY_VIDEO_PER_FRAME_POC](#oh_md_key_video_per_frame_poc) | 描述帧的POC号的键,值类型为int32_t。该键是可选的且只用于视频编码。  |
317| const char \* [OH_MD_KEY_VIDEO_ENCODER_QP_MAX](#oh_md_key_video_encoder_qp_max) | 描述视频编码器允许的最大量化参数的键,值类型为int32_t。  |
318| const char \* [OH_MD_KEY_VIDEO_ENCODER_QP_MIN](#oh_md_key_video_encoder_qp_min) | 描述视频编码器允许的最小量化参数的键,值类型为int32_t。  |
319| const char \* [OH_MD_KEY_VIDEO_ENCODER_QP_AVERAGE](#oh_md_key_video_encoder_qp_average) | 描述视频帧平均量化参数的键,值类型为int32_t。 |
320| const char \* [OH_MD_KEY_VIDEO_ENCODER_MSE](#oh_md_key_video_encoder_mse)     |描述视频帧平方误差的键,值类型为double。  |
321| const char \* [OH_MD_KEY_VIDEO_ENCODER_REPEAT_PREVIOUS_FRAME_AFTER](#oh_md_key_video_encoder_repeat_previous_frame_after)    | 如果在上一帧提交给编码器之后没有新的帧可用,则会以毫秒为单位重复提交最后一帧,值类型为int32_t。 |
322| const char \* [OH_MD_KEY_VIDEO_ENCODER_REPEAT_PREVIOUS_MAX_COUNT](#oh_md_key_video_encoder_repeat_previous_max_count)    | 描述编码器在没有新的帧可用的情况下,可以对之前的帧进行重复编码的最大次数,值类型为int32_t。|
323| const char \* [OH_MD_KEY_VIDEO_DECODER_OUTPUT_COLOR_SPACE](#oh_md_key_video_decoder_output_color_space)   | 设置视频解码器输出色彩空间的键,值类型为int32_t。 支持的值为OH_COLORSPACE_BT709_LIMIT。|
324| const char \* [OH_MD_KEY_AUDIO_SAMPLE_FORMAT](#oh_md_key_audio_sample_format) | 音频原始格式的键,值类型为int32_t。请参见[OH_BitsPerSample](#oh_bitspersample-1)。 |
325| const char \* [OH_MD_KEY_AUD_CHANNEL_COUNT](#oh_md_key_aud_channel_count) | 音频通道计数键,值类型为int32_t。 |
326| const char \* [OH_MD_KEY_AUD_SAMPLE_RATE](#oh_md_key_aud_sample_rate) | 音频采样率键,值类型为int32_t。 |
327| const char \* [OH_MD_KEY_AUDIO_COMPRESSION_LEVEL](#oh_md_key_audio_compression_level) | 音频编解码压缩水平的键,只在音频编码使用,值类型为int32_t。 |
328| const char \* [OH_MD_KEY_CHANNEL_LAYOUT](#oh_md_key_channel_layout) | 所需编码通道布局的键。值类型为int64_t,此键仅适用于编码器。 |
329| const char \* [OH_MD_KEY_BITS_PER_CODED_SAMPLE](#oh_md_key_bits_per_coded_sample) | 每个编码样本位数的键,值类型为int32_t,支持flac编码器,请参见[OH_BitsPerSample](#oh_bitspersample-1)。 |
330| const char \* [OH_MD_KEY_SBR](#oh_md_key_sbr) | aac sbr模式的键,值类型为int32_t,aac编码器支持。 |
331| const char \* [OH_MD_KEY_COMPLIANCE_LEVEL](#oh_md_key_compliance_level) | flac兼容性等级的键,值类型为int32_t,仅在音频编码使用。 |
332| const char \* [OH_MD_KEY_AAC_IS_ADTS](#oh_md_key_aac_is_adts) | aac格式的键,aac格式分为ADTS格式和LATM格式。值类型为int32_t,aac解码器支持。 |
333| const char \* [OH_MD_KEY_IDENTIFICATION_HEADER](#oh_md_key_identification_header) | vorbis标识头的键,值类型为uint8_t\*,仅vorbis解码器支持。 |
334| const char \* [OH_MD_KEY_SETUP_HEADER](#oh_md_key_setup_header) | vorbis设置头的键,值类型为uint8_t\*,仅vorbis解码器支持。 |
335| const char \* [OH_MD_KEY_AUDIO_OBJECT_NUMBER](#oh_md_key_audio_object_number) | 音频对象数目的键,值类型为int32_t,只有Audio Vivid解码使用。 |
336| const char \* [OH_MD_KEY_AUDIO_VIVID_METADATA](#oh_md_key_audio_vivid_metadata) | Audio Vivid元数据的键,值类型为uint8_t\*,只有Audio Vivid解码使用。 |
337| const char \* [OH_MD_KEY_VIDEO_IS_HDR_VIVID](#oh_md_key_video_is_hdr_vivid) | 媒体文件中的视频轨是否为HDR Vivid的键,支持封装和解封装,值类型为int32_t。 |
338| const char \* [OH_MD_KEY_START_TIME](#oh_md_key_start_time) | 媒体文件中第一帧起始位置开始时间的键,以微秒为单位,值类型为int64_t。     |
339| const char \* [OH_MD_KEY_TRACK_START_TIME](#oh_md_key_track_start_time) | 轨道开始时间的键,以微秒为单位,值类型为int64_t。     |
340| const char \* [OH_MD_KEY_TRACK_TYPE](#oh_md_key_track_type) | 轨道媒体类型的键,值类型为int32_t,请参见[OH_MediaType](#oh_mediatype-1)。 |
341| const char \* [OH_MD_KEY_DURATION](#oh_md_key_duration) | 媒体文件持续时间的键,值类型为int64_t。 |
342| const char \* [OH_MD_KEY_TITLE](#oh_md_key_title) | 媒体文件标题的键,值类型为string。 |
343| const char \* [OH_MD_KEY_ARTIST](#oh_md_key_artist) | 媒体文件艺术家的键,值类型为string。 |
344| const char \* [OH_MD_KEY_ALBUM](#oh_md_key_album) | 专辑的媒体文件的键,值类型为string。 |
345| const char \* [OH_MD_KEY_ALBUM_ARTIST](#oh_md_key_album_artist) | 专辑艺术家的键,值类型为string。 |
346| const char \* [OH_MD_KEY_DATE](#oh_md_key_date) | 媒体文件日期的键,值类型为string,例如2024年。 |
347| const char \* [OH_MD_KEY_COMMENT](#oh_md_key_comment) | 媒体文件注释的键,值类型为string。 |
348| const char \* [OH_MD_KEY_GENRE](#oh_md_key_genre) | 媒体文件流派的键,值类型为string。 |
349| const char \* [OH_MD_KEY_COPYRIGHT](#oh_md_key_copyright) | 媒体文件版权的键,值类型为string。 |
350| const char \* [OH_MD_KEY_LANGUAGE](#oh_md_key_language) | 媒体文件语言的键,值类型为string。 |
351| const char \* [OH_MD_KEY_DESCRIPTION](#oh_md_key_description) | 媒体文件描述的键,值类型为string。 |
352| const char \* [OH_MD_KEY_LYRICS](#oh_md_key_lyrics) | 媒体文件歌词的键,值类型为string。 |
353| const char \* [OH_MD_KEY_TRACK_COUNT](#oh_md_key_track_count) | 媒体文件轨道数量的键,值类型为int32_t。 |
354| const char \* [OH_MD_KEY_BUFFER_DURATION](#oh_md_key_buffer_duration) | AVBuffer中携带的音视频或字幕的sample对应的持续时间的键,以微秒为单位,值类型为int64_t。       |
355| const char \* [OH_MD_KEY_DECODING_TIMESTAMP](#oh_md_key_decoding_timestamp) | AVBuffer中携带的音视频或字幕的sample对应的解码时间戳的键,以微秒为单位,值类型为int64_t。  |
356| const char \* [OH_MD_KEY_CODEC_MIME](#oh_md_key_codec_mime) | 编解码器[MIME](#媒体编解码格式)类型的键,值类型为string。 |
357| const char \* [OH_MD_KEY_VIDEO_SAR](#oh_md_key_video_sar) | 样本长宽比的键,值类型为double。 |
358| const char \* [OH_MD_KEY_CREATION_TIME](#oh_md_key_creation_time) | 媒体文件创建时间的元数据,值类型为string。 |
359
360
361## 类型定义说明
362
363
364### OH_AACProfile
365
366```
367typedef enum OH_AACProfile OH_AACProfile
368```
369**描述**
370AAC档次。
371
372**系统能力:** SystemCapability.Multimedia.Media.CodecBase
373
374**起始版本:** 9
375
376
377### OH_AVCLevel
378
379```
380typedef enum OH_AVCLevel OH_AVCLevel
381```
382**描述**
383AVC级别。
384
385**系统能力:** SystemCapability.Multimedia.Media.CodecBase
386
387**起始版本:** 12
388
389
390### OH_AVCodec
391
392```
393typedef struct OH_AVCodec OH_AVCodec
394```
395**描述**
396为音视频编解码接口定义native层对象。
397
398**起始版本:** 9
399
400
401### OH_AVCodecAsyncCallback
402
403```
404typedef struct OH_AVCodecAsyncCallback OH_AVCodecAsyncCallback
405```
406**描述**
407OH_AVCodec中所有异步回调函数指针的集合。将该结构体的实例注册到OH_AVCodec实例中,并处理回调上报的信息,以保证OH_AVCodec的正常运行。
408
409**系统能力:** SystemCapability.Multimedia.Media.CodecBase
410
411**起始版本:** 9
412
413**废弃版本:** 11
414
415**替代接口:**[OH_AVCodecCallback](#oh_avcodeccallback)
416
417**参数:**
418
419| 名称 | 描述 |
420| -------- | -------- |
421| onError | 监控编解码器操作错误,请参见[OH_AVCodecOnError](#oh_avcodeconerror)。 |
422| onStreamChanged | 监控编解码器流变化,请参见[OH_AVCodecOnStreamChanged](#oh_avcodeconstreamchanged)。 |
423| onNeedInputData | 监控编解码器需要输入数据,请参见[OH_AVCodecOnNeedInputData](#oh_avcodeconneedinputdata)。 |
424| onNeedOutputData | 监控编解码器已生成输出数据,请参见[OH_AVCodecOnNewOutputData](#oh_avcodeconnewoutputdata)。 |
425
426
427### OH_AVCodecCallback
428
429```
430typedef struct OH_AVCodecCallback OH_AVCodecCallback
431```
432**描述**
433OH_AVCodec中所有异步回调函数指针的集合。将该结构体的实例注册到OH_AVCodec实例中,并处理回调上报的信息,以保证OH_AVCodec的正常运行。
434
435**系统能力:** SystemCapability.Multimedia.Media.CodecBase
436
437**起始版本:** 11
438
439**参数:**
440
441| 名称 | 描述 |
442| -------- | -------- |
443| onError | 监控编解码器操作错误,请参见[OH_AVCodecOnError](#oh_avcodeconerror)。 |
444| onStreamChanged | 监控编解码器流变化,请参见[OH_AVCodecOnStreamChanged](#oh_avcodeconstreamchanged)。 |
445| onNeedInputBuffer | 监控编解码器需要输入数据,请参见[OH_AVCodecOnNeedInputBuffer](#oh_avcodeconneedinputbuffer)。 |
446| onNewOutputBuffer | 监控编解码器已生成输出数据,请参见[OH_AVCodecOnNewOutputBuffer](#oh_avcodeconnewoutputbuffer)。 |
447
448
449### OH_AVCodecOnError
450
451```
452typedef void(* OH_AVCodecOnError) (OH_AVCodec *codec, int32_t errorCode, void *userData)
453```
454**描述**
455当OH_AVCodec实例运行出错时,回调将上报具体的错误信息的函数指针。
456
457| 使用场景| 错误码 |
458| -------- | -------- |
459| 音频编解码 | AV_ERR_DRM_DECRYPT_FAILED:DRM解密失败。  |
460| 视频编解码 | AV_ERROR_NO_MEMORY:系统资源不足。<br>AV_ERROR_UNKNOWN:未知错误,请通过具体日志分析。<br>AV_ERR_SERVICE_DIED:服务状态已消亡。  |
461| 视频解码 | AV_ERR_VIDEO_UNSUPPORTED_COLOR_SPACE_CONVERSION:当前输入不支持色彩空间转换功能。  |
462<!--RP1--><!--RP1End-->
463
464**系统能力:** SystemCapability.Multimedia.Media.CodecBase
465
466**起始版本:** 9
467
468**参数:**
469
470| 名称 | 描述 |
471| -------- | -------- |
472| codec | OH_AVCodec实例。  |
473| errorCode | 特定错误代码。在不同场景下返回的错误码不同,详情可见上述描述中的表格。  |
474| userData | 用户执行回调所依赖的数据。  |
475
476
477### OH_AVCodecOnNeedInputBuffer
478
479```
480typedef void(* OH_AVCodecOnNeedInputBuffer) (OH_AVCodec *codec, uint32_t index, OH_AVBuffer *buffer, void *userData)
481```
482**描述**
483当OH_AVCodec在运行过程中需要新的输入数据时,将调用此函数指针,并携带可用的缓冲区来填充新的输入数据。
484
485**系统能力:** SystemCapability.Multimedia.Media.CodecBase
486
487**起始版本:** 11
488
489**参数:**
490
491| 名称 | 描述 |
492| -------- | -------- |
493| codec | OH_AVCodec实例。  |
494| index | 与新可用的输入缓冲区相对应的索引。  |
495| buffer | 新的可用输入缓冲区。  |
496| userData | 用户执行回调所依赖的数据。  |
497
498
499### OH_AVCodecOnNeedInputData
500
501```
502typedef void(* OH_AVCodecOnNeedInputData) (OH_AVCodec *codec, uint32_t index, OH_AVMemory *data, void *userData)
503```
504**描述**
505当OH_AVCodec在运行过程中需要新的输入数据时,将调用此函数指针,并携带可用的缓冲区来填充新的输入数据。
506
507**系统能力:** SystemCapability.Multimedia.Media.CodecBase
508
509**起始版本:** 9
510
511**废弃版本:** 11
512
513**替代接口:**[OH_AVCodecOnNeedInputBuffer](#oh_avcodeconneedinputbuffer)
514
515**参数:**
516
517| 名称 | 描述 |
518| -------- | -------- |
519| codec | OH_AVCodec实例。  |
520| index | 与新可用的输入缓冲区相对应的索引。  |
521| data | 新的可用输入缓冲区。  |
522| userData | 用户执行回调所依赖的数据。  |
523
524
525### OH_AVCodecOnNewOutputBuffer
526
527```
528typedef void(* OH_AVCodecOnNewOutputBuffer) (OH_AVCodec *codec, uint32_t index, OH_AVBuffer *buffer, void *userData)
529```
530**描述**
531当OH_AVCodec运行过程中生成新的输出数据时,将调用此函数指针,并携带包含新输出数据的缓冲区。
532
533**系统能力:** SystemCapability.Multimedia.Media.CodecBase
534
535**起始版本:** 11
536
537**参数:**
538
539| 名称 | 描述 |
540| -------- | -------- |
541| codec | OH_AVCodec实例。  |
542| index | 与新输出缓冲区对应的索引。  |
543| buffer | 包含新输出数据的缓冲区。  |
544| userData | 用户执行回调所依赖的数据。  |
545
546
547### OH_AVCodecOnNewOutputData
548
549```
550typedef void(* OH_AVCodecOnNewOutputData) (OH_AVCodec *codec, uint32_t index, OH_AVMemory *data, OH_AVCodecBufferAttr *attr, void *userData)
551```
552**描述**
553当OH_AVCodec运行过程中生成新的输出数据时,将调用此函数指针,并携带包含新输出数据的缓冲区。 需要注意的是,OH_AVCodecBufferAttr指针的生命周期仅在调用函数指针时有效,这将禁止调用结束后继续访问。
554
555**系统能力:** SystemCapability.Multimedia.Media.CodecBase
556
557**起始版本:** 9
558
559**废弃版本:** 11
560
561**替代接口:**[OH_AVCodecOnNewOutputBuffer](#oh_avcodeconnewoutputbuffer)
562
563**参数:**
564
565| 名称 | 描述 |
566| -------- | -------- |
567| codec | OH_AVCodec实例。  |
568| index | 与新输出缓冲区对应的索引。  |
569| data | 包含新输出数据的缓冲区。  |
570| attr | 新输出缓冲区的说明,请参见[OH_AVCodecBufferAttr](_o_h___a_v_codec_buffer_attr.md)。  |
571| userData | 用户执行回调所依赖的数据。  |
572
573
574### OH_AVCodecOnStreamChanged
575
576```
577typedef void(* OH_AVCodecOnStreamChanged) (OH_AVCodec *codec, OH_AVFormat *format, void *userData)
578```
579**描述**
580当视频解码输入码流分辨率或者视频编码输出码流的分辨率发生变化时,调用此函数指针报告新的流描述信息。<br>从API 15开始,支持音频解码时,码流采样率、声道数或者音频采样格式发生变化时,将调用此函数指针报告新的流描述信息,支持检测此变化的解码格式有:<!--RP3--><!--RP3End-->AAC,FLAC,MP3,VORBIS。<br>需要注意的是,OH_AVFormat指针的生命周期只有在函数指针被调用时才有效,调用结束后禁止继续访问。
581
582**系统能力:** SystemCapability.Multimedia.Media.CodecBase
583
584**起始版本:** 9
585
586**参数:**
587
588| 名称 | 描述 |
589| -------- | -------- |
590| codec | OH_AVCodec实例。  |
591| format | 新输出流描述信息。  |
592| userData | 用户执行回调所依赖的数据。  |
593
594
595### OH_AVCProfile
596
597```
598typedef enum OH_AVCProfile OH_AVCProfile
599```
600**描述**
601AVC档次。
602
603**系统能力:** SystemCapability.Multimedia.Media.CodecBase
604
605**起始版本:** 9
606
607
608### OH_AVDataSource
609
610```
611typedef struct OH_AVDataSource OH_AVDataSource
612```
613**描述**
614用户自定义数据源。
615
616**系统能力:** SystemCapability.Multimedia.Media.CodecBase
617
618**起始版本:** 12
619
620
621### OH_AVDataSourceReadAt
622
623```
624typedef int32_t(* OH_AVDataSourceReadAt) (OH_AVBuffer *data, int32_t length, int64_t pos)
625```
626**描述**
627函数指针定义,用于提供获取用户自定义媒体数据的能力。
628
629**系统能力:** SystemCapability.Multimedia.Media.CodecBase
630
631**起始版本:** 12
632
633**参数:**
634
635| 名称 | 描述 |
636| -------- | -------- |
637| data | 要填充的缓冲区。  |
638| length | 要读取的数据长度。  |
639| pos | 从偏移量位置读取。  |
640
641**返回:**
642
643读取到缓冲区的数据的实际长度。
644
645
646### OH_AVOutputFormat
647
648```
649typedef enum OH_AVOutputFormat OH_AVOutputFormat
650```
651**描述**
652封装器支持的输出文件格式。
653
654**系统能力:** SystemCapability.Multimedia.Media.CodecBase
655
656**起始版本:** 10
657
658
659### OH_AVSeekMode
660
661```
662typedef enum OH_AVSeekMode OH_AVSeekMode
663```
664**描述**
665跳转模式。
666
667**系统能力:** SystemCapability.Multimedia.Media.CodecBase
668
669**起始版本:** 10
670
671
672### OH_BitsPerSample
673
674```
675typedef enum OH_BitsPerSample OH_BitsPerSample
676```
677**描述**
678每个编码样本的音频位数。
679
680**系统能力:** SystemCapability.Multimedia.Media.CodecBase
681
682**起始版本:** 10
683
684
685### OH_ColorPrimary
686
687```
688typedef enum OH_ColorPrimary OH_ColorPrimary
689```
690**描述**
691色域。
692
693**系统能力:** SystemCapability.Multimedia.Media.CodecBase
694
695**起始版本:** 10
696
697
698### OH_HEVCLevel
699
700```
701typedef enum OH_HEVCLevel OH_HEVCLevel
702```
703**描述**
704HEVC级别。
705
706**系统能力:** SystemCapability.Multimedia.Media.CodecBase
707
708**起始版本:** 12
709
710
711### OH_HEVCProfile
712
713```
714typedef enum OH_HEVCProfile OH_HEVCProfile
715```
716**描述**
717HEVC档次。
718
719**系统能力:** SystemCapability.Multimedia.Media.CodecBase
720
721**起始版本:** 10
722
723
724### OH_MatrixCoefficient
725
726```
727typedef enum OH_MatrixCoefficient OH_MatrixCoefficient
728```
729**描述**
730矩阵系数。
731
732**系统能力:** SystemCapability.Multimedia.Media.CodecBase
733
734**起始版本:** 10
735
736
737### OH_MediaType
738
739```
740typedef enum OH_MediaType OH_MediaType
741```
742**描述**
743媒体类型。
744
745**系统能力:** SystemCapability.Multimedia.Media.CodecBase
746
747**起始版本:** 9
748
749
750### OH_MPEG2Level
751
752```
753typedef enum OH_MPEG2Level OH_MPEG2Level
754```
755
756**描述**
757
758MPEG2级别。
759
760**系统能力:** SystemCapability.Multimedia.Media.CodecBase
761
762**起始版本:** 17
763
764
765### OH_MPEG2Profile
766
767```
768typedef enum OH_MPEG2Profile OH_MPEG2Profile
769```
770
771**描述**
772
773MPEG2档次。
774
775**系统能力:** SystemCapability.Multimedia.Media.CodecBase
776
777**起始版本:** 17
778
779
780### OH_MPEG4Level
781
782```
783typedef enum OH_MPEG4Level OH_MPEG4Level
784```
785
786**描述**
787
788MPEG4级别。
789
790**系统能力:** SystemCapability.Multimedia.Media.CodecBase
791
792**起始版本:** 17
793
794
795### OH_MPEG4Profile
796
797```
798typedef enum OH_MPEG4Profile OH_MPEG4Profile
799```
800
801**描述**
802
803MPEG4档次。
804
805**系统能力:** SystemCapability.Multimedia.Media.CodecBase
806
807**起始版本:** 17
808
809
810### OH_ScalingMode
811
812```
813typedef enum OH_ScalingMode OH_ScalingMode
814```
815**描述**
816缩放模式,只在Surface模式下使用。
817
818**系统能力:** SystemCapability.Multimedia.Media.CodecBase
819
820**起始版本:** 10
821
822**废弃版本:** 14
823
824**替代接口:**[OHScalingModeV2](../apis-arkgraphics2d/_native_window.md#ohscalingmodev2-1)
825
826
827### OH_TemporalGopReferenceMode
828
829```
830typedef enum OH_TemporalGopReferenceMode OH_TemporalGopReferenceMode
831```
832**描述**
833时域图片组参考模式。
834
835**系统能力:** SystemCapability.Multimedia.Media.CodecBase
836
837**起始版本:** 12
838
839### OH_VVCLevel
840
841```
842typedef enum OH_VVCLevel OH_VVCLevel
843```
844**描述**
845VVC级别。
846
847**系统能力:** SystemCapability.Multimedia.Media.CodecBase
848
849**起始版本:** 15
850
851
852### OH_VVCProfile
853
854```
855typedef enum OH_VVCProfile OH_VVCProfile
856```
857**描述**
858VVC档次。
859
860**系统能力:** SystemCapability.Multimedia.Media.CodecBase
861
862**起始版本:** 15
863
864
865### OH_H263Level
866
867```
868typedef enum OH_H263Level OH_H263Level
869```
870**描述**
871H.263级别。
872
873**系统能力:** SystemCapability.Multimedia.Media.CodecBase
874
875**起始版本:** 17
876
877
878### OH_H263Profile
879
880```
881typedef enum OH_H263Profile OH_H263Profile
882```
883**描述**
884H.263档次。
885
886**系统能力:** SystemCapability.Multimedia.Media.CodecBase
887
888**起始版本:** 17
889
890
891### OH_TransferCharacteristic
892
893```
894typedef enum OH_TransferCharacteristic OH_TransferCharacteristic
895```
896**描述**
897转移特性。
898
899**系统能力:** SystemCapability.Multimedia.Media.CodecBase
900
901**起始版本:** 10
902
903
904### OH_BitrateMode
905
906```
907typedef enum OH_BitrateMode OH_BitrateMode
908```
909**描述**
910编码器的比特率模式。从API14开始改变key的位置。
911
912**系统能力:** SystemCapability.Multimedia.Media.CodecBase
913
914**起始版本:** 10
915
916
917### OHNativeWindow
918
919```
920typedef struct NativeWindow OHNativeWindow
921```
922**描述**
923为图形接口定义native层对象。
924
925**起始版本:** 9
926
927
928## 枚举类型说明
929
930
931### AudioChannelLayout
932
933```
934enum AudioChannelLayout : uint64_t
935```
936
937**描述**
938音频声道数类型,将用户申请的解码器输出格式表示为编解码器的声道类型。
939
940**系统能力:** SystemCapability.Multimedia.Media.CodecBase
941
942**起始版本:** 10
943
944**废弃版本:** 11
945
946**替代接口:**[OH_AudioChannelLayout](_core.md#oh_audiochannellayout)
947
948| 枚举值 | 描述 |
949| -------- | -------- |
950| UNKNOWN_CHANNEL_LAYOUT | 未知通道布局 |
951| MONO | 单通道布局 |
952| STEREO | 立体声布局 |
953| CH_2POINT1 | 2.1布局 |
954| CH_2_1 | 2_1布局 |
955| SURROUND | 环绕布局 |
956| CH_3POINT1 | 3.1布局 |
957| CH_4POINT0 | 4.0布局 |
958| CH_4POINT1 | 4.1布局 |
959| CH_2_2 | 2_2布局 |
960| QUAD | 四角形布局 |
961| CH_5POINT0 | 5.0布局 |
962| CH_5POINT1 | 5.1布局 |
963| CH_5POINT0_BACK | 5.0后置布局 |
964| CH_5POINT1_BACK | 5.1后置布局 |
965| CH_6POINT0 | 6.0布局 |
966| CH_6POINT0_FRONT | 6.0前置布局 |
967| HEXAGONAL | 六角形布局 |
968| CH_6POINT1 | 6.1布局 |
969| CH_6POINT1_BACK | 6.1后置布局 |
970| CH_6POINT1_FRONT | 6.1前置布局 |
971| CH_7POINT0 | 7.0布局 |
972| CH_7POINT0_FRONT | 7.0前置布局 |
973| CH_7POINT1 | 7.1布局 |
974| CH_7POINT1_WIDE | 7.1宽布局 |
975| CH_7POINT1_WIDE_BACK | 7.1后置宽布局 |
976| CH_3POINT1POINT2 | 3.1.2布局 |
977| CH_5POINT1POINT2 | 5.1.2布局 |
978| CH_5POINT1POINT4 | 5.1.4布局 |
979| CH_7POINT1POINT2 | 7.1.2布局 |
980| CH_7POINT1POINT4 | 7.1.4布局 |
981| CH_9POINT1POINT4 | 9.1.4布局 |
982| CH_9POINT1POINT6 | 9.1.6布局 |
983| CH_10POINT2 | 10.2布局 |
984| CH_22POINT2 | 22.2布局 |
985| OCTAGONAL | 八边形布局 |
986| HEXADECAGONAL | 十六边形布局 |
987| STEREO_DOWNMIX | 立体声下混布局 |
988| HOA_FIRST | 高阶立体声一阶布局 |
989| HOA_SECOND | 高阶立体声二阶布局 |
990| HOA_THIRD | 高阶立体声三阶布局 |
991
992
993### AudioChannelSet
994
995```
996enum AudioChannelSet : uint64_t
997```
998
999**描述**
1000音频声道数集合, 将每一个声道数映射为int64_t的变量。
1001
1002**系统能力:** SystemCapability.Multimedia.Media.CodecBase
1003
1004**起始版本:** 10
1005
1006**废弃版本:** 11
1007
1008**替代接口:**[OH_AudioChannelSet](_core.md#oh_audiochannelset)
1009
1010| 枚举值 | 描述 |
1011| -------- | -------- |
1012| FRONT_LEFT | 左前声道 |
1013| FRONT_RIGHT | 右前声道 |
1014| FRONT_CENTER | 中前声道 |
1015| LOW_FREQUENCY | 低频声道 |
1016| BACK_LEFT | 左后声道 |
1017| BACK_RIGHT | 右后声道 |
1018| FRONT_LEFT_OF_CENTER | 左前中置声道 |
1019| FRONT_RIGHT_OF_CENTER | 右前中置声道 |
1020| BACK_CENTER | 后方中置声道 |
1021| SIDE_LEFT | 左侧声道 |
1022| SIDE_RIGHT | 右侧声道 |
1023| TOP_CENTER | 上方中置声道 |
1024| TOP_FRONT_LEFT | 上方左前声道 |
1025| TOP_FRONT_CENTER | 上方中前声道 |
1026| TOP_FRONT_RIGHT | 上方右前声道 |
1027| TOP_BACK_LEFT | 上方左后声道 |
1028| TOP_BACK_CENTER | 上方中后声道 |
1029| TOP_BACK_RIGHT | 上方右后声道 |
1030| STEREO_LEFT | 立体声左声道 |
1031| STEREO_RIGHT | 立体声右声道 |
1032| WIDE_LEFT | 宽左声道 |
1033| WIDE_RIGHT | 宽右声道 |
1034| SURROUND_DIRECT_LEFT | 左环绕声道 |
1035| SURROUND_DIRECT_RIGHT | 右环绕声道 |
1036| LOW_FREQUENCY_2 | 低频声道2 |
1037| TOP_SIDE_LEFT | 上方左侧声道 |
1038| TOP_SIDE_RIGHT | 上方右侧声道 |
1039| BOTTOM_FRONT_CENTER | 下方中前声道 |
1040| BOTTOM_FRONT_LEFT | 下方左前声道 |
1041| BOTTOM_FRONT_RIGHT | 下方右前声道 |
1042| AMBISONICS_ACN0 | 零阶立体声声道数 0 |
1043| AMBISONICS_ACN1 | 一阶立体声声道数 1 |
1044| AMBISONICS_ACN2 | 一阶立体声声道数 2 |
1045| AMBISONICS_ACN3 | 一阶立体声声道数 3 |
1046| AMBISONICS_W | 同于零阶立体声声道数 0 |
1047| AMBISONICS_Y | 同于一阶立体声声道数 1 |
1048| AMBISONICS_Z | 同于一阶立体声声道数 2 |
1049| AMBISONICS_X | 同于一阶立体声声道数 3 |
1050| AMBISONICS_ACN4 | 二阶立体声声道数 4 |
1051| AMBISONICS_ACN5 | 二阶立体声声道数 5 |
1052| AMBISONICS_ACN6 | 二阶立体声声道数 6 |
1053| AMBISONICS_ACN7 | 二阶立体声声道数 7 |
1054| AMBISONICS_ACN8 | 二阶立体声声道数 8 |
1055| AMBISONICS_ACN9 | 三阶立体声声道数 9 |
1056| AMBISONICS_ACN10 | 三阶立体声声道数 10 |
1057| AMBISONICS_ACN11 | 三阶立体声声道数 11 |
1058| AMBISONICS_ACN12 | 三阶立体声声道数 12 |
1059| AMBISONICS_ACN13 | 三阶立体声声道数 13 |
1060| AMBISONICS_ACN14 | 三阶立体声声道数 14 |
1061| AMBISONICS_ACN15 | 三阶立体声声道数 15 |
1062
1063
1064### OH_AACProfile
1065
1066```
1067enum OH_AACProfile
1068```
1069**描述**
1070AAC档次。
1071
1072**系统能力:** SystemCapability.Multimedia.Media.CodecBase
1073
1074**起始版本:** 9
1075
1076| 枚举值 | 描述 |
1077| -------- | -------- |
1078| AAC_PROFILE_LC  | AAC编码档次为Low Complexity级别。   |
1079| AAC_PROFILE_HE  | AAC编码档次为High Efficiency级别。<!--Del-->(此规格暂未开放)<!--DelEnd--> <br>**起始版本:** 14 |
1080| AAC_PROFILE_HE_V2 | AAC编码档次为High Efficiency v2级别。<!--Del-->(此规格暂未开放)<!--DelEnd--> <br>**起始版本:** 14 |
1081
1082
1083### OH_AVCLevel
1084
1085```
1086enum OH_AVCLevel
1087```
1088**描述**
1089AVC级别。
1090
1091**系统能力:** SystemCapability.Multimedia.Media.CodecBase
1092
1093**起始版本:** 12
1094
1095| 枚举值 | 描述 |
1096| -------- | -------- |
1097| AVC_LEVEL_1  | 级别1   |
1098| AVC_LEVEL_1b  | 级别1b   |
1099| AVC_LEVEL_11  | 级别1.1   |
1100| AVC_LEVEL_12  | 级别1.2   |
1101| AVC_LEVEL_13  | 级别1.3   |
1102| AVC_LEVEL_2  | 级别2   |
1103| AVC_LEVEL_21  | 级别2.1   |
1104| AVC_LEVEL_22  | 级别2.2   |
1105| AVC_LEVEL_3  | 级别3   |
1106| AVC_LEVEL_31  | 级别3.1   |
1107| AVC_LEVEL_32  | 级别3.2   |
1108| AVC_LEVEL_4  | 级别4   |
1109| AVC_LEVEL_41  | 级别4.1   |
1110| AVC_LEVEL_42  | 级别4.2   |
1111| AVC_LEVEL_5  | 级别5   |
1112| AVC_LEVEL_51  | 级别5.1   |
1113| AVC_LEVEL_52  | 级别5.2   |
1114| AVC_LEVEL_6  | 级别6   |
1115| AVC_LEVEL_61  | 级别6.1   |
1116| AVC_LEVEL_62  | 级别6.2   |
1117
1118
1119### OH_AVCProfile
1120
1121```
1122enum OH_AVCProfile
1123```
1124**描述**
1125AVC档次。
1126
1127**系统能力:** SystemCapability.Multimedia.Media.CodecBase
1128
1129**起始版本:** 9
1130
1131| 枚举值 | 描述 |
1132| -------- | -------- |
1133| AVC_PROFILE_BASELINE  | AVC编码档次为基本档次。   |
1134| AVC_PROFILE_HIGH  | AVC编码档次为高档次。   |
1135| AVC_PROFILE_MAIN  | AVC编码档次为主档次。   |
1136
1137
1138### OH_AVOutputFormat
1139
1140```
1141enum OH_AVOutputFormat
1142```
1143**描述**
1144封装器支持的输出文件格式。
1145
1146**系统能力:** SystemCapability.Multimedia.Media.CodecBase
1147
1148**起始版本:** 10
1149
1150| 枚举值 | 描述 |
1151| -------- | -------- |
1152| AV_OUTPUT_FORMAT_DEFAULT  | 输出文件格式默认值,默认为MP4格式。   |
1153| AV_OUTPUT_FORMAT_MPEG_4  | 输出文件格式为MP4格式。   |
1154| AV_OUTPUT_FORMAT_M4A  | 输出文件格式为M4A格式。   |
1155| AV_OUTPUT_FORMAT_AMR  | 输出文件格式为AMR格式。<br>**起始版本:** 12    |
1156| AV_OUTPUT_FORMAT_MP3  | 输出文件格式为MP3格式。<br>**起始版本:** 12   |
1157| AV_OUTPUT_FORMAT_WAV  | 输出文件格式为WAV格式。<br>**起始版本:** 12   |
1158| AV_OUTPUT_FORMAT_AAC  | 输出文件格式为AAC格式。<br>**起始版本:** 18   |
1159
1160### OH_AVSeekMode
1161
1162```
1163enum OH_AVSeekMode
1164```
1165**描述**
1166跳转模式。
1167
1168**系统能力:** SystemCapability.Multimedia.Media.CodecBase
1169
1170**起始版本:** 10
1171
1172| 枚举值 | 描述 |
1173| -------- | -------- |
1174| SEEK_MODE_NEXT_SYNC  | 指定时间位置的下一I帧。若时间点后没有I帧,该模式可能跳转失败。   |
1175| SEEK_MODE_PREVIOUS_SYNC  | 指定时间位置的上一I帧。   |
1176| SEEK_MODE_CLOSEST_SYNC  | 指定时间位置的最近I帧。   |
1177
1178
1179### OH_BitsPerSample
1180
1181```
1182enum OH_BitsPerSample
1183```
1184**描述**
1185每个编码样本的音频位数。
1186
1187**系统能力:** SystemCapability.Multimedia.Media.CodecBase
1188
1189**起始版本:** 10
1190
1191| 枚举值 | 描述 |
1192| -------- | -------- |
1193| SAMPLE_U8  | 8位无符号整数采样。   |
1194| SAMPLE_S16LE  | 16位有符号整数采样。   |
1195| SAMPLE_S24LE  | 24位有符号整数采样。   |
1196| SAMPLE_S32LE  | 32位有符号整数采样。   |
1197| SAMPLE_F32LE  | 32位浮点采样。   |
1198| SAMPLE_U8P  | 8位无符号整数平面采样。   |
1199| SAMPLE_S16P  | 16位有符号整数平面采样。   |
1200| SAMPLE_S24P  | 24位有符号整数平面采样。   |
1201| SAMPLE_S32P  | 32位有符号整数平面采样。   |
1202| SAMPLE_F32P  | 32位浮点平面采样。   |
1203| INVALID_WIDTH  | 无效采样格式。   |
1204
1205
1206### OH_ColorPrimary
1207
1208```
1209enum OH_ColorPrimary
1210```
1211**描述**
1212色域。编解码都支持。
1213
1214**系统能力:** SystemCapability.Multimedia.Media.CodecBase
1215
1216**起始版本:** 10
1217
1218| 枚举值 | 描述 |
1219| -------- | -------- |
1220| COLOR_PRIMARY_BT709  | BT709色域。   |
1221| COLOR_PRIMARY_UNSPECIFIED  | 未指定色域。   |
1222| COLOR_PRIMARY_BT470_M  | BT470_M色域。   |
1223| COLOR_PRIMARY_BT601_625  | BT601_625色域。   |
1224| COLOR_PRIMARY_BT601_525  | BT601_525色域。   |
1225| COLOR_PRIMARY_SMPTE_ST240  | SMPTE_ST240色域。   |
1226| COLOR_PRIMARY_GENERIC_FILM  | GENERIC_FILM色域。   |
1227| COLOR_PRIMARY_BT2020  | BT2020色域。   |
1228| COLOR_PRIMARY_SMPTE_ST428  | SMPTE_ST428色域。   |
1229| COLOR_PRIMARY_P3DCI  | P3DCI色域。   |
1230| COLOR_PRIMARY_P3D65  | P3D65色域。   |
1231
1232
1233### OH_HEVCLevel
1234
1235```
1236enum OH_HEVCLevel
1237```
1238**描述**
1239HEVC级别。
1240
1241**系统能力:** SystemCapability.Multimedia.Media.CodecBase
1242
1243**起始版本:** 12
1244
1245| 枚举值 | 描述 |
1246| -------- | -------- |
1247| HEVC_LEVEL_1  | 级别1   |
1248| HEVC_LEVEL_2  | 级别2   |
1249| HEVC_LEVEL_21  | 级别2.1   |
1250| HEVC_LEVEL_3  | 级别3   |
1251| HEVC_LEVEL_31  | 级别3.1   |
1252| HEVC_LEVEL_4  | 级别4   |
1253| HEVC_LEVEL_41  | 级别4.1   |
1254| HEVC_LEVEL_5  | 级别5   |
1255| HEVC_LEVEL_51  | 级别5.1   |
1256| HEVC_LEVEL_52  | 级别5.2   |
1257| HEVC_LEVEL_6  | 级别6   |
1258| HEVC_LEVEL_61  | 级别6.1   |
1259| HEVC_LEVEL_62  | 级别6.2   |
1260
1261
1262### OH_HEVCProfile
1263
1264```
1265enum OH_HEVCProfile
1266```
1267**描述**
1268HEVC档次。
1269
1270**系统能力:** SystemCapability.Multimedia.Media.CodecBase
1271
1272**起始版本:** 10
1273
1274| 枚举值 | 描述 |
1275| -------- | -------- |
1276| HEVC_PROFILE_MAIN  | HEVC编码档次为主档次。   |
1277| HEVC_PROFILE_MAIN_10  | HEVC编码档次为10bit主档次。   |
1278| HEVC_PROFILE_MAIN_STILL  | HEVC编码档次为静止图像主档次。   |
1279| HEVC_PROFILE_MAIN_10_HDR10  | HEVC编码档次为HDR10主档次。(API14废弃)   |
1280| HEVC_PROFILE_MAIN_10_HDR10_PLUS  | HEVC编码档次为HDR10+主档次。(API14废弃)   |
1281
1282
1283### OH_MatrixCoefficient
1284
1285```
1286enum OH_MatrixCoefficient
1287```
1288**描述**
1289矩阵系数。编解码都支持。
1290
1291**系统能力:** SystemCapability.Multimedia.Media.CodecBase
1292
1293**起始版本:** 10
1294
1295| 枚举值 | 描述 |
1296| -------- | -------- |
1297| MATRIX_COEFFICIENT_IDENTITY  | 单位矩阵。   |
1298| MATRIX_COEFFICIENT_BT709  | BT709转换矩阵。   |
1299| MATRIX_COEFFICIENT_UNSPECIFIED  | 未指定转换矩阵。   |
1300| MATRIX_COEFFICIENT_FCC  | FCC转换矩阵。   |
1301| MATRIX_COEFFICIENT_BT601_625  | BT601_625转换矩阵。   |
1302| MATRIX_COEFFICIENT_BT601_525  | BT601_525转换矩阵。   |
1303| MATRIX_COEFFICIENT_SMPTE_ST240  | SMPTE_ST240转换矩阵。   |
1304| MATRIX_COEFFICIENT_YCGCO  | YCGCO转换矩阵。   |
1305| MATRIX_COEFFICIENT_BT2020_NCL  | BT2020_NCL转换矩阵。   |
1306| MATRIX_COEFFICIENT_BT2020_CL  | BT2020_CL转换矩阵。   |
1307| MATRIX_COEFFICIENT_SMPTE_ST2085  | SMPTE_ST2085转换矩阵。   |
1308| MATRIX_COEFFICIENT_CHROMATICITY_NCL  | CHROMATICITY_NCL转换矩阵。   |
1309| MATRIX_COEFFICIENT_CHROMATICITY_CL  | CHROMATICITY_CL转换矩阵。   |
1310| MATRIX_COEFFICIENT_ICTCP  | ICTCP转换矩阵。   |
1311
1312
1313### OH_MediaType
1314
1315```
1316enum OH_MediaType
1317```
1318**描述**
1319媒体类型。
1320
1321**系统能力:** SystemCapability.Multimedia.Media.CodecBase
1322
1323**起始版本:** 9
1324
1325| 枚举值 | 描述 |
1326| -------- | -------- |
1327| MEDIA_TYPE_AUD  | 音频轨。   |
1328| MEDIA_TYPE_VID  | 视频轨。   |
1329| MEDIA_TYPE_SUBTITILE  | 字幕轨。 <br>**起始版本:** 12   |
1330
1331### OH_MPEG2Level
1332
1333```
1334enum OH_MPEG2Level
1335```
1336
1337**描述**
1338
1339MPEG2级别。
1340
1341**系统能力:** SystemCapability.Multimedia.Media.CodecBase
1342
1343**起始版本:** 17
1344
1345| 枚举值 | 描述 |
1346| -------- | -------- |
1347| MPEG2_LEVEL_LL | 低级别。 |
1348| MPEG2_LEVEL_ML | 主级别。 |
1349| MPEG2_LEVEL_H14 | 高1440级别。 |
1350| MPEG2_LEVEL_HL | 高级别。 |
1351
1352
1353### OH_MPEG2Profile
1354
1355```
1356enum OH_MPEG2Profile
1357```
1358
1359**描述**
1360
1361MPEG2档次。
1362
1363**系统能力:** SystemCapability.Multimedia.Media.CodecBase
1364
1365**起始版本:** 17
1366
1367| 枚举值 | 描述 |
1368| -------- | -------- |
1369| MPEG2_PROFILE_SIMPLE | 简单档次。 |
1370| MPEG2_PROFILE_MAIN | 主档次。 |
1371| MPEG2_PROFILE_SNR | 信噪比可分级档次。 |
1372| MPEG2_PROFILE_SPATIAL | 空间可分级档次。 |
1373| MPEG2_PROFILE_HIGH | 高级档次。 |
1374| MPEG2_PROFILE_422 | 4:2:2档次。 |
1375
1376
1377### OH_MPEG4Level
1378
1379```
1380enum OH_MPEG4Level
1381```
1382
1383**描述**
1384
1385MPEG4级别。
1386
1387**系统能力:** SystemCapability.Multimedia.Media.CodecBase
1388
1389**起始版本:** 17
1390
1391| 枚举值 | 描述 |
1392| -------- | -------- |
1393| MPEG4_LEVEL_0 | 级别0 |
1394| MPEG4_LEVEL_0B | 级别0B。 |
1395| MPEG4_LEVEL_1 | 级别1。 |
1396| MPEG4_LEVEL_2 | 级别2。 |
1397| MPEG4_LEVEL_3 | 级别3。 |
1398| MPEG4_LEVEL_3B | 级别3B。 |
1399| MPEG4_LEVEL_4 | 级别4。 |
1400| MPEG4_LEVEL_4A | 级别4A。 |
1401| MPEG4_LEVEL_5 | 级别5。 |
1402| MPEG4_LEVEL_6 | 级别6。 |
1403
1404
1405### OH_MPEG4Profile
1406
1407```
1408enum OH_MPEG4Profile
1409```
1410
1411**描述**
1412
1413MPEG4档次。
1414
1415**系统能力:** SystemCapability.Multimedia.Media.CodecBase
1416
1417**起始版本:** 17
1418
1419| 枚举值 | 描述 |
1420| -------- | -------- |
1421| MPEG4_PROFILE_SIMPLE | 简单档次。 |
1422| MPEG4_PROFILE_SIMPLE_SCALABLE | 简单可分级档次。 |
1423| MPEG4_PROFILE_CORE | 核心档次。 |
1424| MPEG4_PROFILE_MAIN | 主档次。 |
1425| MPEG4_PROFILE_NBIT | N位档次。 |
1426| MPEG4_PROFILE_HYBRID | 混合档次。 |
1427| MPEG4_PROFILE_BASIC_ANIMATED_TEXTURE | 基本动画纹理档次。 |
1428| MPEG4_PROFILE_SCALABLE_TEXTURE | 可分级纹理档次。 |
1429| MPEG4_PROFILE_SIMPLE_FA | 简单FA档次。 |
1430| MPEG4_PROFILE_ADVANCED_REAL_TIME_SIMPLE | 高级实时简单档次。 |
1431| MPEG4_PROFILE_CORE_SCALABLE | 核心可分级档次。 |
1432| MPEG4_PROFILE_ADVANCED_CODING_EFFICIENCY | 高级编码效率档次。 |
1433| MPEG4_PROFILE_ADVANCED_CORE | 高级核心档次。 |
1434| MPEG4_PROFILE_ADVANCED_SCALABLE_TEXTURE | 高级可分级纹理档次。 |
1435| MPEG4_PROFILE_ADVANCED_SIMPLE | 高级简单档次。 |
1436
1437
1438### OH_ScalingMode
1439
1440```
1441enum OH_ScalingMode
1442```
1443**描述**
1444缩放模式,只在Surface模式下使用。
1445
1446**系统能力:** SystemCapability.Multimedia.Media.CodecBase
1447
1448**起始版本:** 10
1449
1450**废弃版本:** 14
1451
1452**替代接口:** [OHScalingModeV2](../apis-arkgraphics2d/_native_window.md#ohscalingmodev2-1).OH_SCALING_MODE_SCALE_TO_WINDOW_V2、
1453[OHScalingModeV2](../apis-arkgraphics2d/_native_window.md#ohscalingmodev2-1).OH_SCALING_MODE_SCALE_CROP_V2
1454
1455| 枚举值 | 描述 |
1456| -------- | -------- |
1457| SCALING_MODE_SCALE_TO_WINDOW  | 根据窗口尺寸自适应调整图像大小。 |
1458| SCALING_MODE_SCALE_CROP  | 根据窗口尺寸裁剪图像大小。 |
1459
1460
1461
1462### OH_TemporalGopReferenceMode
1463
1464```
1465enum OH_TemporalGopReferenceMode
1466```
1467**描述**
1468时域图片组参考模式。
1469
1470**系统能力:** SystemCapability.Multimedia.Media.CodecBase
1471
1472**起始版本:** 12
1473
1474| 枚举值 | 描述 |
1475| -------- | -------- |
1476| ADJACENT_REFERENCE  | 参考最近的短期参考帧。   |
1477| JUMP_REFERENCE  | 参考最近的长期参考帧。   |
1478| UNIFORMLY_SCALED_REFERENCE  | 均匀分层参考结构,在丢弃最高层级视频帧后,视频帧均匀分布。其中时域图片组个数必须为2的幂。   |
1479
1480
1481### OH_VVCLevel
1482
1483```
1484enum OH_VVCLevel
1485```
1486**描述**
1487VVC级别。
1488
1489**系统能力:** SystemCapability.Multimedia.Media.CodecBase
1490
1491**起始版本:** 15
1492
1493| 枚举值 | 描述 |
1494| -------- | -------- |
1495| VVC_LEVEL_1  | 级别1.0  |
1496| VVC_LEVEL_2  | 级别2.0  |
1497| VVC_LEVEL_21  | 级别2.1  |
1498| VVC_LEVEL_3  | 级别3.0  |
1499| VVC_LEVEL_31  | 级别3.1  |
1500| VVC_LEVEL_4  | 级别4.0  |
1501| VVC_LEVEL_41  | 级别4.1  |
1502| VVC_LEVEL_5  | 级别5.0   |
1503| VVC_LEVEL_51  | 级别5.1  |
1504| VVC_LEVEL_52  | 级别5.2  |
1505| VVC_LEVEL_6  | 级别6.0  |
1506| VVC_LEVEL_61  | 级别6.1  |
1507| VVC_LEVEL_62  | 级别6.2  |
1508| VVC_LEVEL_63  | 级别6.3  |
1509| VVC_LEVEL_155  | 级别15.5  |
1510
1511
1512### OH_VVCProfile
1513
1514```
1515enum OH_VVCProfile
1516```
1517**描述**
1518VVC档次。
1519
1520**系统能力:** SystemCapability.Multimedia.Media.CodecBase
1521
1522**起始版本:** 15
1523
1524| 枚举值 | 描述 |
1525| -------- | -------- |
1526| VVC_PROFILE_MAIN_10 | VVC编码档次为10bit主档次。  |
1527| VVC_PROFILE_MAIN_12 | VVC编码档次为12bit主档次。  |
1528| VVC_PROFILE_MAIN_12_INTRA | VVC编码档次为12bit帧内主档次。  |
1529| VVC_PROFILE_MULTI_MAIN_10 | VVC编码档次为多层编码10bit主档次。  |
1530| VVC_PROFILE_MAIN_10_444 | VVC编码档次为10bit全采样主档次。  |
1531| VVC_PROFILE_MAIN_12_444 | VVC编码档次为12bit全采样主档次。  |
1532| VVC_PROFILE_MAIN_16_444 | VVC编码档次为16bit全采样主档次。  |
1533| VVC_PROFILE_MAIN_12_444_INTRA | VVC编码档次为12bit全采样帧内主档次。  |
1534| VVC_PROFILE_MAIN_16_444_INTRA | VVC编码档次为16bit全采样帧内主档次。  |
1535| VVC_PROFILE_MULTI_MAIN_10_444 | VVC编码档次为多层编码10bit全采样主档次。  |
1536| VVC_PROFILE_MAIN_10_STILL | VVC编码档次为10bit静止图像主档次。  |
1537| VVC_PROFILE_MAIN_12_STILL | VVC编码档次为12bit静止图像主档次。  |
1538| VVC_PROFILE_MAIN_10_444_STILL | VVC编码档次为10bit全采样静止图像主档次。  |
1539| VVC_PROFILE_MAIN_12_444_STILL | VVC编码档次为12bit全采样静止图像主档次。  |
1540| VVC_PROFILE_MAIN_16_444_STILL | VVC编码档次为16bit全采样静止图像主档次。  |
1541
1542
1543### OH_H263Level
1544
1545```
1546enum OH_H263Level
1547```
1548**描述**
1549H.263级别。
1550
1551**系统能力:** SystemCapability.Multimedia.Media.CodecBase
1552
1553**起始版本:** 17
1554
1555| 枚举值 | 描述 |
1556| -------- | -------- |
1557| H263_LEVEL_10 | 级别10。  |
1558| H263_LEVEL_20 | 级别20。  |
1559| H263_LEVEL_30 | 级别30。  |
1560| H263_LEVEL_40 | 级别40。  |
1561| H263_LEVEL_45 | 级别45。  |
1562| H263_LEVEL_50 | 级别50。  |
1563| H263_LEVEL_60 | 级别60。  |
1564| H263_LEVEL_70 | 级别70。  |
1565
1566
1567### OH_H263Profile
1568
1569```
1570enum OH_H263Profile
1571```
1572**描述**
1573H.263档次。
1574
1575**系统能力:** SystemCapability.Multimedia.Media.CodecBase
1576
1577**起始版本:** 17
1578
1579| 枚举值 | 描述 |
1580| -------- | -------- |
1581| H263_PROFILE_BASELINE | 基线档次。  |
1582| H263_PROFILE_VERSION_1_BACKWARD_COMPATIBILITY | 版本1向后兼容档次。  |
1583
1584
1585### OH_TransferCharacteristic
1586
1587```
1588enum OH_TransferCharacteristic
1589```
1590**描述**
1591转移特性。编解码都支持。
1592
1593**系统能力:** SystemCapability.Multimedia.Media.CodecBase
1594
1595**起始版本:** 10
1596
1597| 枚举值 | 描述 |
1598| -------- | -------- |
1599| TRANSFER_CHARACTERISTIC_BT709  | BT709传递函数。   |
1600| TRANSFER_CHARACTERISTIC_UNSPECIFIED  | 未指定传递函数。   |
1601| TRANSFER_CHARACTERISTIC_GAMMA_2_2  | GAMMA_2_2传递函数。   |
1602| TRANSFER_CHARACTERISTIC_GAMMA_2_8  | GAMMA_2_8传递函数。   |
1603| TRANSFER_CHARACTERISTIC_BT601  | BT601传递函数。   |
1604| TRANSFER_CHARACTERISTIC_SMPTE_ST240  | SMPTE_ST240传递函数。   |
1605| TRANSFER_CHARACTERISTIC_LINEAR  | LINEAR传递函数。   |
1606| TRANSFER_CHARACTERISTIC_LOG  | LOG传递函数。   |
1607| TRANSFER_CHARACTERISTIC_LOG_SQRT  | LOG_SQRT传递函数。   |
1608| TRANSFER_CHARACTERISTIC_IEC_61966_2_4  | IEC_61966_2_4传递函数。   |
1609| TRANSFER_CHARACTERISTIC_BT1361  | BT1361传递函数。   |
1610| TRANSFER_CHARACTERISTIC_IEC_61966_2_1  | IEC_61966_2_1传递函数。   |
1611| TRANSFER_CHARACTERISTIC_BT2020_10BIT  | BT2020_10BIT传递函数。   |
1612| TRANSFER_CHARACTERISTIC_BT2020_12BIT  | BT2020_12BIT传递函数。   |
1613| TRANSFER_CHARACTERISTIC_PQ  | PQ传递函数。   |
1614| TRANSFER_CHARACTERISTIC_SMPTE_ST428  | SMPTE_ST428传递函数。   |
1615| TRANSFER_CHARACTERISTIC_HLG  | HLG传递函数。   |
1616
1617
1618### OH_BitrateMode
1619
1620```
1621enum OH_BitrateMode
1622```
1623**描述**
1624编码器的比特率模式。
1625
1626**系统能力:** SystemCapability.Multimedia.Media.CodecBase
1627
1628**起始版本:** 10
1629
1630| 枚举值 | 描述 |
1631| -------- | -------- |
1632| BITRATE_MODE_CBR  | 恒定比特率模式。   |
1633| BITRATE_MODE_VBR  | 可变比特率模式,码率仅作参考。   |
1634| BITRATE_MODE_CQ  | 恒定质量模式。   |
1635
1636## 变量说明
1637
1638
1639### OH_AVCODEC_MIMETYPE_SUBTITLE_SRT
1640
1641```
1642const char* OH_AVCODEC_MIMETYPE_SUBTITLE_SRT
1643```
1644**描述**
1645SRT字幕解封装器的MIME类型。
1646
1647**系统能力:** SystemCapability.Multimedia.Media.CodecBase
1648
1649**起始版本:** 12
1650
1651
1652### OH_AVCODEC_MIMETYPE_SUBTITLE_WEBVTT
1653
1654```
1655const char* OH_AVCODEC_MIMETYPE_SUBTITLE_WEBVTT
1656```
1657**描述**
1658WEBVTT字幕解封装器的MIME类型。
1659
1660**系统能力:** SystemCapability.Multimedia.Media.CodecBase
1661
1662**起始版本:** 12
1663
1664
1665### OH_AVCODEC_MIMETYPE_AUDIO_APE
1666
1667```
1668const char* OH_AVCODEC_MIMETYPE_AUDIO_APE
1669```
1670**描述**
1671APE音频解码器的MIME类型。
1672
1673**系统能力:** SystemCapability.Multimedia.Media.CodecBase
1674
1675**起始版本:** 12
1676
1677
1678### OH_AVCODEC_MIMETYPE_AUDIO_AAC
1679
1680```
1681const char* OH_AVCODEC_MIMETYPE_AUDIO_AAC
1682```
1683**描述**
1684AAC音频编解码器的MIME类型。
1685
1686**系统能力:** SystemCapability.Multimedia.Media.CodecBase
1687
1688**起始版本:** 9
1689
1690
1691### OH_AVCODEC_MIMETYPE_AUDIO_AMR_NB
1692
1693```
1694const char* OH_AVCODEC_MIMETYPE_AUDIO_AMR_NB
1695```
1696**描述**
1697AMR_NB音频解码器的MIME类型。
1698
1699**系统能力:** SystemCapability.Multimedia.Media.CodecBase
1700
1701**起始版本:** 11
1702
1703
1704### OH_AVCODEC_MIMETYPE_AUDIO_AMR_WB
1705
1706```
1707const char* OH_AVCODEC_MIMETYPE_AUDIO_AMR_WB
1708```
1709**描述**
1710AMR_WB音频解码器的MIME类型。
1711
1712**系统能力:** SystemCapability.Multimedia.Media.CodecBase
1713
1714**起始版本:** 11
1715
1716
1717### OH_AVCODEC_MIMETYPE_AUDIO_FLAC
1718
1719```
1720const char* OH_AVCODEC_MIMETYPE_AUDIO_FLAC
1721```
1722**描述**
1723FLAC音频编解码器的MIME类型。
1724
1725**系统能力:** SystemCapability.Multimedia.Media.CodecBase
1726
1727**起始版本:** 10
1728
1729
1730### OH_AVCODEC_MIMETYPE_AUDIO_G711MU
1731
1732```
1733const char* OH_AVCODEC_MIMETYPE_AUDIO_G711MU
1734```
1735**描述**
1736G711MU音频编解码器的MIME类型。
1737
1738**系统能力:** SystemCapability.Multimedia.Media.CodecBase
1739
1740**起始版本:** 11
1741
1742
1743### OH_AVCODEC_MIMETYPE_AUDIO_RAW
1744
1745```
1746const char* OH_AVCODEC_MIMETYPE_AUDIO_RAW
1747```
1748**描述**
1749RAW音频码流的MIME类型。
1750
1751**系统能力:** SystemCapability.Multimedia.Media.CodecBase
1752
1753**起始版本:** 18
1754
1755
1756### OH_AVCODEC_MIMETYPE_AUDIO_MPEG
1757
1758```
1759const char* OH_AVCODEC_MIMETYPE_AUDIO_MPEG
1760```
1761**描述**
1762MP3音频解码器的MIME类型。
1763
1764**系统能力:** SystemCapability.Multimedia.Media.CodecBase
1765
1766**起始版本:** 10
1767
1768
1769### OH_AVCODEC_MIMETYPE_AUDIO_OPUS
1770
1771```
1772const char* OH_AVCODEC_MIMETYPE_AUDIO_OPUS
1773```
1774**描述**
1775OPUS音频编解码器的MIME类型。<!--Del-->(此规格暂未开放)<!--DelEnd-->
1776
1777**系统能力:** SystemCapability.Multimedia.Media.CodecBase
1778
1779**起始版本:** 11
1780
1781
1782### OH_AVCODEC_MIMETYPE_AUDIO_VIVID
1783
1784```
1785const char* OH_AVCODEC_MIMETYPE_AUDIO_VIVID
1786```
1787**描述**
1788Audio Vivid音频解码器的MIME类型。<!--Del-->(目前本规格未开放)<!--DelEnd-->
1789
1790**系统能力:** SystemCapability.Multimedia.Media.CodecBase
1791
1792**起始版本:** 11
1793
1794
1795### OH_AVCODEC_MIMETYPE_AUDIO_VORBIS
1796
1797```
1798const char* OH_AVCODEC_MIMETYPE_AUDIO_VORBIS
1799```
1800**描述**
1801VORBIS音频解码器的MIME类型。
1802
1803**系统能力:** SystemCapability.Multimedia.Media.CodecBase
1804
1805**起始版本:** 10
1806
1807
1808### OH_AVCODEC_MIMETYPE_IMAGE_BMP
1809
1810```
1811const char* OH_AVCODEC_MIMETYPE_IMAGE_BMP
1812```
1813**描述**
1814BMP图片编码的MIME类型,仅用于封装BMP封面时使用。
1815
1816**系统能力:** SystemCapability.Multimedia.Media.CodecBase
1817
1818**起始版本:** 10
1819
1820
1821### OH_AVCODEC_MIMETYPE_IMAGE_JPG
1822
1823```
1824const char* OH_AVCODEC_MIMETYPE_IMAGE_JPG
1825```
1826**描述**
1827JPG图片编码的MIME类型,仅用于封装JPG封面时使用。
1828
1829**系统能力:** SystemCapability.Multimedia.Media.CodecBase
1830
1831**起始版本:** 10
1832
1833
1834### OH_AVCODEC_MIMETYPE_IMAGE_PNG
1835
1836```
1837const char* OH_AVCODEC_MIMETYPE_IMAGE_PNG
1838```
1839**描述**
1840PNG图片编码的MIME类型,仅用于封装PNG封面时使用。
1841
1842**系统能力:** SystemCapability.Multimedia.Media.CodecBase
1843
1844**起始版本:** 10
1845
1846
1847### OH_AVCODEC_MIMETYPE_VIDEO_AVC
1848
1849```
1850const char* OH_AVCODEC_MIMETYPE_VIDEO_AVC
1851```
1852**描述**
1853AVC(H.264)视频编解码器的MIME类型。
1854
1855**系统能力:** SystemCapability.Multimedia.Media.CodecBase
1856
1857**起始版本:** 9
1858
1859
1860### OH_AVCODEC_MIMETYPE_VIDEO_HEVC
1861
1862```
1863const char* OH_AVCODEC_MIMETYPE_VIDEO_HEVC
1864```
1865**描述**
1866HEVC(H.265)视频编解码器的MIME类型。
1867
1868**系统能力:** SystemCapability.Multimedia.Media.CodecBase
1869
1870**起始版本:** 10
1871
1872
1873### OH_AVCODEC_MIMETYPE_VIDEO_VVC
1874
1875```
1876const char* OH_AVCODEC_MIMETYPE_VIDEO_VVC
1877```
1878**描述**
1879VVC(H.266)视频编解码器的MIME类型。
1880
1881**系统能力:** SystemCapability.Multimedia.Media.CodecBase
1882
1883**起始版本:** 12
1884
1885
1886### OH_AVCODEC_MIMETYPE_VIDEO_H263
1887
1888```
1889const char* OH_AVCODEC_MIMETYPE_VIDEO_H263
1890```
1891**描述**
1892H.263视频编解码器的MIME类型。
1893
1894**系统能力:** SystemCapability.Multimedia.Media.CodecBase
1895
1896**起始版本:** 17
1897
1898
1899### OH_AVCODEC_MIMETYPE_VIDEO_MPEG2
1900
1901```
1902const char* OH_AVCODEC_MIMETYPE_VIDEO_MPEG2
1903```
1904
1905**描述**
1906
1907视频MPEG2编解码器的MIME类型。
1908
1909**系统能力:** SystemCapability.Multimedia.Media.CodecBase
1910
1911**起始版本:** 17
1912
1913
1914### OH_AVCODEC_MIMETYPE_VIDEO_MPEG4
1915
1916```
1917const char* OH_AVCODEC_MIMETYPE_VIDEO_MPEG4
1918```
1919**描述**
1920MPEG4视频编码的MIME类型,仅用于封装MPEG4视频码流使用。
1921
1922**系统能力:** SystemCapability.Multimedia.Media.CodecBase
1923
1924**起始版本:** 10
1925
1926**废弃版本:** 11
1927
1928
1929### OH_AVCODEC_MIMETYPE_VIDEO_MPEG4_PART2
1930
1931```
1932const char* OH_AVCODEC_MIMETYPE_VIDEO_MPEG4_PART2
1933```
1934
1935**描述**
1936
1937视频MPEG4 Part2编解码器的MIME类型。
1938
1939**系统能力:** SystemCapability.Multimedia.Media.CodecBase
1940
1941**起始版本:** 17
1942
1943
1944### OH_ED_KEY_EOS
1945
1946```
1947const char* OH_ED_KEY_EOS
1948```
1949**描述**
1950表示surfacebuffer流结束符的键,值类型为int32_t。
1951
1952**系统能力:** SystemCapability.Multimedia.Media.CodecBase
1953
1954**起始版本:** 9
1955
1956**废弃版本:** 14
1957
1958
1959### OH_ED_KEY_TIME_STAMP
1960
1961```
1962const char* OH_ED_KEY_TIME_STAMP
1963```
1964**描述**
1965表示surfacebuffer时间戳的键,值类型为int64_t。
1966
1967**系统能力:** SystemCapability.Multimedia.Media.CodecBase
1968
1969**起始版本:** 9
1970
1971**废弃版本:** 14
1972
1973
1974### OH_FEATURE_PROPERTY_KEY_VIDEO_ENCODER_MAX_LTR_FRAME_COUNT
1975
1976```
1977const char* OH_FEATURE_PROPERTY_KEY_VIDEO_ENCODER_MAX_LTR_FRAME_COUNT
1978```
1979**描述**
1980在视频编码中获取长期参考帧的最大个数的键,值类型为int32_t。
1981
1982可以通过[OH_AVCapability_GetFeatureProperties](_a_v_capability.md#oh_avcapability_getfeatureproperties)接口和枚举值[VIDEO_ENCODER_LONG_TERM_REFERENCE](_a_v_capability.md#oh_avcapabilityfeature-1)来查询这个最大值。
1983
1984**系统能力:** SystemCapability.Multimedia.Media.CodecBase
1985
1986**起始版本:** 12
1987
1988
1989### OH_MD_KEY_AAC_IS_ADTS
1990
1991```
1992const char* OH_MD_KEY_AAC_IS_ADTS
1993```
1994**描述**
1995aac格式的键,aac格式分为ADTS格式和LATM格式。值类型为int32_t,0表示LATM格式,1表示ADTS格式。aac解码器支持。
1996
1997**系统能力:** SystemCapability.Multimedia.Media.CodecBase
1998
1999**起始版本:** 10
2000
2001
2002### OH_MD_KEY_ALBUM
2003
2004```
2005const char* OH_MD_KEY_ALBUM
2006```
2007**描述**
2008专辑的媒体文件的键,值类型为string。
2009
2010**系统能力:** SystemCapability.Multimedia.Media.CodecBase
2011
2012**起始版本:** 10
2013
2014
2015### OH_MD_KEY_ALBUM_ARTIST
2016
2017```
2018const char* OH_MD_KEY_ALBUM_ARTIST
2019```
2020**描述**
2021专辑艺术家的键,值类型为string。
2022
2023**系统能力:** SystemCapability.Multimedia.Media.CodecBase
2024
2025**起始版本:** 10
2026
2027
2028### OH_MD_KEY_ARTIST
2029
2030```
2031const char* OH_MD_KEY_ARTIST
2032```
2033**描述**
2034媒体文件艺术家的键,值类型为string。
2035
2036**系统能力:** SystemCapability.Multimedia.Media.CodecBase
2037
2038**起始版本:** 10
2039
2040
2041### OH_MD_KEY_AUD_CHANNEL_COUNT
2042
2043```
2044const char* OH_MD_KEY_AUD_CHANNEL_COUNT
2045```
2046**描述**
2047音频通道计数键,值类型为int32_t。
2048
2049**系统能力:** SystemCapability.Multimedia.Media.CodecBase
2050
2051**起始版本:** 9
2052
2053
2054### OH_MD_KEY_AUD_SAMPLE_RATE
2055
2056```
2057const char* OH_MD_KEY_AUD_SAMPLE_RATE
2058```
2059**描述**
2060音频采样率键,值类型为int32_t。
2061
2062**系统能力:** SystemCapability.Multimedia.Media.CodecBase
2063
2064**起始版本:** 9
2065
2066
2067### OH_MD_KEY_AUDIO_COMPRESSION_LEVEL
2068
2069```
2070const char* OH_MD_KEY_AUDIO_COMPRESSION_LEVEL
2071```
2072**描述**
2073音频编解码压缩水平的键,只在音频编码使用,值类型为int32_t。
2074
2075**系统能力:** SystemCapability.Multimedia.Media.CodecBase
2076
2077**起始版本:** 11
2078
2079
2080### OH_MD_KEY_AUDIO_OBJECT_NUMBER
2081
2082```
2083const char* OH_MD_KEY_AUDIO_OBJECT_NUMBER
2084```
2085**描述**
2086音频对象数目的键,值类型为int32_t,只有Audio Vivid解码使用。
2087
2088**系统能力:** SystemCapability.Multimedia.Media.CodecBase
2089
2090**起始版本:** 11
2091
2092
2093### OH_MD_KEY_AUDIO_SAMPLE_FORMAT
2094
2095```
2096const char* OH_MD_KEY_AUDIO_SAMPLE_FORMAT
2097```
2098**描述**
2099音频原始格式的键,值类型为int32_t。请参见[OH_BitsPerSample](#oh_bitspersample-1)。
2100
2101**系统能力:** SystemCapability.Multimedia.Media.CodecBase
2102
2103**起始版本:** 9
2104
2105
2106### OH_MD_KEY_AUDIO_VIVID_METADATA
2107
2108```
2109const char* OH_MD_KEY_AUDIO_VIVID_METADATA
2110```
2111**描述**
2112Audio Vivid元数据的键,值类型为uint8_t\*,只有Audio Vivid解码使用。
2113
2114**系统能力:** SystemCapability.Multimedia.Media.CodecBase
2115
2116**起始版本:** 11
2117
2118
2119### OH_MD_KEY_BITRATE
2120
2121```
2122const char* OH_MD_KEY_BITRATE
2123```
2124**描述**
2125比特率的键,值类型为int64_t。
2126
2127**系统能力:** SystemCapability.Multimedia.Media.CodecBase
2128
2129**起始版本:** 9
2130
2131
2132### OH_MD_KEY_BITS_PER_CODED_SAMPLE
2133
2134```
2135const char* OH_MD_KEY_BITS_PER_CODED_SAMPLE
2136```
2137**描述**
2138每个编码样本位数的键,值类型为int32_t,支持flac编码器,请参见[OH_BitsPerSample](#oh_bitspersample-1)。
2139
2140**系统能力:** SystemCapability.Multimedia.Media.CodecBase
2141
2142**起始版本:** 10
2143
2144
2145### OH_MD_KEY_CHANNEL_LAYOUT
2146
2147```
2148const char* OH_MD_KEY_CHANNEL_LAYOUT
2149```
2150**描述**
2151所需编码通道布局的键。值类型为int64_t,此键仅适用于编码器。
2152请参见[OH_AudioChannelLayout](_core.md#oh_audiochannellayout-1)。
2153
2154**系统能力:** SystemCapability.Multimedia.Media.CodecBase
2155
2156**起始版本:** 10
2157
2158
2159### OH_MD_KEY_CODEC_CONFIG
2160
2161```
2162const char* OH_MD_KEY_CODEC_CONFIG
2163```
2164**描述**
2165
2166编解码器特定数据的键,视频中表示传递SPS/PPS,音频中表示传递extraData,值类型为uint8_t\*。 <!--Del-->(视频编解码此功能暂未支持)<!--DelEnd-->
2167
2168**系统能力:** SystemCapability.Multimedia.Media.CodecBase
2169
2170**起始版本:** 10
2171
2172
2173### OH_MD_KEY_CODEC_MIME
2174
2175```
2176const char* OH_MD_KEY_CODEC_MIME
2177```
2178**描述**
2179编解码器[MIME](#媒体编解码格式)类型的键,值类型为string。
2180
2181**系统能力:** SystemCapability.Multimedia.Media.CodecBase
2182
2183**起始版本:** 9
2184
2185
2186### OH_MD_KEY_COLOR_PRIMARIES
2187
2188```
2189const char* OH_MD_KEY_COLOR_PRIMARIES
2190```
2191**描述**
2192视频色域的键,值类型为int32_t,请参见[OH_ColorPrimary](#oh_colorprimary),遵循H.273标准Table2。
2193
2194**系统能力:** SystemCapability.Multimedia.Media.CodecBase
2195
2196**起始版本:** 10
2197
2198
2199### OH_MD_KEY_COMMENT
2200
2201```
2202const char* OH_MD_KEY_COMMENT
2203```
2204**描述**
2205媒体文件注释的键,值类型为string。
2206
2207**系统能力:** SystemCapability.Multimedia.Media.CodecBase
2208
2209**起始版本:** 10
2210
2211
2212### OH_MD_KEY_COMPLIANCE_LEVEL
2213
2214```
2215const char* OH_MD_KEY_COMPLIANCE_LEVEL
2216```
2217**描述**
2218flac兼容性等级的键,值类型为int32_t,仅在音频编码使用。
2219
2220**系统能力:** SystemCapability.Multimedia.Media.CodecBase
2221
2222**起始版本:** 10
2223
2224
2225### OH_MD_KEY_COPYRIGHT
2226
2227```
2228const char* OH_MD_KEY_COPYRIGHT
2229```
2230**描述**
2231媒体文件版权的键,值类型为string。
2232
2233**系统能力:** SystemCapability.Multimedia.Media.CodecBase
2234
2235**起始版本:** 10
2236
2237
2238### OH_MD_KEY_DATE
2239
2240```
2241const char* OH_MD_KEY_DATE
2242```
2243**描述**
2244媒体文件日期的键,值类型为string,例如2024年。
2245
2246**系统能力:** SystemCapability.Multimedia.Media.CodecBase
2247
2248**起始版本:** 10
2249
2250
2251### OH_MD_KEY_DESCRIPTION
2252
2253```
2254const char* OH_MD_KEY_DESCRIPTION
2255```
2256**描述**
2257媒体文件描述的键,值类型为string。
2258
2259**系统能力:** SystemCapability.Multimedia.Media.CodecBase
2260
2261**起始版本:** 10
2262
2263
2264### OH_MD_KEY_DURATION
2265
2266```
2267const char* OH_MD_KEY_DURATION
2268```
2269**描述**
2270媒体文件持续时间的键,单位为微秒,值类型为int64_t。
2271
2272**系统能力:** SystemCapability.Multimedia.Media.CodecBase
2273
2274**起始版本:** 9
2275
2276
2277### OH_MD_KEY_FRAME_RATE
2278
2279```
2280const char* OH_MD_KEY_FRAME_RATE
2281```
2282**描述**
2283视频帧率的键,值类型为double。该值必须大于 0。
2284
2285**系统能力:** SystemCapability.Multimedia.Media.CodecBase
2286
2287**起始版本:** 9
2288
2289
2290### OH_MD_KEY_GENRE
2291
2292```
2293const char* OH_MD_KEY_GENRE
2294```
2295**描述**
2296媒体文件流派的键,值类型为string。
2297
2298**系统能力:** SystemCapability.Multimedia.Media.CodecBase
2299
2300**起始版本:** 10
2301
2302
2303### OH_MD_KEY_HEIGHT
2304
2305```
2306const char* OH_MD_KEY_HEIGHT
2307```
2308**描述**
2309视频高度键,值类型为int32_t。
2310
2311在视频编解码流程中调用Configure接口时,使用此接口来设置视频帧的显示高。
2312
2313使用指导请参见:[视频编码](../../media/avcodec/video-encoding.md)中的中的Surface模式的“步骤-5”或Buffer模式“步骤-4”。
2314
2315**系统能力:** SystemCapability.Multimedia.Media.CodecBase
2316
2317**起始版本:** 9
2318
2319
2320### OH_MD_KEY_I_FRAME_INTERVAL
2321
2322```
2323const char* OH_MD_KEY_I_FRAME_INTERVAL
2324```
2325
2326**描述**
2327关键帧间隔的键,值类型为int32_t,单位为毫秒。该键是可选的且只用于视频编码。
2328
2329负值表示只有第一帧是关键帧,零表示所有帧都是关键帧。
2330
2331**系统能力:** SystemCapability.Multimedia.Media.CodecBase
2332
2333**起始版本:** 9
2334
2335
2336### OH_MD_KEY_IDENTIFICATION_HEADER
2337
2338```
2339const char* OH_MD_KEY_IDENTIFICATION_HEADER
2340```
2341**描述**
2342vorbis标识头的键,值类型为uint8_t\*,仅vorbis解码器支持。
2343
2344**系统能力:** SystemCapability.Multimedia.Media.CodecBase
2345
2346**起始版本:** 10
2347
2348
2349### OH_MD_KEY_LANGUAGE
2350
2351```
2352const char* OH_MD_KEY_LANGUAGE
2353```
2354**描述**
2355媒体文件语言的键,值类型为string。
2356
2357**系统能力:** SystemCapability.Multimedia.Media.CodecBase
2358
2359**起始版本:** 10
2360
2361
2362### OH_MD_KEY_LYRICS
2363
2364```
2365const char* OH_MD_KEY_LYRICS
2366```
2367**描述**
2368媒体文件歌词的键,值类型为string。
2369
2370**系统能力:** SystemCapability.Multimedia.Media.CodecBase
2371
2372**起始版本:** 10
2373
2374
2375### OH_MD_KEY_MATRIX_COEFFICIENTS
2376
2377```
2378const char* OH_MD_KEY_MATRIX_COEFFICIENTS
2379```
2380**描述**
2381视频矩阵系数的键,值类型为int32_t,请参见[OH_MatrixCoefficient](#oh_matrixcoefficient),遵循H.273标准Table4。
2382
2383**系统能力:** SystemCapability.Multimedia.Media.CodecBase
2384
2385**起始版本:** 10
2386
2387
2388### OH_MD_KEY_MAX_INPUT_SIZE
2389
2390```
2391const char* OH_MD_KEY_MAX_INPUT_SIZE
2392```
2393**描述**
2394设置解码输入码流大小最大值的键,值类型为int32_t。
2395
2396**系统能力:** SystemCapability.Multimedia.Media.CodecBase
2397
2398**起始版本:** 9
2399
2400
2401### OH_MD_KEY_PIXEL_FORMAT
2402
2403```
2404const char* OH_MD_KEY_PIXEL_FORMAT
2405```
2406**描述**
2407视频像素格式的键,值类型为int32_t,请参见[OH_AVPixelFormat](_core.md#oh_avpixelformat)。
2408
2409**系统能力:** SystemCapability.Multimedia.Media.CodecBase
2410
2411**起始版本:** 9
2412
2413
2414### OH_MD_KEY_PROFILE
2415
2416```
2417const char* OH_MD_KEY_PROFILE
2418```
2419**描述**
2420编码档次,值类型为int32_t,请参见[OH_AVCProfile](#oh_avcprofile),[OH_HEVCProfile](#oh_hevcprofile),[OH_AACProfile](#oh_aacprofile)。
2421
2422**系统能力:** SystemCapability.Multimedia.Media.CodecBase
2423
2424**起始版本:** 9
2425
2426
2427### OH_MD_KEY_QUALITY
2428
2429```
2430const char* OH_MD_KEY_QUALITY
2431```
2432**描述**
2433所需编码质量的键。值类型为int32_t,在H.264、H.265编码场景值范围可以根据能力查询接口OH_AVCapability_GetEncoderQualityRange()获取,此键仅适用于配置在恒定质量模式下的编码器。
2434
2435**系统能力:** SystemCapability.Multimedia.Media.CodecBase
2436
2437**起始版本:** 10
2438
2439
2440### OH_MD_KEY_RANGE_FLAG
2441
2442```
2443const char* OH_MD_KEY_RANGE_FLAG
2444```
2445**描述**
2446视频YUV值域标志的键,值类型为int32_t,1表示full range,0表示limited range。
2447
2448**系统能力:** SystemCapability.Multimedia.Media.CodecBase
2449
2450**起始版本:** 10
2451
2452
2453### OH_MD_KEY_REQUEST_I_FRAME
2454
2455```
2456const char* OH_MD_KEY_REQUEST_I_FRAME
2457```
2458**描述**
2459请求立即编码I帧的键。值类型为int32_t。在调用OH_VideoEncoder_SetParameter()阶段使用,或随帧立即生效。
2460
2461**系统能力:** SystemCapability.Multimedia.Media.CodecBase
2462
2463**起始版本:** 10
2464
2465
2466### OH_MD_KEY_ROTATION
2467
2468```
2469const char* OH_MD_KEY_ROTATION
2470```
2471**描述**
2472surface旋转角度的键。值类型为int32_t:应为{0, 90, 180, 270},默认值为0。该键只在视频解码Surface模式下使用。
2473
2474**系统能力:** SystemCapability.Multimedia.Media.CodecBase
2475
2476**起始版本:** 9
2477
2478
2479### OH_MD_KEY_SBR
2480
2481```
2482const char* OH_MD_KEY_SBR
2483```
2484**描述**
2485aac sbr模式的键,值类型为int32_t,aac编码器支持。
2486
2487**系统能力:** SystemCapability.Multimedia.Media.CodecBase
2488
2489**起始版本:** 10
2490
2491
2492### OH_MD_KEY_SCALING_MODE
2493
2494```
2495const char* OH_MD_KEY_SCALING_MODE
2496```
2497**描述**
2498视频缩放模式,值类型为int32_t,请参见[OH_ScalingMode](#oh_scalingmode)。建议直接调用[OH_NativeWindow_NativeWindowSetScalingModeV2](../apis-arkgraphics2d/_native_window.md#oh_nativewindow_nativewindowsetscalingmodev2)接口进行设置。该键是可选的且只用于视频解码Surface模式。
2499
2500**系统能力:** SystemCapability.Multimedia.Media.CodecBase
2501
2502**起始版本:** 10
2503
2504**废弃版本:** 14
2505
2506**替代接口:**[OH_NativeWindow_NativeWindowSetScalingModeV2](../apis-arkgraphics2d/_native_window.md#oh_nativewindow_nativewindowsetscalingmodev2)
2507
2508
2509### OH_MD_KEY_SETUP_HEADER
2510
2511```
2512const char* OH_MD_KEY_SETUP_HEADER
2513```
2514**描述**
2515vorbis设置头的键,值类型为uint8_t\*,仅vorbis解码器支持。
2516
2517**系统能力:** SystemCapability.Multimedia.Media.CodecBase
2518
2519**起始版本:** 10
2520
2521
2522### OH_MD_KEY_TITLE
2523
2524```
2525const char* OH_MD_KEY_TITLE
2526```
2527**描述**
2528媒体文件标题的键,值类型为string。
2529
2530**系统能力:** SystemCapability.Multimedia.Media.CodecBase
2531
2532**起始版本:** 10
2533
2534
2535### OH_MD_KEY_TRACK_COUNT
2536
2537```
2538const char* OH_MD_KEY_TRACK_COUNT
2539```
2540**描述**
2541媒体文件轨道数量的键,值类型为int32_t。
2542
2543**系统能力:** SystemCapability.Multimedia.Media.CodecBase
2544
2545**起始版本:** 10
2546
2547
2548### OH_MD_KEY_TRACK_TYPE
2549
2550```
2551const char* OH_MD_KEY_TRACK_TYPE
2552```
2553**描述**
2554
2555轨道媒体类型的键,值类型为int32_t,请参见[OH_MediaType](#oh_mediatype-1)。
2556
2557**系统能力:** SystemCapability.Multimedia.Media.CodecBase
2558
2559**起始版本:** 9
2560
2561
2562### OH_MD_KEY_TRANSFER_CHARACTERISTICS
2563
2564```
2565const char* OH_MD_KEY_TRANSFER_CHARACTERISTICS
2566```
2567**描述**
2568视频传递函数的键,值类型为int32_t,请参见[OH_TransferCharacteristic](#oh_transfercharacteristic),遵循H.273标准Table3。
2569
2570**系统能力:** SystemCapability.Multimedia.Media.CodecBase
2571
2572**起始版本:** 10
2573
2574### OH_MD_KEY_VIDEO_CROP_BOTTOM
2575
2576```
2577const char* OH_MD_KEY_VIDEO_CROP_BOTTOM
2578```
2579**描述**
2580描述裁剪矩形底部坐标(y)值的键,值类型为int32_t。 包含裁剪框底部的行,行索引从0开始。该键只用于视频解码。
2581
2582**系统能力:** SystemCapability.Multimedia.Media.CodecBase
2583
2584**起始版本:** 12
2585
2586
2587### OH_MD_KEY_VIDEO_CROP_LEFT
2588
2589```
2590const char* OH_MD_KEY_VIDEO_CROP_LEFT
2591```
2592**描述**
2593描述裁剪矩形左坐标(x)值的键,值类型为int32_t。包含裁剪框最左边的列,列索引从0开始。该键只用于视频解码。
2594
2595**系统能力:** SystemCapability.Multimedia.Media.CodecBase
2596
2597**起始版本:** 12
2598
2599
2600### OH_MD_KEY_VIDEO_CROP_RIGHT
2601
2602```
2603const char* OH_MD_KEY_VIDEO_CROP_RIGHT
2604```
2605**描述**
2606描述裁剪矩形右坐标(x)值的键,值类型为int32_t。包含裁剪框最右边的列,列索引从0开始。该键只用于视频解码。
2607
2608**系统能力:** SystemCapability.Multimedia.Media.CodecBase
2609
2610**起始版本:** 12
2611
2612
2613### OH_MD_KEY_VIDEO_CROP_TOP
2614
2615```
2616const char* OH_MD_KEY_VIDEO_CROP_TOP
2617```
2618**描述**
2619描述裁剪矩形顶部坐标(y)值的键,值类型为int32_t。 包含裁剪框顶部的行,行索引从0开始。该键只用于视频解码。
2620
2621**系统能力:** SystemCapability.Multimedia.Media.CodecBase
2622
2623**起始版本:** 12
2624
2625
2626### OH_MD_KEY_VIDEO_ENABLE_LOW_LATENCY
2627
2628```
2629const char* OH_MD_KEY_VIDEO_ENABLE_LOW_LATENCY
2630```
2631**描述**
2632使能低时延视频编解码的键,值类型为int32_t,1表示使能,0表示其它情况。该键是可选的,在Configure阶段使用。
2633
2634如果使能,则视频编码器或视频解码器持有的输入和输出数据不会超过编解码器标准所要求的数量。
2635
2636若平台支持,当使能此接口时,视频解码器将按照解码序输出帧。
2637
2638
2639**系统能力:** SystemCapability.Multimedia.Media.CodecBase
2640
2641**起始版本:** 12
2642
2643
2644### OH_MD_KEY_VIDEO_ENCODE_BITRATE_MODE
2645
2646```
2647const char* OH_MD_KEY_VIDEO_ENCODE_BITRATE_MODE
2648```
2649**描述**
2650视频编码码率模式,值类型为int32_t,请参见[OH_BitrateMode](#oh_bitratemode-1)。
2651
2652**系统能力:** SystemCapability.Multimedia.Media.CodecBase
2653
2654**起始版本:** 9
2655
2656### OH_MD_KEY_VIDEO_ENCODER_ENABLE_TEMPORAL_SCALABILITY
2657
2658```
2659const char* OH_MD_KEY_VIDEO_ENCODER_ENABLE_TEMPORAL_SCALABILITY
2660```
2661**描述**
2662使能分层编码的键,值类型为int32_t,1表示使能,0表示其它情况。
2663
2664使用前可以通过[OH_AVCapability_IsFeatureSupported](_a_v_capability.md#oh_avcapability_isfeaturesupported)接口和枚举值
2665[VIDEO_ENCODER_TEMPORAL_SCALABILITY](_a_v_capability.md#oh_avcapabilityfeature-1)来查询当前视频编码器是否支持分层编码。
2666详情请参见:[时域可分层视频编码](../../media/avcodec/video-encoding-temporal-scalability.md#接口介绍)。
2667
2668该键是可选的且只用于视频编码,在Configure阶段使用。
2669
2670**系统能力:** SystemCapability.Multimedia.Media.CodecBase
2671
2672**起始版本:** 12
2673
2674
2675### OH_MD_KEY_VIDEO_ENCODER_LTR_FRAME_COUNT
2676
2677```
2678const char* OH_MD_KEY_VIDEO_ENCODER_LTR_FRAME_COUNT
2679```
2680**描述**
2681描述长期参考帧个数的键,值类型为int32_t,必须在支持的值范围内使用。
2682
2683使用前可以通过[OH_AVCapability_GetFeatureProperties](_a_v_capability.md#oh_avcapability_getfeatureproperties)接口和枚举值[VIDEO_ENCODER_LONG_TERM_REFERENCE](_a_v_capability.md#oh_avcapabilityfeature-1)来查询支持的LTR数目。
2684
2685该键是可选的且只用于视频编码,在Configure阶段使用。
2686
2687详情请参见:[时域可分层视频编码](../../media/avcodec/video-encoding-temporal-scalability.md#接口介绍-1)。
2688
2689**系统能力:** SystemCapability.Multimedia.Media.CodecBase
2690
2691**起始版本:** 12
2692
2693
2694### OH_MD_KEY_VIDEO_ENCODER_PER_FRAME_MARK_LTR
2695
2696```
2697const char* OH_MD_KEY_VIDEO_ENCODER_PER_FRAME_MARK_LTR
2698```
2699**描述**
2700标记当前帧为长期参考帧的键,值类型为int32_t,1表示被标记,0表示其它情况。
2701
2702只在长期参考帧个数被配置后生效。
2703
2704该键是可选的且只用于视频编码输入轮转中,配置后立即生效。
2705
2706详情请参见:[时域可分层视频编码](../../media/avcodec/video-encoding-temporal-scalability.md#接口介绍-1)。
2707
2708**系统能力:** SystemCapability.Multimedia.Media.CodecBase
2709
2710**起始版本:** 12
2711
2712
2713### OH_MD_KEY_VIDEO_ENCODER_PER_FRAME_USE_LTR
2714
2715```
2716const char* OH_MD_KEY_VIDEO_ENCODER_PER_FRAME_USE_LTR
2717```
2718**描述**
2719描述当前帧参考的长期参考帧帧的POC号的键,值类型为int32_t。
2720
2721该键是可选的且只用于视频编码输入轮转中,配置后立即生效。
2722
2723详情请参见:[时域可分层视频编码](../../media/avcodec/video-encoding-temporal-scalability.md#接口介绍-1)。
2724
2725**系统能力:** SystemCapability.Multimedia.Media.CodecBase
2726
2727**起始版本:** 12
2728
2729
2730### OH_MD_KEY_VIDEO_ENCODER_QP_MAX
2731
2732```
2733const char* OH_MD_KEY_VIDEO_ENCODER_QP_MAX
2734```
2735**描述**
2736描述视频编码器允许的最大量化参数的键,值类型为int32_t。
2737
2738Configure/setparameter阶段使用,或随帧立即生效。
2739
2740**系统能力:** SystemCapability.Multimedia.Media.CodecBase
2741
2742**起始版本:** 12
2743
2744
2745### OH_MD_KEY_VIDEO_ENCODER_QP_MIN
2746
2747```
2748const char* OH_MD_KEY_VIDEO_ENCODER_QP_MIN
2749```
2750**描述**
2751描述视频编码器允许的最小量化参数的键,值类型为int32_t。
2752
2753Configure/setparameter阶段使用,或随帧立即生效。
2754
2755**系统能力:** SystemCapability.Multimedia.Media.CodecBase
2756
2757**起始版本:** 12
2758
2759
2760### OH_MD_KEY_VIDEO_ENCODER_QP_AVERAGE
2761
2762```
2763const char* OH_MD_KEY_VIDEO_ENCODER_QP_AVERAGE
2764```
2765**描述**
2766描述视频帧平均量化参数的键,值类型为int32_t。
2767
2768表示当前帧编码块的平均qp值,随[OH_AVBuffer](_core.md#oh_avbuffer)输出。
2769
2770**系统能力:** SystemCapability.Multimedia.Media.CodecBase
2771
2772**起始版本:** 12
2773
2774
2775### OH_MD_KEY_VIDEO_ENCODER_MSE
2776
2777```
2778const char* OH_MD_KEY_VIDEO_ENCODER_MSE
2779```
2780**描述**
2781描述视频帧平方误差的键,值类型为double。
2782
2783表示当前帧编码块的MSE统计值,随[OH_AVBuffer](_core.md#oh_avbuffer)输出。
2784
2785**系统能力:** SystemCapability.Multimedia.Media.CodecBase
2786
2787**起始版本:** 12
2788
2789
2790### OH_MD_KEY_VIDEO_ENCODER_TEMPORAL_GOP_REFERENCE_MODE
2791
2792```
2793const char* OH_MD_KEY_VIDEO_ENCODER_TEMPORAL_GOP_REFERENCE_MODE
2794```
2795**描述**
2796描述图片组内参考模式的键,值类型为int32_t,请参见[OH_TemporalGopReferenceMode](#oh_temporalgopreferencemode),只在使能分层编码时生效。
2797
2798该键是可选的且只用于视频编码,在Configure阶段使用。
2799
2800**系统能力:** SystemCapability.Multimedia.Media.CodecBase
2801
2802**起始版本:** 12
2803
2804
2805### OH_MD_KEY_VIDEO_ENCODER_TEMPORAL_GOP_SIZE
2806
2807```
2808const char* OH_MD_KEY_VIDEO_ENCODER_TEMPORAL_GOP_SIZE
2809```
2810**描述**
2811描述图片组基本层图片的间隔大小的键,值类型为int32_t,只在使能分层编码时生效。
2812
2813该键是可选的且只用于视频编码,在Configure阶段使用。
2814
2815**系统能力:** SystemCapability.Multimedia.Media.CodecBase
2816
2817**起始版本:** 12
2818
2819
2820### OH_MD_KEY_VIDEO_IS_HDR_VIVID
2821
2822```
2823const char* OH_MD_KEY_VIDEO_IS_HDR_VIVID
2824```
2825**描述**
2826媒体文件中的视频轨是否为HDR Vivid的键,支持封装和解封装,值类型为int32_t。
2827
28281代表是HDR Vivid视频轨,0表示其他情况。
2829
2830**系统能力:** SystemCapability.Multimedia.Media.CodecBase
2831
2832**起始版本:** 11
2833
2834
2835### OH_MD_KEY_DECODING_TIMESTAMP
2836
2837```
2838const char* OH_MD_KEY_DECODING_TIMESTAMP
2839```
2840**描述**
2841AVBuffer中携带的音视频或字幕的sample对应的解码时间戳的键,以微秒为单位,值类型为int64_t。
2842
2843**系统能力:** SystemCapability.Multimedia.Media.CodecBase
2844
2845**起始版本:** 12
2846
2847
2848### OH_MD_KEY_BUFFER_DURATION
2849
2850```
2851const char* OH_MD_KEY_BUFFER_DURATION
2852```
2853**描述**
2854AVBuffer中携带的音视频或字幕的sample对应的持续时间的键,以微秒为单位,值类型为int64_t。
2855
2856**系统能力:** SystemCapability.Multimedia.Media.CodecBase
2857
2858**起始版本:** 12
2859
2860
2861### OH_MD_KEY_START_TIME
2862
2863```
2864const char* OH_MD_KEY_START_TIME
2865```
2866**描述**
2867媒体文件中第一帧起始位置开始时间的键,以微秒为单位,值类型为int64_t。
2868
2869**系统能力:** SystemCapability.Multimedia.Media.CodecBase
2870
2871**起始版本:** 12
2872
2873### OH_MD_KEY_TRACK_START_TIME
2874
2875```
2876const char* OH_MD_KEY_TRACK_START_TIME
2877```
2878**描述**
2879轨道开始时间的键,以微秒为单位,值类型为int64_t。
2880
2881**系统能力:** SystemCapability.Multimedia.Media.CodecBase
2882
2883**起始版本:** 12
2884
2885
2886### OH_MD_KEY_VIDEO_DECODER_OUTPUT_COLOR_SPACE
2887
2888```
2889const char* OH_MD_KEY_VIDEO_DECODER_OUTPUT_COLOR_SPACE
2890```
2891**描述**
2892设置视频解码器输出色彩空间的键,值类型为int32_t。
2893
2894支持的值为OH_COLORSPACE_BT709_LIMIT,请参见[OH_NativeBuffer_ColorSpace](../../reference/apis-arkgraphics2d/_o_h___native_buffer.md#oh_nativebuffer_colorspace-1)。
2895
2896在视频解码调用[OH_VideoDecoder_Configure](_video_decoder.md#oh_videodecoder_configure)接口时使用此接口。
2897
2898在启动OH_VideoDecoder_Start接口前,必须要先调用OH_VideoDecoder_Prepare接口。
2899
2900如果支持色彩空间转换功能并配置了此键,则视频解码器会自动将HDR Vivid视频转码为指定的色彩空间。
2901
2902如果不支持色彩空间转换功能,则接口[OH_VideoDecoder_Configure](_video_decoder.md#oh_videodecoder_configure)返回错误码[AV_ERR_VIDEO_UNSUPPORTED_COLOR_SPACE_CONVERSION](_core.md#oh_averrcode-1)。
2903
2904如果输入视频不是HDR Vivid视频,则会通过回调函数[OH_AVCodecOnError](#oh_avcodeconerror)报告错误码[AV_ERR_VIDEO_UNSUPPORTED_COLOR_SPACE_CONVERSION](_core.md#oh_averrcode-1)。
2905
2906**系统能力:** SystemCapability.Multimedia.Media.CodecBase
2907
2908**起始版本:** 12
2909
2910
2911### OH_MD_KEY_VIDEO_PER_FRAME_IS_LTR
2912
2913```
2914const char* OH_MD_KEY_VIDEO_PER_FRAME_IS_LTR
2915```
2916**描述**
2917当前OH_AVBuffer中输出的码流对应的帧是否为长期参考帧的键,值类型为int32_t,1表示是LTR,0表示其它情况。
2918
2919该键是可选的且只用于视频编码输出轮转中。
2920
2921表示帧的属性。
2922
2923**系统能力:** SystemCapability.Multimedia.Media.CodecBase
2924
2925**起始版本:** 12
2926
2927
2928### OH_MD_KEY_VIDEO_PER_FRAME_POC
2929
2930```
2931const char* OH_MD_KEY_VIDEO_PER_FRAME_POC
2932```
2933**描述**
2934描述帧的POC号的键,值类型为int32_t。
2935
2936该键是可选的且只用于视频编码输出轮转中。
2937
2938表示帧的属性。
2939
2940**系统能力:** SystemCapability.Multimedia.Media.CodecBase
2941
2942**起始版本:** 12
2943
2944
2945### OH_MD_KEY_VIDEO_PIC_HEIGHT
2946
2947```
2948const char* OH_MD_KEY_VIDEO_PIC_HEIGHT
2949```
2950**描述**
2951描述视频帧真实高度的键,值类型为int32_t。
2952
2953视频解码时调用[OH_VideoDecoder_GetOutputDescription](_video_decoder.md#oh_videodecoder_getoutputdescription)接口,可以从其返回的OH_AVFormat中解析出高度值。
2954
2955当解码输出码流<!--RP2--><!--RP2End-->变化时,也可从[OH_AVCodecOnStreamChanged](#oh_avcodeconstreamchanged)返回的OH_AVForamt实例中解析出高度值。
2956
2957从OH_AVForamt实例中解析出来的是对齐后的宽、高与调用Configure接口设置的OH_MD_KEY_WIDTH、OH_MD_KEY_HEIGHT不一样。
2958
2959width、height、wStride、hStride图像排布与使用示例请参考:[视频编码Buffer模式](../../media/avcodec/video-encoding.md#buffer模式)的“步骤-8”或[视频解码Buffer模式](../../media/avcodec/video-decoding.md#buffer模式)“步骤-10”。
2960
2961**系统能力:** SystemCapability.Multimedia.Media.CodecBase
2962
2963**起始版本:** 12
2964
2965
2966### OH_MD_KEY_VIDEO_PIC_WIDTH
2967
2968```
2969const char* OH_MD_KEY_VIDEO_PIC_WIDTH
2970```
2971**描述**
2972描述视频帧真实宽度的键,值类型为int32_t。
2973
2974视频解码时调用[OH_VideoDecoder_GetOutputDescription](_video_decoder.md#oh_videodecoder_getoutputdescription)接口,可以从其返回的OH_AVFormat中解析出宽度值。
2975
2976当解码输出码流<!--RP2--><!--RP2End-->变化时,也可从[OH_AVCodecOnStreamChanged](#oh_avcodeconstreamchanged)返回的OH_AVForamt实例中解析出宽度值。
2977
2978从OH_AVForamt实例中解析出来的是对齐后的宽、高与调用Configure接口设置的OH_MD_KEY_WIDTH、OH_MD_KEY_HEIGHT不一样。
2979
2980width、height、wStride、hStride图像排布与使用示例请参考:[视频编码Buffer模式](../../media/avcodec/video-encoding.md#buffer模式)的“步骤-8”或[视频解码Buffer模式](../../media/avcodec/video-decoding.md#buffer模式)“步骤-10”。
2981
2982**系统能力:** SystemCapability.Multimedia.Media.CodecBase
2983
2984**起始版本:** 12
2985
2986
2987### OH_MD_KEY_VIDEO_SLICE_HEIGHT
2988
2989```
2990const char* OH_MD_KEY_VIDEO_SLICE_HEIGHT
2991```
2992**描述**
2993描述视频帧高跨距的键,值类型为int32_t。
2994
2995高跨距是指从Y平面顶部到U平面顶部必须偏移的行数。本质上,U平面的偏移量是sliceHeight \* stride。
2996
2997U/V平面的高度可以根据颜色格式计算,尽管它通常是未定义的,并且取决于设备和版本。
2998
2999使用指导请参见:[视频编码Buffer模式](../../media/avcodec/video-encoding.md#buffer模式)的“步骤-3”。
3000
3001width、height、wStride、hStride图像排布与使用示例请参考:[视频编码Buffer模式](../../media/avcodec/video-encoding.md#buffer模式)的“步骤-8”或[视频解码Buffer模式](../../media/avcodec/video-decoding.md#buffer模式)“步骤-10”。
3002
3003**系统能力:** SystemCapability.Multimedia.Media.CodecBase
3004
3005**起始版本:** 12
3006
3007
3008### OH_MD_KEY_VIDEO_STRIDE
3009
3010```
3011const char* OH_MD_KEY_VIDEO_STRIDE
3012```
3013**描述**
3014描述视频帧宽跨距的键,值类型为int32_t。
3015
3016宽跨距是像素的索引与正下方像素的索引之间的差。
3017
3018对于YUV420格式,宽跨距对应于Y平面,U和V平面的跨距可以根据颜色格式计算,但通常未定义,并且取决于设备和版本。
3019
3020使用指导请参见:[视频编码Buffer模式](../../media/avcodec/video-encoding.md#buffer模式)的“步骤-3”。
3021
3022width、height、wStride、hStride图像排布与使用示例请参考:[视频编码Buffer模式](../../media/avcodec/video-encoding.md#buffer模式)的“步骤-8”或[视频解码Buffer模式](../../media/avcodec/video-decoding.md#buffer模式)“步骤-10”。
3023
3024**系统能力:** SystemCapability.Multimedia.Media.CodecBase
3025
3026**起始版本:** 12
3027
3028
3029### OH_MD_KEY_WIDTH
3030
3031```
3032const char* OH_MD_KEY_WIDTH
3033```
3034**描述**
3035视频宽度的键,值类型为int32_t。
3036
3037在视频编解码流程中调用Configure接口时,使用此接口来设置视频帧的显示宽度。
3038
3039使用指导请参见:[视频编码](../../media/avcodec/video-encoding.md)中的Surface模式的“步骤-5”或Buffer模式“步骤-4”。
3040
3041**系统能力:** SystemCapability.Multimedia.Media.CodecBase
3042
3043**起始版本:** 9
3044
3045
3046### OH_MD_MAX_INPUT_BUFFER_COUNT
3047
3048```
3049const char* OH_MD_MAX_INPUT_BUFFER_COUNT
3050```
3051**描述**
3052最大输入缓冲区个数的键,值类型为int32_t。
3053
3054**系统能力:** SystemCapability.Multimedia.Media.CodecBase
3055
3056**起始版本:** 10
3057
3058
3059### OH_MD_MAX_OUTPUT_BUFFER_COUNT
3060
3061```
3062const char* OH_MD_MAX_OUTPUT_BUFFER_COUNT
3063```
3064**描述**
3065最大输出缓冲区个数的键,值类型int32_t。
3066
3067**系统能力:** SystemCapability.Multimedia.Media.CodecBase
3068
3069**起始版本:** 10
3070
3071
3072### OH_MD_KEY_VIDEO_SAR
3073
3074```
3075const char* OH_MD_KEY_VIDEO_SAR
3076```
3077**描述**
3078样本长宽比的键,值类型为double。
3079
3080**系统能力:** SystemCapability.Multimedia.Media.CodecBase
3081
3082**起始版本:** 12
3083
3084
3085### OH_MD_KEY_CREATION_TIME
3086
3087```
3088const char* OH_MD_KEY_CREATION_TIME
3089```
3090**描述**
3091媒体文件创建时间的元数据,值类型为string。使用ISO 8601标准的时间格式且为UTC时间,时间格式参考:"2024-12-28T00:00:00:000000Z"。
3092
3093**系统能力:** SystemCapability.Multimedia.Media.CodecBase
3094
3095**起始版本:** 14
3096
3097### OH_MD_KEY_VIDEO_DECODER_OUTPUT_ENABLE_VRR
3098
3099```
3100const char* OH_MD_KEY_VIDEO_DECODER_OUTPUT_ENABLE_VRR
3101```
3102**描述**
3103解码器是否打开视频可变帧率功能的键,值类型为int32_t。1代表使能视频可变帧率功能,0代表不使能。
3104
3105**系统能力:** SystemCapability.Multimedia.Media.CodecBase
3106
3107**起始版本:** 15
3108
3109### OH_MD_KEY_VIDEO_ENCODER_REPEAT_PREVIOUS_FRAME_AFTER
3110
3111```
3112const char* OH_MD_KEY_VIDEO_ENCODER_REPEAT_PREVIOUS_FRAME_AFTER
3113```
3114**描述**
3115如果在上一帧提交给编码器之后没有新的帧可用,则会以毫秒为单位重复提交最后一帧,值类型为int32_t。
3116
3117该键只用于视频编码Surface模式,在Configure阶段使用。
3118
3119| 配置的值 | 描述 |
3120| -------- | -------- |
3121| 小于等于0 | Configure阶段会被拦截,返回ERROR AV_ERR_INVALID_VAL。  |
3122| 大于0|  如果在上一帧提交给编码器之后没有新的帧可用,则会以毫秒为单位重复提交最后一帧。 |
3123
3124**系统能力:** SystemCapability.Multimedia.Media.CodecBase
3125
3126**起始版本:** 18
3127
3128
3129### OH_MD_KEY_VIDEO_ENCODER_REPEAT_PREVIOUS_MAX_COUNT
3130
3131```
3132const char* OH_MD_KEY_VIDEO_ENCODER_REPEAT_PREVIOUS_MAX_COUNT
3133```
3134**描述**
3135描述编码器在没有新的帧可用的情况下,可以对之前的帧进行重复编码的最大次数,值类型为int32_t。
3136
3137该键仅在[OH_MD_KEY_VIDEO_ENCODER_REPEAT_PREVIOUS_FRAME_AFTER](#oh_md_key_video_encoder_repeat_previous_frame_after)可用时生效,在Configure阶段使用。
3138
3139| 配置的值 | 描述 |
3140| -------- | -------- |
3141| 0  | Configure阶段会被拦截,返回ERROR AV_ERR_INVALID_VAL。  |
3142| 小于0 | 在没有新的帧提交给编码器的这段时间内,编码器会一直重复编上一帧,直到达到系统上限。  |
3143| 大于0|  在没有新的帧提交给编码器的这段时间内,最多可以重复编码的帧数。 |
3144
3145**系统能力:** SystemCapability.Multimedia.Media.CodecBase
3146
3147**起始版本:** 18