1# CodecBase 2 3 4## 概述 5 6CodecBase模块提供用于音视频封装、解封装、编解码基础功能的变量、属性以及函数。 7 8**系统能力:** SystemCapability.Multimedia.Media.CodecBase 9 10**起始版本:** 9 11 12 13## 汇总 14 15 16### 文件 17 18| 名称 | 描述 | 19| -------- | -------- | 20| [avcodec_audio_channel_layout.h](avcodec__audio__channel__layout_8h.md) | 声明用于音频编解码的枚举。 | 21| [native_avcodec_base.h](native__avcodec__base_8h.md) | 声明用于音视频封装、解封装、编解码基础功能的Native API。 | 22 23 24### 结构体 25 26| 名称 | 描述 | 27| -------- | -------- | 28| struct [OH_AVCodecAsyncCallback](_o_h___a_v_codec_async_callback.md) | OH_AVCodec中所有异步回调函数指针的集合。 | 29| struct [OH_AVCodecCallback](_o_h___a_v_codec_callback.md) | OH_AVCodec中所有异步回调函数指针的集合。 | 30 31 32### 类型定义 33 34| 名称 | 描述 | 35| -------- | -------- | 36| typedef void(\* [OH_AVCodecOnError](#oh_avcodeconerror)) (OH_AVCodec \*codec, int32_t errorCode, void \*userData) | 当OH_AVCodec实例运行出错时,会调用来上报具体的错误信息的函数指针。 | 37| typedef void(\* [OH_AVCodecOnStreamChanged](#oh_avcodeconstreamchanged)) (OH_AVCodec \*codec, OH_AVFormat \*format, void \*userData) | 当输出码流发生变化时,将调用此函数指针报告新的流描述信息。 | 38| typedef void(\* [OH_AVCodecOnNeedInputData](#oh_avcodeconneedinputdata)) (OH_AVCodec \*codec, uint32_t index, OH_AVMemory \*data, void \*userData) | 当OH_AVCodec在运行过程中需要新的输入数据时,将调用此函数指针,并携带可用的缓冲区来填充新的输入数据。 | 39| typedef void(\* [OH_AVCodecOnNewOutputData](#oh_avcodeconnewoutputdata)) (OH_AVCodec \*codec, uint32_t index, OH_AVMemory \*data, [OH_AVCodecBufferAttr](_o_h___a_v_codec_buffer_attr.md) \*attr, void \*userData) | 当OH_AVCodec运行过程中生成新的输出数据时,将调用此函数指针,并携带包含新输出数据的缓冲区。 | 40| typedef void(\* [OH_AVCodecOnNeedInputBuffer](#oh_avcodeconneedinputbuffer)) (OH_AVCodec \*codec, uint32_t index, OH_AVBuffer \*buffer, void \*userData) | 当OH_AVCodec在运行过程中需要新的输入数据时,将调用此函数指针,并携带可用的缓冲区来填充新的输入数据。 | 41| typedef void(\* [OH_AVCodecOnNewOutputBuffer](#oh_avcodeconnewoutputbuffer)) (OH_AVCodec \*codec, uint32_t index, OH_AVBuffer \*buffer, void \*userData) | 当OH_AVCodec运行过程中生成新的输出数据时,将调用此函数指针,并携带包含新输出数据的缓冲区。 | 42| typedef struct [OH_AVCodecAsyncCallback](_o_h___a_v_codec_async_callback.md)[OH_AVCodecAsyncCallback](#oh_avcodecasynccallback) | OH_AVCodec中所有异步回调函数指针的集合。 | 43| typedef struct [OH_AVCodecCallback](_o_h___a_v_codec_callback.md)[OH_AVCodecCallback](#oh_avcodeccallback) | OH_AVCodec中所有异步回调函数指针的集合。 | 44| typedef enum [OH_MediaType](#oh_mediatype)[OH_MediaType](#oh_mediatype) | 媒体类型。 | 45| typedef enum [OH_AACProfile](#oh_aacprofile)[OH_AACProfile](#oh_aacprofile) | AAC配置。 | 46| typedef enum [OH_AVCProfile](#oh_avcprofile)[OH_AVCProfile](#oh_avcprofile) | AVC配置。 | 47| typedef enum [OH_HEVCProfile](#oh_hevcprofile)[OH_HEVCProfile](#oh_hevcprofile) | HEVC配置。 | 48| typedef enum [OH_AVOutputFormat](#oh_avoutputformat)[OH_AVOutputFormat](#oh_avoutputformat) | 枚举封装器的输出文件格式。 | 49| typedef enum [OH_AVSeekMode](#oh_avseekmode)[OH_AVSeekMode](#oh_avseekmode) | 跳转模式。 | 50| typedef enum [OH_ScalingMode](#oh_scalingmode)[OH_ScalingMode](#oh_scalingmode) | 缩放模式。 | 51| typedef enum [OH_BitsPerSample](#oh_bitspersample)[OH_BitsPerSample](#oh_bitspersample) | 枚举每个编码样本的音频位数。 | 52| typedef enum [OH_ColorPrimary](#oh_colorprimary)[OH_ColorPrimary](#oh_colorprimary) | 色域。 | 53| typedef enum [OH_TransferCharacteristic](#oh_transfercharacteristic)[OH_TransferCharacteristic](#oh_transfercharacteristic) | 转移特性。 | 54| typedef enum [OH_MatrixCoefficient](#oh_matrixcoefficient)[OH_MatrixCoefficient](#oh_matrixcoefficient) | 矩阵系数。 | 55 56 57### 枚举 58 59| 名称 | 描述 | 60| -------- | -------- | 61| [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的变量。 | 62| [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/>} | 音频声道数类型, 将用户申请的解码器输出格式表示为编解码器的声道类型。 | 63| [OH_MediaType](#oh_mediatype) {<br/>MEDIA_TYPE_AUD = 0,<br/>MEDIA_TYPE_VID = 1<br/>} | 媒体类型。 | 64| [OH_AACProfile](#oh_aacprofile) { AAC_PROFILE_LC = 0 } | AAC配置。 | 65| [OH_AVCProfile](#oh_avcprofile) {<br/>AVC_PROFILE_BASELINE = 0,<br/>AVC_PROFILE_HIGH = 4,<br/>AVC_PROFILE_MAIN = 8<br/>} | AVC配置。 | 66| [OH_HEVCProfile](#oh_hevcprofile) {<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配置。 | 67| [OH_AVOutputFormat](#oh_avoutputformat) {<br/>AV_OUTPUT_FORMAT_DEFAULT = 0,<br/>AV_OUTPUT_FORMAT_MPEG_4 = 2,<br/>AV_OUTPUT_FORMAT_M4A = 6<br/>} | 枚举封装器的输出文件格式。 | 68| [OH_AVSeekMode](#oh_avseekmode) {<br/>SEEK_MODE_NEXT_SYNC = 0,<br/>SEEK_MODE_PREVIOUS_SYNC,<br/>SEEK_MODE_CLOSEST_SYNC<br/>} | 跳转模式。 | 69| [OH_ScalingMode](#oh_scalingmode) {<br/>SCALING_MODE_SCALE_TO_WINDOW = 1,<br/>SCALING_MODE_SCALE_CROP = 2<br/>} | 缩放模式。 | 70| [OH_BitsPerSample](#oh_bitspersample) {<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/>} | 枚举每个编码样本的音频位数。 | 71| [OH_ColorPrimary](#oh_colorprimary) {<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/>} | 色域。 | 72| [OH_TransferCharacteristic](#oh_transfercharacteristic) {<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/>} | 转移特性。 | 73| [OH_MatrixCoefficient](#oh_matrixcoefficient) {<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/>} | 矩阵系数。 | 74 75 76### 变量 77 78| 名称 | 描述 | 79| -------- | -------- | 80| const char \* [OH_AVCODEC_MIMETYPE_VIDEO_AVC](#oh_avcodec_mimetype_video_avc) | AVC(H.264)视频编解码器的MIME类型。 | 81| const char \* [OH_AVCODEC_MIMETYPE_AUDIO_AAC](#oh_avcodec_mimetype_audio_aac) | AAC音频编解码器的MIME类型。 | 82| const char \* [OH_AVCODEC_MIMETYPE_AUDIO_FLAC](#oh_avcodec_mimetype_audio_flac) | FLAC音频编解码器的MIME类型。 | 83| const char \* [OH_AVCODEC_MIMETYPE_AUDIO_VORBIS](#oh_avcodec_mimetype_audio_vorbis) | VORBIS音频解码器的MIME类型。 | 84| const char \* [OH_AVCODEC_MIMETYPE_AUDIO_MPEG](#oh_avcodec_mimetype_audio_mpeg) | MP3音频解码器的MIME类型。 | 85| const char \* [OH_AVCODEC_MIMETYPE_VIDEO_HEVC](#oh_avcodec_mimetype_video_hevc) | HEVC(H.265)视频编解码器的MIME类型。 | 86| const char \* [OH_AVCODEC_MIMETYPE_VIDEO_MPEG4](#oh_avcodec_mimetype_video_mpeg4) | MPEG4视频编码的MIME类型,仅用于封装MPEG4视频码流使用。 | 87| const char \* [OH_AVCODEC_MIMETYPE_IMAGE_JPG](#oh_avcodec_mimetype_image_jpg) | JPG图片编码的MIME类型,仅用于封装JPG封面时使用。 | 88| const char \* [OH_AVCODEC_MIMETYPE_IMAGE_PNG](#oh_avcodec_mimetype_image_png) | PNG图片编码的MIME类型,仅用于封装PNG封面时使用。 | 89| const char \* [OH_AVCODEC_MIMETYPE_IMAGE_BMP](#oh_avcodec_mimetype_image_bmp) | BMP图片编码的MIME类型,仅用于封装BMP封面时使用。 | 90| const char \* [OH_AVCODEC_MIMETYPE_AUDIO_VIVID](#oh_avcodec_mimetype_audio_vivid) | AudioVivid音频解码器的MIME类型。(此规格暂未开放) | 91| const char \* [OH_AVCODEC_MIMETYPE_AUDIO_AMR_NB](#oh_avcodec_mimetype_audio_amr_nb) | AMR_NB音频解码器的MIME类型。 | 92| const char \* [OH_AVCODEC_MIMETYPE_AUDIO_AMR_WB](#oh_avcodec_mimetype_audio_amr_wb) | AMR_WB音频解码器的MIME类型。 | 93| const char \* [OH_AVCODEC_MIMETYPE_AUDIO_OPUS](#oh_avcodec_mimetype_audio_opus) | OPUS音频编解码器的MIME类型。(此规格暂未开放) | 94| const char \* [OH_AVCODEC_MIMETYPE_AUDIO_G711MU](#oh_avcodec_mimetype_audio_g711mu) | G711MU音频编解码器的MIME类型。 | 95| const char \* [OH_ED_KEY_TIME_STAMP](#oh_ed_key_time_stamp) | 表面的额外数据中时间戳的键,值类型为int64。 | 96| const char \* [OH_ED_KEY_EOS](#oh_ed_key_eos) | 表面的额外数据中流结束符的键,值类型为bool。 | 97| const char \* [OH_MD_KEY_TRACK_TYPE](#oh_md_key_track_type) | 曲目类型的键,值类型为uint8_t,请参见[OH_MediaType](#oh_mediatype)。 | 98| const char \* [OH_MD_KEY_CODEC_MIME](#oh_md_key_codec_mime) | 编解码器mime类型的键,值类型为string。 | 99| const char \* [OH_MD_KEY_DURATION](#oh_md_key_duration) | 持续时间键,值类型为int64_t。 | 100| const char \* [OH_MD_KEY_BITRATE](#oh_md_key_bitrate) | 比特率的键,值类型为int64_t。 | 101| const char \* [OH_MD_KEY_MAX_INPUT_SIZE](#oh_md_key_max_input_size) | 最大输入大小的键,值类型为uint32_t。 | 102| const char \* [OH_MD_KEY_WIDTH](#oh_md_key_width) | 视频宽度的键,值类型为uint32_t。 | 103| const char \* [OH_MD_KEY_HEIGHT](#oh_md_key_height) | 视频高度键,值类型为uint32_t。 | 104| const char \* [OH_MD_KEY_PIXEL_FORMAT](#oh_md_key_pixel_format) | 视频像素格式的键,值类型为int32_t,请参见[OH_AVPixelFormat](_core.md#oh_avpixelformat)。 | 105| const char \* [OH_MD_KEY_AUDIO_SAMPLE_FORMAT](#oh_md_key_audio_sample_format) | 音频原始格式的键,值类型为uint32_t。 | 106| const char \* [OH_MD_KEY_FRAME_RATE](#oh_md_key_frame_rate) | 视频帧率的键,值类型为double。 | 107| const char \* [OH_MD_KEY_VIDEO_ENCODE_BITRATE_MODE](#oh_md_key_video_encode_bitrate_mode) | 视频编码码率模式,值类型为int32_t,请参见[OH_VideoEncodeBitrateMode](_video_encoder.md#oh_videoencodebitratemode)。 | 108| const char \* [OH_MD_KEY_PROFILE](#oh_md_key_profile) | 编码模板,值类型为数字,请参见[OH_HEVCProfile](#oh_hevcprofile), [OH_AACProfile](#oh_aacprofile)。 | 109| const char \* [OH_MD_KEY_AUD_CHANNEL_COUNT](#oh_md_key_aud_channel_count) | 音频通道计数键,值类型为uint32_t。 | 110| const char \* [OH_MD_KEY_AUD_SAMPLE_RATE](#oh_md_key_aud_sample_rate) | 音频采样率键,值类型为uint32_t。 | 111| const char \* [OH_MD_KEY_I_FRAME_INTERVAL](#oh_md_key_i_frame_interval) | 关键帧间隔的键,值类型为int32_t,单位为毫秒。 | 112| const char \* [OH_MD_KEY_ROTATION](#oh_md_key_rotation) | 表面旋转角度的键。值类型为int32_t:应为{0, 90, 180, 270},默认值为0。 | 113| const char \* [OH_MD_KEY_RANGE_FLAG](#oh_md_key_range_flag) | 视频YUV取值范围标志的键,值类型为bool。 | 114| const char \* [OH_MD_KEY_COLOR_PRIMARIES](#oh_md_key_color_primaries) | 视频色域的键, 值类型为int32_t, 请参见[OH_ColorPrimary](#oh_colorprimary)。 | 115| const char \* [OH_MD_KEY_TRANSFER_CHARACTERISTICS](#oh_md_key_transfer_characteristics) | 视频转移特性的键,值类型为int32_t,请参见[OH_TransferCharacteristic](#oh_transfercharacteristic)。 | 116| const char \* [OH_MD_KEY_MATRIX_COEFFICIENTS](#oh_md_key_matrix_coefficients) | 视频矩阵系数的键,值类型为int32_t,请参见[OH_MatrixCoefficient](#oh_matrixcoefficient)。 | 117| const char \* [OH_MD_KEY_REQUEST_I_FRAME](#oh_md_key_request_i_frame) | 请求立即编码I帧的键。值类型为bool。 | 118| const char \* [OH_MD_KEY_QUALITY](#oh_md_key_quality) | 所需编码质量的键。值类型为uint32_t,此键仅适用于配置在恒定质量模式下的编码器。 | 119| const char \* [OH_MD_KEY_CODEC_CONFIG](#oh_md_key_codec_config) | 编解码器特定数据的键,值类型为uint8_t\*。 | 120| const char \* [OH_MD_KEY_TITLE](#oh_md_key_title) | 源格式标题的键,值类型为string。 | 121| const char \* [OH_MD_KEY_ARTIST](#oh_md_key_artist) | 艺术家的源格式键,值类型为string。 | 122| const char \* [OH_MD_KEY_ALBUM](#oh_md_key_album) | 相册的源格式键,值类型为string。 | 123| const char \* [OH_MD_KEY_ALBUM_ARTIST](#oh_md_key_album_artist) | 相册艺术家的键,值类型为string。 | 124| const char \* [OH_MD_KEY_DATE](#oh_md_key_date) | 源格式日期的键,值类型为string。 | 125| const char \* [OH_MD_KEY_COMMENT](#oh_md_key_comment) | 源格式注释的键,值类型为string。 | 126| const char \* [OH_MD_KEY_GENRE](#oh_md_key_genre) | 源格式类型的键,值类型为string。 | 127| const char \* [OH_MD_KEY_COPYRIGHT](#oh_md_key_copyright) | 源格式版权的键,值类型为string。 | 128| const char \* [OH_MD_KEY_LANGUAGE](#oh_md_key_language) | 源格式语言的键,值类型为string。 | 129| const char \* [OH_MD_KEY_DESCRIPTION](#oh_md_key_description) | 源格式描述的键,值类型为string。 | 130| const char \* [OH_MD_KEY_LYRICS](#oh_md_key_lyrics) | 源格式歌词的键,值类型为string。 | 131| const char \* [OH_MD_KEY_TRACK_COUNT](#oh_md_key_track_count) | 源格式轨道数量的键,值类型为uint32_t。 | 132| const char \* [OH_MD_KEY_CHANNEL_LAYOUT](#oh_md_key_channel_layout) | 所需编码通道布局的键。值类型为int64_t,此键仅适用于编码器。 | 133| const char \* [OH_MD_KEY_BITS_PER_CODED_SAMPLE](#oh_md_key_bits_per_coded_sample) | 每个编码样本位数的键,值类型为uint32_t,支持flac编码器,请参见[OH_BitsPerSample](#oh_bitspersample)。 | 134| const char \* [OH_MD_KEY_AAC_IS_ADTS](#oh_md_key_aac_is_adts) | aac格式的键,值类型为uint32_t,aac解码器支持。 | 135| const char \* [OH_MD_KEY_SBR](#oh_md_key_sbr) | aac sbr模式的键,值类型为uint32_t,aac编码器支持。 | 136| const char \* [OH_MD_KEY_COMPLIANCE_LEVEL](#oh_md_key_compliance_level) | flac合规性级别的键,值类型为int32_t。 | 137| const char \* [OH_MD_KEY_IDENTIFICATION_HEADER](#oh_md_key_identification_header) | vorbis标识头的键,值类型为uint8_t\*,仅vorbis解码器支持。 | 138| const char \* [OH_MD_KEY_SETUP_HEADER](#oh_md_key_setup_header) | vorbis设置头的键,值类型为uint8_t\*,仅vorbis解码器支持。 | 139| const char \* [OH_MD_KEY_SCALING_MODE](#oh_md_key_scaling_mode) | 视频表面尺度类型, 值类型为int32_t, 请参见[OH_ScalingMode](#oh_scalingmode)。 | 140| const char \* [OH_MD_MAX_INPUT_BUFFER_COUNT](#oh_md_max_input_buffer_count) | 最大输入缓冲区个数的键, 值类型为int32_t。 | 141| const char \* [OH_MD_MAX_OUTPUT_BUFFER_COUNT](#oh_md_max_output_buffer_count) | 最大输出缓冲区个数的键, 值类型int32_t。 | 142| const char \* [OH_MD_KEY_AUDIO_COMPRESSION_LEVEL](#oh_md_key_audio_compression_level) | 音频编解码压缩水平的键,值类型为uint32_t。 | 143| const char \* [OH_MD_KEY_VIDEO_IS_HDR_VIVID](#oh_md_key_video_is_hdr_vivid) | 查询是否是hdr vivid的键,值类型为bool。 | 144| const char \* [OH_MD_KEY_AUDIO_OBJECT_NUMBER](#oh_md_key_audio_object_number) | 音频对象数目的键. 值类型为int32_t。 | 145| const char \* [OH_MD_KEY_AUDIO_VIVID_METADATA](#oh_md_key_audio_vivid_metadata) | audio vivid元数据的键,值类型为uint8_t\*。 | 146 147 148## 类型定义说明 149 150 151### OH_AACProfile 152 153``` 154typedef enum OH_AACProfileOH_AACProfile 155``` 156 157**描述** 158 159AAC配置。 160 161**系统能力:** SystemCapability.Multimedia.Media.CodecBase 162 163**起始版本:** 9 164 165 166### OH_AVCodecAsyncCallback 167 168``` 169typedef struct OH_AVCodecAsyncCallbackOH_AVCodecAsyncCallback 170``` 171 172**描述** 173 174OH_AVCodec中所有异步回调函数指针的集合。将该结构体的实例注册到OH_AVCodec实例中, 并处理回调上报的信息,以保证OH_AVCodec的正常运行。 175 176**系统能力:** SystemCapability.Multimedia.Media.CodecBase 177 178**起始版本:** 9 179 180**废弃版本:** 11 181 182**替代接口:**[OH_AVCodecCallback](#oh_avcodeccallback) 183 184**参数:** 185 186| 名称 | 描述 | 187| -------- | -------- | 188| onError | 监控编解码器操作错误,请参见[OH_AVCodecOnError](#oh_avcodeconerror)。 | 189| onStreamChanged | 监控编解码器流变化,请参见[OH_AVCodecOnStreamChanged](#oh_avcodeconstreamchanged)。 | 190| onNeedInputData | 监控编解码器需要输入数据,请参见[OH_AVCodecOnNeedInputData](#oh_avcodeconneedinputdata)。 | 191| onNeedOutputData | 监控编解码器已生成输出数据,请参见[OH_AVCodecOnNewOutputData](#oh_avcodeconnewoutputdata)。 | 192 193 194### OH_AVCodecCallback 195 196``` 197typedef struct OH_AVCodecCallbackOH_AVCodecCallback 198``` 199 200**描述** 201 202OH_AVCodec中所有异步回调函数指针的集合。将该结构体的实例注册到OH_AVCodec实例中, 并处理回调上报的信息,以保证OH_AVCodec的正常运行。 203 204**系统能力:** SystemCapability.Multimedia.Media.CodecBase 205 206**起始版本:** 11 207 208**参数:** 209 210| 名称 | 描述 | 211| -------- | -------- | 212| onError | 监控编解码器操作错误,请参见[OH_AVCodecOnError](#oh_avcodeconerror)。 | 213| onStreamChanged | 监控编解码器流变化,请参见[OH_AVCodecOnStreamChanged](#oh_avcodeconstreamchanged)。 | 214| onNeedInputBuffer | 监控编解码器需要输入数据,请参见[OH_AVCodecOnNeedInputBuffer](#oh_avcodeconneedinputbuffer)。 | 215| onNewOutputBuffer | 监控编解码器已生成输出数据,请参见[OH_AVCodecOnNewOutputBuffer](#oh_avcodeconnewoutputbuffer)。 | 216 217 218### OH_AVCodecOnError 219 220``` 221typedef void(* OH_AVCodecOnError) (OH_AVCodec *codec, int32_t errorCode, void *userData) 222``` 223 224**描述** 225 226当OH_AVCodec实例运行出错时,会调用来上报具体的错误信息的函数指针。 227 228**系统能力:** SystemCapability.Multimedia.Media.CodecBase 229 230**起始版本:** 9 231 232**参数:** 233 234| 名称 | 描述 | 235| -------- | -------- | 236| codec | OH_AVCodec实例。 | 237| errorCode | 特定错误代码。 | 238| userData | 用户特定数据。 | 239 240 241### OH_AVCodecOnNeedInputBuffer 242 243``` 244typedef void(* OH_AVCodecOnNeedInputBuffer) (OH_AVCodec *codec, uint32_t index, OH_AVBuffer *buffer, void *userData) 245``` 246 247**描述** 248 249当OH_AVCodec在运行过程中需要新的输入数据时,将调用此函数指针,并携带可用的缓冲区来填充新的输入数据。 250 251**系统能力:** SystemCapability.Multimedia.Media.CodecBase 252 253**起始版本:** 11 254 255**参数:** 256 257| 名称 | 描述 | 258| -------- | -------- | 259| codec | OH_AVCodec实例。 | 260| index | 与新可用的输入缓冲区相对应的索引。 | 261| buffer | 新的可用输入缓冲区。 | 262| userData | 用户特定数据。 | 263 264 265### OH_AVCodecOnNeedInputData 266 267``` 268typedef void(* OH_AVCodecOnNeedInputData) (OH_AVCodec *codec, uint32_t index, OH_AVMemory *data, void *userData) 269``` 270 271**描述** 272 273当OH_AVCodec在运行过程中需要新的输入数据时,将调用此函数指针,并携带可用的缓冲区来填充新的输入数据。 274 275**系统能力:** SystemCapability.Multimedia.Media.CodecBase 276 277**起始版本:** 9 278 279**废弃版本:** 11 280 281**替代接口:**[OH_AVCodecOnNeedInputBuffer](#oh_avcodeconneedinputbuffer) 282 283**参数:** 284 285| 名称 | 描述 | 286| -------- | -------- | 287| codec | OH_AVCodec实例。 | 288| index | 与新可用的输入缓冲区相对应的索引。 | 289| data | 新的可用输入缓冲区。 | 290| userData | 用户特定数据。 | 291 292 293### OH_AVCodecOnNewOutputBuffer 294 295``` 296typedef void(* OH_AVCodecOnNewOutputBuffer) (OH_AVCodec *codec, uint32_t index, OH_AVBuffer *buffer, void *userData) 297``` 298 299**描述** 300 301当OH_AVCodec运行过程中生成新的输出数据时,将调用此函数指针,并携带包含新输出数据的缓冲区。 302 303**系统能力:** SystemCapability.Multimedia.Media.CodecBase 304 305**起始版本:** 11 306 307**参数:** 308 309| 名称 | 描述 | 310| -------- | -------- | 311| codec | OH_AVCodec实例。 | 312| index | 与新输出缓冲区对应的索引。 | 313| buffer | 包含新输出数据的缓冲区。 | 314| userData | 用户特定数据。 | 315 316 317### OH_AVCodecOnNewOutputData 318 319``` 320typedef void(* OH_AVCodecOnNewOutputData) (OH_AVCodec *codec, uint32_t index, OH_AVMemory *data, OH_AVCodecBufferAttr *attr, void *userData) 321``` 322 323**描述** 324 325当OH_AVCodec运行过程中生成新的输出数据时,将调用此函数指针,并携带包含新输出数据的缓冲区。 需要注意的是,OH_AVCodecBufferAttr指针的生命周期仅在调用函数指针时有效,这将禁止调用结束后继续访问。 326 327**系统能力:** SystemCapability.Multimedia.Media.CodecBase 328 329**起始版本:** 9 330 331**废弃版本:** 11 332 333**替代接口:**[OH_AVCodecOnNewOutputBuffer](#oh_avcodeconnewoutputbuffer) 334 335**参数:** 336 337| 名称 | 描述 | 338| -------- | -------- | 339| codec | OH_AVCodec实例。 | 340| index | 与新输出缓冲区对应的索引。 | 341| data | 包含新输出数据的缓冲区。 | 342| attr | 新输出缓冲区的说明,请参见[OH_AVCodecBufferAttr](_o_h___a_v_codec_buffer_attr.md)。 | 343| userData | 用户特定数据。 | 344 345 346### OH_AVCodecOnStreamChanged 347 348``` 349typedef void(* OH_AVCodecOnStreamChanged) (OH_AVCodec *codec, OH_AVFormat *format, void *userData) 350``` 351 352**描述** 353 354当输出码流发生变化时,将调用此函数指针报告新的流描述信息。需要注意的是, OH_AVFormat指针的生命周期只有在函数指针被调用时才有效,调用结束后禁止继续访问。 355 356**系统能力:** SystemCapability.Multimedia.Media.CodecBase 357 358**起始版本:** 9 359 360**参数:** 361 362| 名称 | 描述 | 363| -------- | -------- | 364| codec | OH_AVCodec实例。 | 365| format | 新输出流描述信息。 | 366| userData | 用户特定数据。 | 367 368 369### OH_AVCProfile 370 371``` 372typedef enum OH_AVCProfileOH_AVCProfile 373``` 374 375**描述** 376 377AVC配置。 378 379**系统能力:** SystemCapability.Multimedia.Media.CodecBase 380 381**起始版本:** 9 382 383 384### OH_AVOutputFormat 385 386``` 387typedef enum OH_AVOutputFormatOH_AVOutputFormat 388``` 389 390**描述** 391 392枚举封装器的输出文件格式。 393 394**系统能力:** SystemCapability.Multimedia.Media.CodecBase 395 396**起始版本:** 10 397 398 399### OH_AVSeekMode 400 401``` 402typedef enum OH_AVSeekModeOH_AVSeekMode 403``` 404 405**描述** 406 407跳转模式。 408 409**系统能力:** SystemCapability.Multimedia.Media.CodecBase 410 411**起始版本:** 10 412 413 414### OH_BitsPerSample 415 416``` 417typedef enum OH_BitsPerSampleOH_BitsPerSample 418``` 419 420**描述** 421 422枚举每个编码样本的音频位数。 423 424**系统能力:** SystemCapability.Multimedia.Media.CodecBase 425 426**起始版本:** 10 427 428 429### OH_ColorPrimary 430 431``` 432typedef enum OH_ColorPrimaryOH_ColorPrimary 433``` 434 435**描述** 436 437色域。 438 439**系统能力:** SystemCapability.Multimedia.Media.CodecBase 440 441**起始版本:** 10 442 443 444### OH_HEVCProfile 445 446``` 447typedef enum OH_HEVCProfileOH_HEVCProfile 448``` 449 450**描述** 451 452HEVC配置。 453 454**系统能力:** SystemCapability.Multimedia.Media.CodecBase 455 456**起始版本:** 10 457 458 459### OH_MatrixCoefficient 460 461``` 462typedef enum OH_MatrixCoefficientOH_MatrixCoefficient 463``` 464 465**描述** 466 467矩阵系数。 468 469**系统能力:** SystemCapability.Multimedia.Media.CodecBase 470 471**起始版本:** 10 472 473 474### OH_MediaType 475 476``` 477typedef enum OH_MediaTypeOH_MediaType 478``` 479 480**描述** 481 482媒体类型。 483 484**系统能力:** SystemCapability.Multimedia.Media.CodecBase 485 486**起始版本:** 9 487 488 489### OH_ScalingMode 490 491``` 492typedef enum OH_ScalingModeOH_ScalingMode 493``` 494 495**描述** 496 497缩放模式。 498 499**系统能力:** SystemCapability.Multimedia.Media.CodecBase 500 501**起始版本:** 10 502 503 504### OH_TransferCharacteristic 505 506``` 507typedef enum OH_TransferCharacteristicOH_TransferCharacteristic 508``` 509 510**描述** 511 512转移特性。 513 514**系统能力:** SystemCapability.Multimedia.Media.CodecBase 515 516**起始版本:** 10 517 518 519## 枚举类型说明 520 521 522### AudioChannelLayout 523 524``` 525enum AudioChannelLayout : uint64_t 526``` 527 528**描述** 529 530音频声道数类型, 将用户申请的解码器输出格式表示为编解码器的声道类型。 531 532**系统能力:** SystemCapability.Multimedia.Media.CodecBase 533 534**起始版本:** 10 535 536**废弃版本:** 11 537 538**替代接口:**[OH_AudioChannelLayout](_core.md#oh_audiochannellayout) 539 540| 枚举值 | 描述 | 541| -------- | -------- | 542| UNKNOWN_CHANNEL_LAYOUT | 未知通道布局 | 543| MONO | 单通道布局 | 544| STEREO | 立体声布局 | 545| CH_2POINT1 | 2.1布局 | 546| CH_2_1 | 2_1布局 | 547| SURROUND | 环绕布局 | 548| CH_3POINT1 | 3.1布局 | 549| CH_4POINT0 | 4.0布局 | 550| CH_4POINT1 | 4.1布局 | 551| CH_2_2 | 2_2布局 | 552| QUAD | 四角形布局 | 553| CH_5POINT0 | 5.0布局 | 554| CH_5POINT1 | 5.1布局 | 555| CH_5POINT0_BACK | 5.0后置布局 | 556| CH_5POINT1_BACK | 5.1后置布局 | 557| CH_6POINT0 | 6.0布局 | 558| CH_6POINT0_FRONT | 6.0前置布局 | 559| HEXAGONAL | 六角形布局 | 560| CH_6POINT1 | 6.1布局 | 561| CH_6POINT1_BACK | 6.1后置布局 | 562| CH_6POINT1_FRONT | 6.1前置布局 | 563| CH_7POINT0 | 7.0布局 | 564| CH_7POINT0_FRONT | 7.0前置布局 | 565| CH_7POINT1 | 7.1布局 | 566| CH_7POINT1_WIDE | 7.1宽布局 | 567| CH_7POINT1_WIDE_BACK | 7.1后置宽布局 | 568| CH_3POINT1POINT2 | 3.1.2布局 | 569| CH_5POINT1POINT2 | 5.1.2布局 | 570| CH_5POINT1POINT4 | 5.1.4布局 | 571| CH_7POINT1POINT2 | 7.1.2布局 | 572| CH_7POINT1POINT4 | 7.1.4布局 | 573| CH_9POINT1POINT4 | 9.1.4布局 | 574| CH_9POINT1POINT6 | 9.1.6布局 | 575| CH_10POINT2 | 10.2布局 | 576| CH_22POINT2 | 22.2布局 | 577| OCTAGONAL | 八边形布局 | 578| HEXADECAGONAL | 十六边形布局 | 579| STEREO_DOWNMIX | 立体声下混布局 | 580| HOA_FIRST | 高阶立体声一阶布局 | 581| HOA_SECOND | 高阶立体声二阶布局 | 582| HOA_THIRD | 高阶立体声三阶布局 | 583 584 585### AudioChannelSet 586 587``` 588enum AudioChannelSet : uint64_t 589``` 590 591**描述** 592 593音频声道数集合, 将每一个声道数映射为int64的变量。 594 595**系统能力:** SystemCapability.Multimedia.Media.CodecBase 596 597**起始版本:** 10 598 599**废弃版本:** 11,请使用[OH_AudioChannelSet](_core.md#oh_audiochannelset)替代。 600 601| 枚举值 | 描述 | 602| -------- | -------- | 603| FRONT_LEFT | 左前声道 | 604| FRONT_RIGHT | 右前声道 | 605| FRONT_CENTER | 中前声道 | 606| LOW_FREQUENCY | 低频声道 | 607| BACK_LEFT | 左后声道 | 608| BACK_RIGHT | 右后声道 | 609| FRONT_LEFT_OF_CENTER | 左前中置声道 | 610| FRONT_RIGHT_OF_CENTER | 右前中置声道 | 611| BACK_CENTER | 后方中置声道 | 612| SIDE_LEFT | 左侧声道 | 613| SIDE_RIGHT | 右侧声道 | 614| TOP_CENTER | 上方中置声道 | 615| TOP_FRONT_LEFT | 上方左前声道 | 616| TOP_FRONT_CENTER | 上方中前声道 | 617| TOP_FRONT_RIGHT | 上方右前声道 | 618| TOP_BACK_LEFT | 上方左后声道 | 619| TOP_BACK_CENTER | 上方中后声道 | 620| TOP_BACK_RIGHT | 上方右后声道 | 621| STEREO_LEFT | 立体声左声道 | 622| STEREO_RIGHT | 立体声右声道 | 623| WIDE_LEFT | 宽左声道 | 624| WIDE_RIGHT | 宽右声道 | 625| SURROUND_DIRECT_LEFT | 左环绕声道 | 626| SURROUND_DIRECT_RIGHT | 右环绕声道 | 627| LOW_FREQUENCY_2 | 低频声道2 | 628| TOP_SIDE_LEFT | 上方左侧声道 | 629| TOP_SIDE_RIGHT | 上方右侧声道 | 630| BOTTOM_FRONT_CENTER | 下方中前声道 | 631| BOTTOM_FRONT_LEFT | 下方左前声道 | 632| BOTTOM_FRONT_RIGHT | 下方右前声道 | 633| AMBISONICS_ACN0 | 零阶立体声声道数r 0 | 634| AMBISONICS_ACN1 | 一阶立体声声道数 1 | 635| AMBISONICS_ACN2 | 一阶立体声声道数 2 | 636| AMBISONICS_ACN3 | 一阶立体声声道数 3 | 637| AMBISONICS_W | 同于零阶立体声声道数 0 | 638| AMBISONICS_Y | 同于一阶立体声声道数 1 | 639| AMBISONICS_Z | 同于一阶立体声声道数 2 | 640| AMBISONICS_X | 同于一阶立体声声道数 3 | 641| AMBISONICS_ACN4 | 二阶立体声声道数 4 | 642| AMBISONICS_ACN5 | 二阶立体声声道数 5 | 643| AMBISONICS_ACN6 | 二阶立体声声道数 6 | 644| AMBISONICS_ACN7 | 二阶立体声声道数 7 | 645| AMBISONICS_ACN8 | 二阶立体声声道数 8 | 646| AMBISONICS_ACN9 | 三阶立体声声道数 9 | 647| AMBISONICS_ACN10 | 三阶立体声声道数 10 | 648| AMBISONICS_ACN11 | 三阶立体声声道数 11. | 649| AMBISONICS_ACN12 | 三阶立体声声道数 12 | 650| AMBISONICS_ACN13 | 三阶立体声声道数 13 | 651| AMBISONICS_ACN14 | 三阶立体声声道数 14 | 652| AMBISONICS_ACN15 | 三阶立体声声道数 15 | 653 654 655### OH_AACProfile 656 657``` 658enum OH_AACProfile 659``` 660 661**描述** 662 663AAC配置。 664 665**系统能力:** SystemCapability.Multimedia.Media.CodecBase 666 667**起始版本:** 9 668 669| 枚举值 | 描述 | 670| -------- | -------- | 671| AAC_PROFILE_LC | AAV编码配置为Low Complexity级别。 | 672 673 674### OH_AVCProfile 675 676``` 677enum OH_AVCProfile 678``` 679 680**描述** 681 682AVC配置。 683 684**系统能力:** SystemCapability.Multimedia.Media.CodecBase 685 686**起始版本:** 9 687 688| 枚举值 | 描述 | 689| -------- | -------- | 690| AVC_PROFILE_BASELINE | AVC编码配置为基本档次。 | 691| AVC_PROFILE_HIGH | AVC编码配置为高档次。 | 692| AVC_PROFILE_MAIN | AVC编码配置为主档次。 | 693 694 695### OH_AVOutputFormat 696 697``` 698enum OH_AVOutputFormat 699``` 700 701**描述** 702 703枚举封装器的输出文件格式。 704 705**系统能力:** SystemCapability.Multimedia.Media.CodecBase 706 707**起始版本:** 10 708 709| 枚举值 | 描述 | 710| -------- | -------- | 711| AV_OUTPUT_FORMAT_DEFAULT | 输出文件格式默认值,默认为MP4格式。 | 712| AV_OUTPUT_FORMAT_MPEG_4 | 输出文件格式为MP4格式。 | 713| AV_OUTPUT_FORMAT_M4A | 输出文件格式为M4A格式。 | 714 715 716### OH_AVSeekMode 717 718``` 719enum OH_AVSeekMode 720``` 721 722**描述** 723 724跳转模式。 725 726**系统能力:** SystemCapability.Multimedia.Media.CodecBase 727 728**起始版本:** 10 729 730| 枚举值 | 描述 | 731| -------- | -------- | 732| SEEK_MODE_NEXT_SYNC | 指定时间位置的下一关键帧。 | 733| SEEK_MODE_PREVIOUS_SYNC | 指定时间位置的上一关键帧。 | 734| SEEK_MODE_CLOSEST_SYNC | 指定时间位置的最近关键帧。 | 735 736 737### OH_BitsPerSample 738 739``` 740enum OH_BitsPerSample 741``` 742 743**描述** 744 745枚举每个编码样本的音频位数。 746 747**系统能力:** SystemCapability.Multimedia.Media.CodecBase 748 749**起始版本:** 10 750 751| 枚举值 | 描述 | 752| -------- | -------- | 753| SAMPLE_U8 | 8位无符号整数采样。 | 754| SAMPLE_S16LE | 16位有符号整数采样。 | 755| SAMPLE_S24LE | 24位有符号整数采样。 | 756| SAMPLE_S32LE | 32位有符号整数采样。 | 757| SAMPLE_F32LE | 32位浮点采样。 | 758| SAMPLE_U8P | 8位无符号整数平面采样。 | 759| SAMPLE_S16P | 16位有符号整数平面采样。 | 760| SAMPLE_S24P | 24位有符号整数平面采样。 | 761| SAMPLE_S32P | 32位有符号整数平面采样。 | 762| SAMPLE_F32P | 32位浮点平面采样。 | 763| INVALID_WIDTH | 无效采样格式。 | 764 765 766### OH_ColorPrimary 767 768``` 769enum OH_ColorPrimary 770``` 771 772**描述** 773 774色域。 775 776**系统能力:** SystemCapability.Multimedia.Media.CodecBase 777 778**起始版本:** 10 779 780| 枚举值 | 描述 | 781| -------- | -------- | 782| COLOR_PRIMARY_BT709 | BT709色域。 | 783| COLOR_PRIMARY_UNSPECIFIED | 未指定色域。 | 784| COLOR_PRIMARY_BT470_M | BT470_M色域。 | 785| COLOR_PRIMARY_BT601_625 | BT601_625色域。 | 786| COLOR_PRIMARY_BT601_525 | BT601_525色域。 | 787| COLOR_PRIMARY_SMPTE_ST240 | SMPTE_ST240色域。 | 788| COLOR_PRIMARY_GENERIC_FILM | GENERIC_FILM色域。 | 789| COLOR_PRIMARY_BT2020 | BT2020色域。 | 790| COLOR_PRIMARY_SMPTE_ST428 | SMPTE_ST428色域。 | 791| COLOR_PRIMARY_P3DCI | P3DCI色域。 | 792| COLOR_PRIMARY_P3D65 | P3D65色域。 | 793 794 795### OH_HEVCProfile 796 797``` 798enum OH_HEVCProfile 799``` 800 801**描述** 802 803HEVC配置。 804 805**系统能力:** SystemCapability.Multimedia.Media.CodecBase 806 807**起始版本:** 10 808 809| 枚举值 | 描述 | 810| -------- | -------- | 811| HEVC_PROFILE_MAIN | HEVC编码配置为主档次。 | 812| HEVC_PROFILE_MAIN_10 | HEVC编码配置为10bit主档次。 | 813| HEVC_PROFILE_MAIN_STILL | HEVC编码配置为静止图像主档次。 | 814| HEVC_PROFILE_MAIN_10_HDR10 | HEVC编码配置为HDR10主档次。 | 815| HEVC_PROFILE_MAIN_10_HDR10_PLUS | HEVC编码配置为HDR10+主档次。 | 816 817 818### OH_MatrixCoefficient 819 820``` 821enum OH_MatrixCoefficient 822``` 823 824**描述** 825 826矩阵系数。 827 828**系统能力:** SystemCapability.Multimedia.Media.CodecBase 829 830**起始版本:** 10 831 832| 枚举值 | 描述 | 833| -------- | -------- | 834| MATRIX_COEFFICIENT_IDENTITY | 单位矩阵。 | 835| MATRIX_COEFFICIENT_BT709 | BT709转换矩阵。 | 836| MATRIX_COEFFICIENT_UNSPECIFIED | 未指定转换矩阵。 | 837| MATRIX_COEFFICIENT_FCC | FCC转换矩阵。 | 838| MATRIX_COEFFICIENT_BT601_625 | BT601_625转换矩阵。 | 839| MATRIX_COEFFICIENT_BT601_525 | BT601_525转换矩阵。 | 840| MATRIX_COEFFICIENT_SMPTE_ST240 | SMPTE_ST240转换矩阵。 | 841| MATRIX_COEFFICIENT_YCGCO | YCGCO转换矩阵。 | 842| MATRIX_COEFFICIENT_BT2020_NCL | BT2020_NCL转换矩阵。 | 843| MATRIX_COEFFICIENT_BT2020_CL | BT2020_CL转换矩阵。 | 844| MATRIX_COEFFICIENT_SMPTE_ST2085 | SMPTE_ST2085转换矩阵。 | 845| MATRIX_COEFFICIENT_CHROMATICITY_NCL | CHROMATICITY_NCL转换矩阵。 | 846| MATRIX_COEFFICIENT_CHROMATICITY_CL | CHROMATICITY_CL转换矩阵。 | 847| MATRIX_COEFFICIENT_ICTCP | ICTCP转换矩阵。 | 848 849 850### OH_MediaType 851 852``` 853enum OH_MediaType 854``` 855 856**描述** 857 858媒体类型。 859 860**系统能力:** SystemCapability.Multimedia.Media.CodecBase 861 862**起始版本:** 9 863 864| 枚举值 | 描述 | 865| -------- | -------- | 866| MEDIA_TYPE_AUD | 音频轨。 | 867| MEDIA_TYPE_VID | 视频轨。 | 868 869 870### OH_ScalingMode 871 872``` 873enum OH_ScalingMode 874``` 875 876**描述** 877 878缩放模式。 879 880**系统能力:** SystemCapability.Multimedia.Media.CodecBase 881 882**起始版本:** 10 883 884| 枚举值 | 描述 | 885| -------- | -------- | 886| SCALING_MODE_SCALE_TO_WINDOW | 根据窗口尺寸自适应调整图像大小。 | 887| SCALING_MODE_SCALE_CROP | 根据窗口尺寸裁剪图像大小。 | 888 889 890### OH_TransferCharacteristic 891 892``` 893enum OH_TransferCharacteristic 894``` 895 896**描述** 897 898转移特性。 899 900**系统能力:** SystemCapability.Multimedia.Media.CodecBase 901 902**起始版本:** 10 903 904| 枚举值 | 描述 | 905| -------- | -------- | 906| TRANSFER_CHARACTERISTIC_BT709 | BT709传递函数。 | 907| TRANSFER_CHARACTERISTIC_UNSPECIFIED | 未指定传递函数。 | 908| TRANSFER_CHARACTERISTIC_GAMMA_2_2 | GAMMA_2_2传递函数。 | 909| TRANSFER_CHARACTERISTIC_GAMMA_2_8 | GAMMA_2_8传递函数。 | 910| TRANSFER_CHARACTERISTIC_BT601 | BT601传递函数。 | 911| TRANSFER_CHARACTERISTIC_SMPTE_ST240 | SMPTE_ST240传递函数。 | 912| TRANSFER_CHARACTERISTIC_LINEAR | LINEAR传递函数。 | 913| TRANSFER_CHARACTERISTIC_LOG | LOG传递函数。 | 914| TRANSFER_CHARACTERISTIC_LOG_SQRT | LOG_SQRT传递函数。 | 915| TRANSFER_CHARACTERISTIC_IEC_61966_2_4 | IEC_61966_2_4传递函数。 | 916| TRANSFER_CHARACTERISTIC_BT1361 | BT1361传递函数。 | 917| TRANSFER_CHARACTERISTIC_IEC_61966_2_1 | IEC_61966_2_1传递函数。 | 918| TRANSFER_CHARACTERISTIC_BT2020_10BIT | BT2020_10BIT传递函数。 | 919| TRANSFER_CHARACTERISTIC_BT2020_12BIT | BT2020_12BIT传递函数。 | 920| TRANSFER_CHARACTERISTIC_PQ | PQ传递函数。 | 921| TRANSFER_CHARACTERISTIC_SMPTE_ST428 | SMPTE_ST428传递函数。 | 922| TRANSFER_CHARACTERISTIC_HLG | HLG传递函数。 | 923 924 925## 变量说明 926 927 928### OH_AVCODEC_MIMETYPE_AUDIO_AAC 929 930``` 931const char* OH_AVCODEC_MIMETYPE_AUDIO_AAC 932``` 933 934**描述** 935 936AAC音频编解码器的MIME类型。 937 938**系统能力:** SystemCapability.Multimedia.Media.CodecBase 939 940**起始版本:** 9 941 942 943### OH_AVCODEC_MIMETYPE_AUDIO_AMR_NB 944 945``` 946const char* OH_AVCODEC_MIMETYPE_AUDIO_AMR_NB 947``` 948 949**描述** 950 951AMR_NB音频解码器的MIME类型。 952 953**系统能力:** SystemCapability.Multimedia.Media.CodecBase 954 955**起始版本:** 11 956 957 958### OH_AVCODEC_MIMETYPE_AUDIO_AMR_WB 959 960``` 961const char* OH_AVCODEC_MIMETYPE_AUDIO_AMR_WB 962``` 963 964**描述** 965 966AMR_WB音频解码器的MIME类型。 967 968**系统能力:** SystemCapability.Multimedia.Media.CodecBase 969 970**起始版本:** 11 971 972 973### OH_AVCODEC_MIMETYPE_AUDIO_FLAC 974 975``` 976const char* OH_AVCODEC_MIMETYPE_AUDIO_FLAC 977``` 978 979**描述** 980 981FLAC音频编解码器的MIME类型。 982 983**系统能力:** SystemCapability.Multimedia.Media.CodecBase 984 985**起始版本:** 10 986 987 988### OH_AVCODEC_MIMETYPE_AUDIO_G711MU 989 990``` 991const char* OH_AVCODEC_MIMETYPE_AUDIO_G711MU 992``` 993 994**描述** 995 996G711MU音频编解码器的MIME类型。 997 998**系统能力:** SystemCapability.Multimedia.Media.CodecBase 999 1000**起始版本:** 11 1001 1002 1003### OH_AVCODEC_MIMETYPE_AUDIO_MPEG 1004 1005``` 1006const char* OH_AVCODEC_MIMETYPE_AUDIO_MPEG 1007``` 1008 1009**描述** 1010 1011MP3音频解码器的MIME类型。 1012 1013**系统能力:** SystemCapability.Multimedia.Media.CodecBase 1014 1015**起始版本:** 10 1016 1017 1018### OH_AVCODEC_MIMETYPE_AUDIO_OPUS 1019 1020``` 1021const char* OH_AVCODEC_MIMETYPE_AUDIO_OPUS 1022``` 1023 1024**描述** 1025 1026OPUS音频编解码器的MIME类型。(目前本规格未开放) 1027 1028**系统能力:** SystemCapability.Multimedia.Media.CodecBase 1029 1030**起始版本:** 11 1031 1032 1033### OH_AVCODEC_MIMETYPE_AUDIO_VIVID 1034 1035``` 1036const char* OH_AVCODEC_MIMETYPE_AUDIO_VIVID 1037``` 1038 1039**描述** 1040 1041AudioVivid音频解码器的MIME类型。(目前本规格未开放) 1042 1043**系统能力:** SystemCapability.Multimedia.Media.CodecBase 1044 1045**起始版本:** 11 1046 1047 1048### OH_AVCODEC_MIMETYPE_AUDIO_VORBIS 1049 1050``` 1051const char* OH_AVCODEC_MIMETYPE_AUDIO_VORBIS 1052``` 1053 1054**描述** 1055 1056VORBIS音频解码器的MIME类型。 1057 1058**系统能力:** SystemCapability.Multimedia.Media.CodecBase 1059 1060**起始版本:** 10 1061 1062 1063### OH_AVCODEC_MIMETYPE_IMAGE_BMP 1064 1065``` 1066const char* OH_AVCODEC_MIMETYPE_IMAGE_BMP 1067``` 1068 1069**描述** 1070 1071BMP图片编码的MIME类型,仅用于封装BMP封面时使用。 1072 1073**系统能力:** SystemCapability.Multimedia.Media.CodecBase 1074 1075**起始版本:** 10 1076 1077 1078### OH_AVCODEC_MIMETYPE_IMAGE_JPG 1079 1080``` 1081const char* OH_AVCODEC_MIMETYPE_IMAGE_JPG 1082``` 1083 1084**描述** 1085 1086JPG图片编码的MIME类型,仅用于封装JPG封面时使用。 1087 1088**系统能力:** SystemCapability.Multimedia.Media.CodecBase 1089 1090**起始版本:** 10 1091 1092 1093### OH_AVCODEC_MIMETYPE_IMAGE_PNG 1094 1095``` 1096const char* OH_AVCODEC_MIMETYPE_IMAGE_PNG 1097``` 1098 1099**描述** 1100 1101PNG图片编码的MIME类型,仅用于封装PNG封面时使用。 1102 1103**系统能力:** SystemCapability.Multimedia.Media.CodecBase 1104 1105**起始版本:** 10 1106 1107 1108### OH_AVCODEC_MIMETYPE_VIDEO_AVC 1109 1110``` 1111const char* OH_AVCODEC_MIMETYPE_VIDEO_AVC 1112``` 1113 1114**描述** 1115 1116AVC(H.264)视频编解码器的MIME类型。 1117 1118**系统能力:** SystemCapability.Multimedia.Media.CodecBase 1119 1120**起始版本:** 9 1121 1122 1123### OH_AVCODEC_MIMETYPE_VIDEO_HEVC 1124 1125``` 1126const char* OH_AVCODEC_MIMETYPE_VIDEO_HEVC 1127``` 1128 1129**描述** 1130 1131HEVC(H.265)视频编解码器的MIME类型。 1132 1133**系统能力:** SystemCapability.Multimedia.Media.CodecBase 1134 1135**起始版本:** 10 1136 1137 1138### OH_AVCODEC_MIMETYPE_VIDEO_MPEG4 1139 1140``` 1141const char* OH_AVCODEC_MIMETYPE_VIDEO_MPEG4 1142``` 1143 1144**描述** 1145 1146MPEG4视频编码的MIME类型,仅用于封装MPEG4视频码流使用。 1147 1148**系统能力:** SystemCapability.Multimedia.Media.CodecBase 1149 1150**起始版本:** 10 1151 1152**废弃版本:** 11 1153 1154 1155### OH_ED_KEY_EOS 1156 1157``` 1158const char* OH_ED_KEY_EOS 1159``` 1160 1161**描述** 1162 1163表面的额外数据中流结束符的键,值类型为bool。 1164 1165**系统能力:** SystemCapability.Multimedia.Media.CodecBase 1166 1167**起始版本:** 9 1168 1169 1170### OH_ED_KEY_TIME_STAMP 1171 1172``` 1173const char* OH_ED_KEY_TIME_STAMP 1174``` 1175 1176**描述** 1177 1178表面的额外数据中时间戳的键,值类型为int64。 1179 1180**系统能力:** SystemCapability.Multimedia.Media.CodecBase 1181 1182**起始版本:** 9 1183 1184 1185### OH_MD_KEY_AAC_IS_ADTS 1186 1187``` 1188const char* OH_MD_KEY_AAC_IS_ADTS 1189``` 1190 1191**描述** 1192 1193aac格式的键,值类型为uint32_t,aac解码器支持。 1194 1195**系统能力:** SystemCapability.Multimedia.Media.CodecBase 1196 1197**起始版本:** 10 1198 1199 1200### OH_MD_KEY_ALBUM 1201 1202``` 1203const char* OH_MD_KEY_ALBUM 1204``` 1205 1206**描述** 1207 1208相册的源格式键,值类型为string。 1209 1210**系统能力:** SystemCapability.Multimedia.Media.CodecBase 1211 1212**起始版本:** 10 1213 1214 1215### OH_MD_KEY_ALBUM_ARTIST 1216 1217``` 1218const char* OH_MD_KEY_ALBUM_ARTIST 1219``` 1220 1221**描述** 1222 1223相册艺术家的键,值类型为string。 1224 1225**系统能力:** SystemCapability.Multimedia.Media.CodecBase 1226 1227**起始版本:** 10 1228 1229 1230### OH_MD_KEY_ARTIST 1231 1232``` 1233const char* OH_MD_KEY_ARTIST 1234``` 1235 1236**描述** 1237 1238艺术家的源格式键,值类型为string。 1239 1240**系统能力:** SystemCapability.Multimedia.Media.CodecBase 1241 1242**起始版本:** 10 1243 1244 1245### OH_MD_KEY_AUD_CHANNEL_COUNT 1246 1247``` 1248const char* OH_MD_KEY_AUD_CHANNEL_COUNT 1249``` 1250 1251**描述** 1252 1253音频通道计数键,值类型为uint32_t。 1254 1255**系统能力:** SystemCapability.Multimedia.Media.CodecBase 1256 1257**起始版本:** 9 1258 1259 1260### OH_MD_KEY_AUD_SAMPLE_RATE 1261 1262``` 1263const char* OH_MD_KEY_AUD_SAMPLE_RATE 1264``` 1265 1266**描述** 1267 1268音频采样率键,值类型为uint32_t。 1269 1270**系统能力:** SystemCapability.Multimedia.Media.CodecBase 1271 1272**起始版本:** 9 1273 1274 1275### OH_MD_KEY_AUDIO_COMPRESSION_LEVEL 1276 1277``` 1278const char* OH_MD_KEY_AUDIO_COMPRESSION_LEVEL 1279``` 1280 1281**描述** 1282 1283音频编解码压缩水平的键,值类型为uint32_t。 1284 1285**系统能力:** SystemCapability.Multimedia.Media.CodecBase 1286 1287**起始版本:** 11 1288 1289 1290### OH_MD_KEY_AUDIO_OBJECT_NUMBER 1291 1292``` 1293const char* OH_MD_KEY_AUDIO_OBJECT_NUMBER 1294``` 1295 1296**描述** 1297 1298音频对象数目的键,值类型为int32_t。 1299 1300**系统能力:** SystemCapability.Multimedia.Media.CodecBase 1301 1302**起始版本:** 11 1303 1304 1305### OH_MD_KEY_AUDIO_SAMPLE_FORMAT 1306 1307``` 1308const char* OH_MD_KEY_AUDIO_SAMPLE_FORMAT 1309``` 1310 1311**描述** 1312 1313音频原始格式的键,值类型为uint32_t。 1314 1315**系统能力:** SystemCapability.Multimedia.Media.CodecBase 1316 1317**起始版本:** 9 1318 1319 1320### OH_MD_KEY_AUDIO_VIVID_METADATA 1321 1322``` 1323const char* OH_MD_KEY_AUDIO_VIVID_METADATA 1324``` 1325 1326**描述** 1327 1328audio vivid元数据的键,值类型为uint8_t\*。 1329 1330**系统能力:** SystemCapability.Multimedia.Media.CodecBase 1331 1332**起始版本:** 11 1333 1334 1335### OH_MD_KEY_BITRATE 1336 1337``` 1338const char* OH_MD_KEY_BITRATE 1339``` 1340 1341**描述** 1342 1343比特率的键,值类型为int64_t。 1344 1345**系统能力:** SystemCapability.Multimedia.Media.CodecBase 1346 1347**起始版本:** 9 1348 1349 1350### OH_MD_KEY_BITS_PER_CODED_SAMPLE 1351 1352``` 1353const char* OH_MD_KEY_BITS_PER_CODED_SAMPLE 1354``` 1355 1356**描述** 1357 1358每个编码样本位数的键,值类型为uint32_t,支持flac编码器,请参见[OH_BitsPerSample](#oh_bitspersample)。 1359 1360**系统能力:** SystemCapability.Multimedia.Media.CodecBase 1361 1362**起始版本:** 10 1363 1364 1365### OH_MD_KEY_CHANNEL_LAYOUT 1366 1367``` 1368const char* OH_MD_KEY_CHANNEL_LAYOUT 1369``` 1370 1371**描述** 1372 1373所需编码通道布局的键。值类型为int64_t,此键仅适用于编码器。 1374 1375**系统能力:** SystemCapability.Multimedia.Media.CodecBase 1376 1377**起始版本:** 10 1378 1379 1380### OH_MD_KEY_CODEC_CONFIG 1381 1382``` 1383const char* OH_MD_KEY_CODEC_CONFIG 1384``` 1385 1386**描述** 1387 1388编解码器特定数据的键,值类型为uint8_t\*。 1389 1390**系统能力:** SystemCapability.Multimedia.Media.CodecBase 1391 1392**起始版本:** 10 1393 1394 1395### OH_MD_KEY_CODEC_MIME 1396 1397``` 1398const char* OH_MD_KEY_CODEC_MIME 1399``` 1400 1401**描述** 1402 1403编解码器mime类型的键,值类型为string。 1404 1405**系统能力:** SystemCapability.Multimedia.Media.CodecBase 1406 1407**起始版本:** 9 1408 1409 1410### OH_MD_KEY_COLOR_PRIMARIES 1411 1412``` 1413const char* OH_MD_KEY_COLOR_PRIMARIES 1414``` 1415 1416**描述** 1417 1418视频色域的键, 值类型为int32_t, 请参见[OH_ColorPrimary](#oh_colorprimary)。 1419 1420**系统能力:** SystemCapability.Multimedia.Media.CodecBase 1421 1422**起始版本:** 10 1423 1424 1425### OH_MD_KEY_COMMENT 1426 1427``` 1428const char* OH_MD_KEY_COMMENT 1429``` 1430 1431**描述** 1432 1433源格式注释的键,值类型为string。 1434 1435**系统能力:** SystemCapability.Multimedia.Media.CodecBase 1436 1437**起始版本:** 10 1438 1439 1440### OH_MD_KEY_COMPLIANCE_LEVEL 1441 1442``` 1443const char* OH_MD_KEY_COMPLIANCE_LEVEL 1444``` 1445 1446**描述** 1447 1448flac合规性级别的键,值类型为int32_t。 1449 1450**系统能力:** SystemCapability.Multimedia.Media.CodecBase 1451 1452**起始版本:** 10 1453 1454 1455### OH_MD_KEY_COPYRIGHT 1456 1457``` 1458const char* OH_MD_KEY_COPYRIGHT 1459``` 1460 1461**描述** 1462 1463源格式版权的键,值类型为string。 1464 1465**系统能力:** SystemCapability.Multimedia.Media.CodecBase 1466 1467**起始版本:** 10 1468 1469 1470### OH_MD_KEY_DATE 1471 1472``` 1473const char* OH_MD_KEY_DATE 1474``` 1475 1476**描述** 1477 1478源格式日期的键,值类型为string。 1479 1480**系统能力:** SystemCapability.Multimedia.Media.CodecBase 1481 1482**起始版本:** 10 1483 1484 1485### OH_MD_KEY_DESCRIPTION 1486 1487``` 1488const char* OH_MD_KEY_DESCRIPTION 1489``` 1490 1491**描述** 1492 1493源格式描述的键,值类型为string。 1494 1495**系统能力:** SystemCapability.Multimedia.Media.CodecBase 1496 1497**起始版本:** 10 1498 1499 1500### OH_MD_KEY_DURATION 1501 1502``` 1503const char* OH_MD_KEY_DURATION 1504``` 1505 1506**描述** 1507 1508持续时间键,值类型为int64_t。 1509 1510**系统能力:** SystemCapability.Multimedia.Media.CodecBase 1511 1512**起始版本:** 9 1513 1514 1515### OH_MD_KEY_FRAME_RATE 1516 1517``` 1518const char* OH_MD_KEY_FRAME_RATE 1519``` 1520 1521**描述** 1522 1523视频帧率的键,值类型为double。 1524 1525**系统能力:** SystemCapability.Multimedia.Media.CodecBase 1526 1527**起始版本:** 9 1528 1529 1530### OH_MD_KEY_GENRE 1531 1532``` 1533const char* OH_MD_KEY_GENRE 1534``` 1535 1536**描述** 1537 1538源格式类型的键,值类型为string。 1539 1540**系统能力:** SystemCapability.Multimedia.Media.CodecBase 1541 1542**起始版本:** 10 1543 1544 1545### OH_MD_KEY_HEIGHT 1546 1547``` 1548const char* OH_MD_KEY_HEIGHT 1549``` 1550 1551**描述** 1552 1553视频高度键,值类型为uint32_t。 1554 1555**系统能力:** SystemCapability.Multimedia.Media.CodecBase 1556 1557**起始版本:** 9 1558 1559 1560### OH_MD_KEY_I_FRAME_INTERVAL 1561 1562``` 1563const char* OH_MD_KEY_I_FRAME_INTERVAL 1564``` 1565 1566**描述** 1567 1568关键帧间隔的键,值类型为int32_t,单位为毫秒。 1569 1570**系统能力:** SystemCapability.Multimedia.Media.CodecBase 1571 1572**起始版本:** 9 1573 1574 1575### OH_MD_KEY_IDENTIFICATION_HEADER 1576 1577``` 1578const char* OH_MD_KEY_IDENTIFICATION_HEADER 1579``` 1580 1581**描述** 1582 1583vorbis标识头的键,值类型为uint8_t\*,仅vorbis解码器支持。 1584 1585**系统能力:** SystemCapability.Multimedia.Media.CodecBase 1586 1587**起始版本:** 10 1588 1589 1590### OH_MD_KEY_LANGUAGE 1591 1592``` 1593const char* OH_MD_KEY_LANGUAGE 1594``` 1595 1596**描述** 1597 1598源格式语言的键,值类型为string。 1599 1600**系统能力:** SystemCapability.Multimedia.Media.CodecBase 1601 1602**起始版本:** 10 1603 1604 1605### OH_MD_KEY_LYRICS 1606 1607``` 1608const char* OH_MD_KEY_LYRICS 1609``` 1610 1611**描述** 1612 1613源格式歌词的键,值类型为string。 1614 1615**系统能力:** SystemCapability.Multimedia.Media.CodecBase 1616 1617**起始版本:** 10 1618 1619 1620### OH_MD_KEY_MATRIX_COEFFICIENTS 1621 1622``` 1623const char* OH_MD_KEY_MATRIX_COEFFICIENTS 1624``` 1625 1626**描述** 1627 1628视频矩阵系数的键,值类型为int32_t,请参见[OH_MatrixCoefficient](#oh_matrixcoefficient)。 1629 1630**系统能力:** SystemCapability.Multimedia.Media.CodecBase 1631 1632**起始版本:** 10 1633 1634 1635### OH_MD_KEY_MAX_INPUT_SIZE 1636 1637``` 1638const char* OH_MD_KEY_MAX_INPUT_SIZE 1639``` 1640 1641**描述** 1642 1643最大输入大小的键,值类型为uint32_t。 1644 1645**系统能力:** SystemCapability.Multimedia.Media.CodecBase 1646 1647**起始版本:** 9 1648 1649 1650### OH_MD_KEY_PIXEL_FORMAT 1651 1652``` 1653const char* OH_MD_KEY_PIXEL_FORMAT 1654``` 1655 1656**描述** 1657 1658视频像素格式的键,值类型为int32_t,请参见[OH_AVPixelFormat](_core.md#oh_avpixelformat)。 1659 1660**系统能力:** SystemCapability.Multimedia.Media.CodecBase 1661 1662**起始版本:** 9 1663 1664 1665### OH_MD_KEY_PROFILE 1666 1667``` 1668const char* OH_MD_KEY_PROFILE 1669``` 1670 1671**描述** 1672 1673编码模板,值类型为数字,请参见[OH_HEVCProfile](#oh_hevcprofile), [OH_AACProfile](#oh_aacprofile)。 1674 1675**系统能力:** SystemCapability.Multimedia.Media.CodecBase 1676 1677**起始版本:** 9 1678 1679 1680### OH_MD_KEY_QUALITY 1681 1682``` 1683const char* OH_MD_KEY_QUALITY 1684``` 1685 1686**描述** 1687 1688所需编码质量的键。值类型为uint32_t,此键仅适用于配置在恒定质量模式下的编码器。 1689 1690**系统能力:** SystemCapability.Multimedia.Media.CodecBase 1691 1692**起始版本:** 10 1693 1694 1695### OH_MD_KEY_RANGE_FLAG 1696 1697``` 1698const char* OH_MD_KEY_RANGE_FLAG 1699``` 1700 1701**描述** 1702 1703视频YUV取值范围标志的键,值类型为bool。 1704 1705**系统能力:** SystemCapability.Multimedia.Media.CodecBase 1706 1707**起始版本:** 10 1708 1709 1710### OH_MD_KEY_REQUEST_I_FRAME 1711 1712``` 1713const char* OH_MD_KEY_REQUEST_I_FRAME 1714``` 1715 1716**描述** 1717 1718请求立即编码I帧的键。值类型为bool。 1719 1720**系统能力:** SystemCapability.Multimedia.Media.CodecBase 1721 1722**起始版本:** 10 1723 1724 1725### OH_MD_KEY_ROTATION 1726 1727``` 1728const char* OH_MD_KEY_ROTATION 1729``` 1730 1731**描述** 1732 1733表面旋转角度的键。值类型为int32_t:应为{0, 90, 180, 270},默认值为0。 1734 1735**系统能力:** SystemCapability.Multimedia.Media.CodecBase 1736 1737**起始版本:** 9 1738 1739 1740### OH_MD_KEY_SBR 1741 1742``` 1743const char* OH_MD_KEY_SBR 1744``` 1745 1746**描述** 1747 1748aac sbr模式的键,值类型为uint32_t,aac编码器支持。 1749 1750**系统能力:** SystemCapability.Multimedia.Media.CodecBase 1751 1752**起始版本:** 10 1753 1754 1755### OH_MD_KEY_SCALING_MODE 1756 1757``` 1758const char* OH_MD_KEY_SCALING_MODE 1759``` 1760 1761**描述** 1762 1763视频表面尺度类型, 值类型为int32_t, 请参见[OH_ScalingMode](#oh_scalingmode)。 1764 1765**系统能力:** SystemCapability.Multimedia.Media.CodecBase 1766 1767**起始版本:** 10 1768 1769 1770### OH_MD_KEY_SETUP_HEADER 1771 1772``` 1773const char* OH_MD_KEY_SETUP_HEADER 1774``` 1775 1776**描述** 1777 1778vorbis设置头的键,值类型为uint8_t\*,仅vorbis解码器支持。 1779 1780**系统能力:** SystemCapability.Multimedia.Media.CodecBase 1781 1782**起始版本:** 10 1783 1784 1785### OH_MD_KEY_TITLE 1786 1787``` 1788const char* OH_MD_KEY_TITLE 1789``` 1790 1791**描述** 1792 1793源格式标题的键,值类型为string。 1794 1795**系统能力:** SystemCapability.Multimedia.Media.CodecBase 1796 1797**起始版本:** 10 1798 1799 1800### OH_MD_KEY_TRACK_COUNT 1801 1802``` 1803const char* OH_MD_KEY_TRACK_COUNT 1804``` 1805 1806**描述** 1807 1808源格式轨道数量的键,值类型为uint32_t。 1809 1810**系统能力:** SystemCapability.Multimedia.Media.CodecBase 1811 1812**起始版本:** 10 1813 1814 1815### OH_MD_KEY_TRACK_TYPE 1816 1817``` 1818const char* OH_MD_KEY_TRACK_TYPE 1819``` 1820 1821**描述** 1822 1823曲目类型的键,值类型为uint8_t,请参见[OH_MediaType](#oh_mediatype)。 1824 1825**系统能力:** SystemCapability.Multimedia.Media.CodecBase 1826 1827**起始版本:** 9 1828 1829 1830### OH_MD_KEY_TRANSFER_CHARACTERISTICS 1831 1832``` 1833const char* OH_MD_KEY_TRANSFER_CHARACTERISTICS 1834``` 1835 1836**描述** 1837 1838视频转移特性的键,值类型为int32_t,请参见[OH_TransferCharacteristic](#oh_transfercharacteristic)。 1839 1840**系统能力:** SystemCapability.Multimedia.Media.CodecBase 1841 1842**起始版本:** 10 1843 1844 1845### OH_MD_KEY_VIDEO_ENCODE_BITRATE_MODE 1846 1847``` 1848const char* OH_MD_KEY_VIDEO_ENCODE_BITRATE_MODE 1849``` 1850 1851**描述** 1852 1853视频编码码率模式,值类型为int32_t,请参见[OH_VideoEncodeBitrateMode](_video_encoder.md#oh_videoencodebitratemode)。 1854 1855**系统能力:** SystemCapability.Multimedia.Media.CodecBase 1856 1857**起始版本:** 9 1858 1859 1860### OH_MD_KEY_VIDEO_IS_HDR_VIVID 1861 1862``` 1863const char* OH_MD_KEY_VIDEO_IS_HDR_VIVID 1864``` 1865 1866**描述** 1867 1868查询是否是hdr vivid的键,值类型为bool。 1869 1870**系统能力:** SystemCapability.Multimedia.Media.CodecBase 1871 1872**起始版本:** 11 1873 1874 1875### OH_MD_KEY_WIDTH 1876 1877``` 1878const char* OH_MD_KEY_WIDTH 1879``` 1880 1881**描述** 1882 1883视频宽度的键,值类型为uint32_t。 1884 1885**系统能力:** SystemCapability.Multimedia.Media.CodecBase 1886 1887**起始版本:** 9 1888 1889 1890### OH_MD_MAX_INPUT_BUFFER_COUNT 1891 1892``` 1893const char* OH_MD_MAX_INPUT_BUFFER_COUNT 1894``` 1895 1896**描述** 1897 1898最大输入缓冲区个数的键, 值类型为int32_t。 1899 1900**系统能力:** SystemCapability.Multimedia.Media.CodecBase 1901 1902**起始版本:** 10 1903 1904 1905### OH_MD_MAX_OUTPUT_BUFFER_COUNT 1906 1907``` 1908const char* OH_MD_MAX_OUTPUT_BUFFER_COUNT 1909``` 1910 1911**描述** 1912 1913最大输出缓冲区个数的键, 值类型int32_t。 1914 1915**系统能力:** SystemCapability.Multimedia.Media.CodecBase 1916 1917**起始版本:** 10 1918