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 << 0U,<br/>FRONT_RIGHT = 1ULL << 1U,<br/>FRONT_CENTER = 1ULL << 2U,<br/>LOW_FREQUENCY = 1ULL << 3U,<br/>BACK_LEFT = 1ULL << 4U,<br/>BACK_RIGHT = 1ULL << 5U,<br/>FRONT_LEFT_OF_CENTER = 1ULL << 6U,<br/>FRONT_RIGHT_OF_CENTER = 1ULL << 7U,<br/>BACK_CENTER = 1ULL << 8U,<br/>SIDE_LEFT = 1ULL << 9U,<br/>SIDE_RIGHT = 1ULL << 10U,<br/>TOP_CENTER = 1ULL << 11U,<br/>TOP_FRONT_LEFT = 1ULL << 12U,<br/>TOP_FRONT_CENTER = 1ULL << 13U,<br/>TOP_FRONT_RIGHT = 1ULL << 14U,<br/>TOP_BACK_LEFT = 1ULL << 15U,<br/>TOP_BACK_CENTER = 1ULL << 16U,<br/>TOP_BACK_RIGHT = 1ULL << 17U,<br/>STEREO_LEFT = 1ULL << 29U,<br/>STEREO_RIGHT = 1ULL << 30U,<br/>WIDE_LEFT = 1ULL << 31U,<br/>WIDE_RIGHT = 1ULL << 32U,<br/>SURROUND_DIRECT_LEFT = 1ULL << 33U,<br/>SURROUND_DIRECT_RIGHT = 1ULL << 34U,<br/>LOW_FREQUENCY_2 = 1ULL << 35U,<br/>TOP_SIDE_LEFT = 1ULL << 36U,<br/>TOP_SIDE_RIGHT = 1ULL << 37U,<br/>BOTTOM_FRONT_CENTER = 1ULL << 38U,<br/>BOTTOM_FRONT_LEFT = 1ULL << 39U,<br/>BOTTOM_FRONT_RIGHT = 1ULL << 40U,<br/>AMBISONICS_ACN0 = 1ULL << 41U,<br/>AMBISONICS_ACN1 = 1ULL << 42U,<br/>AMBISONICS_ACN2 = 1ULL << 43U,<br/>AMBISONICS_ACN3 = 1ULL << 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 << 45U,<br/>AMBISONICS_ACN5 = 1ULL << 46U,<br/>AMBISONICS_ACN6 = 1ULL << 47U,<br/>AMBISONICS_ACN7 = 1ULL << 48U,<br/>AMBISONICS_ACN8 = 1ULL << 49U,<br/>AMBISONICS_ACN9 = 1ULL << 50U,<br/>AMBISONICS_ACN10 = 1ULL << 51U,<br/>AMBISONICS_ACN11 = 1ULL << 52U,<br/>AMBISONICS_ACN12 = 1ULL << 53U,<br/>AMBISONICS_ACN13 = 1ULL << 54U,<br/>AMBISONICS_ACN14 = 1ULL << 55U,<br/>AMBISONICS_ACN15 = 1ULL << 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 2738在Configure/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 2753在Configure/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