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