harmony 鸿蒙CodecBase

  • 2025-06-12
  • 浏览 (7)

CodecBase

概述

CodecBase模块提供用于音视频封装、解封装、编解码基础功能的变量、属性以及函数。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 9

媒体编解码格式

用于描述媒体编解码格式的名字如下表。类型是常量字符串。

名称 描述
OH_AVCODEC_MIMETYPE_AUDIO_AAC AAC音频编解码器的MIME类型。
OH_AVCODEC_MIMETYPE_AUDIO_FLAC FLAC音频编解码器的MIME类型。
OH_AVCODEC_MIMETYPE_AUDIO_OPUS OPUS音频编解码器的MIME类型。(此规格暂未开放)
OH_AVCODEC_MIMETYPE_AUDIO_G711MU G711MU音频编解码器的MIME类型。
OH_AVCODEC_MIMETYPE_AUDIO_RAW RAW音频码流的MIME类型。
OH_AVCODEC_MIMETYPE_AUDIO_VORBIS VORBIS音频解码器的MIME类型。
OH_AVCODEC_MIMETYPE_AUDIO_MPEG MP3音频解码器的MIME类型。
OH_AVCODEC_MIMETYPE_AUDIO_VIVID Audio Vivid音频解码器的MIME类型。(此规格暂未开放)
OH_AVCODEC_MIMETYPE_AUDIO_AMR_NB AMR_NB音频解码器的MIME类型。
OH_AVCODEC_MIMETYPE_AUDIO_AMR_WB AMR_WB音频解码器的MIME类型。
OH_AVCODEC_MIMETYPE_AUDIO_APE APE音频解码器的MIME类型。
OH_AVCODEC_MIMETYPE_VIDEO_VVC VVC(H.266)视频编解码器的MIME类型。
OH_AVCODEC_MIMETYPE_VIDEO_HEVC HEVC(H.265)视频编解码器的MIME类型。
OH_AVCODEC_MIMETYPE_VIDEO_AVC AVC(H.264)视频编解码器的MIME类型。
OH_AVCODEC_MIMETYPE_VIDEO_H263 H.263视频编解码器的MIME类型。
OH_AVCODEC_MIMETYPE_VIDEO_MPEG4 MPEG4视频编码的MIME类型,仅用于封装MPEG4视频码流使用。(API11废弃)
OH_AVCODEC_MIMETYPE_VIDEO_MPEG4_PART2 视频MPEG4 Part2编解码器的MIME类型。
OH_AVCODEC_MIMETYPE_VIDEO_MPEG2 视频MPEG2编解码器的MIME类型。
OH_AVCODEC_MIMETYPE_IMAGE_JPG JPG图片编码的MIME类型,仅用于封装JPG封面时使用。
OH_AVCODEC_MIMETYPE_IMAGE_PNG PNG图片编码的MIME类型,仅用于封装PNG封面时使用。
OH_AVCODEC_MIMETYPE_IMAGE_BMP BMP图片编码的MIME类型,仅用于封装BMP封面时使用。
OH_AVCODEC_MIMETYPE_SUBTITLE_WEBVTT WEBVTT字幕解封装器的MIME类型。
OH_AVCODEC_MIMETYPE_SUBTITLE_SRT SRT字幕解封装器的MIME类型。

媒体数据键值对

用于描述媒体数据的键值对查找表如下。键的类型是常量字符串,值的类型可以是int32_t/int64_t/float/double/char */uint8_t *。

使用以下key的主要接口是OH_AVFormat,通过以下key可以进行参数配置或查询。

能力查询专有的键值对:

名称 描述
OH_FEATURE_PROPERTY_KEY_VIDEO_ENCODER_MAX_LTR_FRAME_COUNT 在视频编码中获取长期参考帧的最大个数的键,值类型为int32_t。

音视频公共的键值对:

名称 描述
OH_MD_KEY_CODEC_CONFIG 编解码器特定数据的键,视频中表示传递SPS/PPS,音频中表示传递extraData,值类型为uint8_t*。该键是可选的。 (视频编解码此功能暂未支持)
OH_MD_MAX_INPUT_BUFFER_COUNT 最大输入缓冲区个数的键,值类型为int32_t。该键是可选的。
OH_MD_MAX_OUTPUT_BUFFER_COUNT 最大输出缓冲区个数的键,值类型int32_t。该键是可选的。
OH_MD_KEY_BITRATE 比特率的键,值类型为int64_t。该键用于音视频编码场景。在视频编码场景下该键是可选的。
OH_MD_KEY_PROFILE 编码档次,值类型为int32_t,请参见OH_AVCProfileOH_HEVCProfileOH_AACProfile。该键是可选的。
OH_MD_KEY_MAX_INPUT_SIZE 设置解码输入码流大小最大值的键,值类型为int32_t。该键是可选的。

视频专有的键值对:

名称 描述
OH_ED_KEY_TIME_STAMP 表示surfacebuffer时间戳的键,值类型为int64_t。该键是可选的。(API14废弃)
OH_ED_KEY_EOS 表示surfacebuffer流结束符的键,值类型为int32_t。该键是可选的。(API14废弃)
OH_MD_KEY_WIDTH 视频宽度的键,值类型为int32_t。
OH_MD_KEY_HEIGHT 视频高度键,值类型为int32_t。
OH_MD_KEY_PIXEL_FORMAT 视频像素格式的键,值类型为int32_t,请参见OH_AVPixelFormat
OH_MD_KEY_FRAME_RATE 视频帧率的键,值类型为double。该键是可选的。
OH_MD_KEY_RANGE_FLAG 视频YUV值域标志的键,值类型为int32_t,1表示full range,0表示limited range。该键是可选的。
OH_MD_KEY_COLOR_PRIMARIES 视频色域的键,值类型为int32_t,请参见OH_ColorPrimary,遵循H.273标准Table2。该键是可选的。
OH_MD_KEY_TRANSFER_CHARACTERISTICS 视频传递函数的键,值类型为int32_t,请参见OH_TransferCharacteristic,遵循H.273标准Table3。该键是可选的。
OH_MD_KEY_MATRIX_COEFFICIENTS 视频矩阵系数的键,值类型为int32_t,请参见OH_MatrixCoefficient,遵循H.273标准Table4。该键是可选的。
OH_MD_KEY_VIDEO_STRIDE 描述视频帧宽跨距的键,值类型为int32_t。该键是可选的。
OH_MD_KEY_VIDEO_SLICE_HEIGHT 描述视频帧高跨距的键,值类型为int32_t。该键是可选的。
OH_MD_KEY_VIDEO_PIC_WIDTH 描述视频帧真实宽度的键,值类型为int32_t。该键是可选的。
OH_MD_KEY_VIDEO_PIC_HEIGHT 描述视频帧真实高度的键,值类型为int32_t。该键是可选的。
OH_MD_KEY_VIDEO_ENABLE_LOW_LATENCY 使能低时延视频编解码的键,值类型为int32_t,1表示使能,0表示其它情况。该键是可选,在Configure阶段使用。
OH_MD_KEY_VIDEO_ENCODE_BITRATE_MODE 视频编码码率模式,值类型为int32_t,请参见OH_BitrateMode。该键是可选的。
OH_MD_KEY_QUALITY 所需编码质量的键。值类型为int32_t,此键仅适用于配置在恒定质量模式下的编码器。该键是可选的。
OH_MD_KEY_REQUEST_I_FRAME 请求立即编码I帧的键。值类型为int32_t。该键是可选的。
OH_MD_KEY_I_FRAME_INTERVAL 关键帧间隔的键,值类型为int32_t,单位为毫秒。该键是可选的且只用于视频编码。
OH_MD_KEY_VIDEO_ENCODER_ENABLE_TEMPORAL_SCALABILITY 使能分层编码的键,值类型为int32_t,1表示使能,0表示其它情况。该键是可选的且只用于视频编码,在Configure阶段使用。
OH_MD_KEY_VIDEO_ENCODER_TEMPORAL_GOP_SIZE 描述图片组基本层图片的间隔大小的键,值类型为int32_t,只在使能分层编码时生效。该键是可选的且只用于视频编码,在Configure阶段使用。
OH_MD_KEY_VIDEO_ENCODER_TEMPORAL_GOP_REFERENCE_MODE 描述图片组内参考模式的键,值类型为int32_t,请参见OH_TemporalGopReferenceMode,只在使能分层编码时生效。该键是可选的且只用于视频编码,在Configure阶段使用。
OH_MD_KEY_VIDEO_ENCODER_LTR_FRAME_COUNT 描述长期参考帧个数的键,值类型为int32_t,必须在支持的值范围内使用。该键是可选的且只用于视频编码。
OH_MD_KEY_VIDEO_ENCODER_PER_FRAME_MARK_LTR 标记当前帧为长期参考帧的键,值类型为int32_t,1表示被标记,0表示其它情况。该键是可选的且只用于视频编码。
OH_MD_KEY_VIDEO_ENCODER_PER_FRAME_USE_LTR 描述当前帧参考的长期参考帧帧的POC号的键,值类型为int32_t。该键是可选的且只用于视频编码。
OH_MD_KEY_VIDEO_PER_FRAME_IS_LTR 当前OH_AVBuffer中输出的码流对应的帧是否为长期参考帧的键,值类型为int32_t,1表示是LTR,0表示其它情况。该键是可选的且只用于视频编码。
OH_MD_KEY_VIDEO_PER_FRAME_POC 描述帧的POC号的键,值类型为int32_t。该键是可选的且只用于视频编码。
OH_MD_KEY_VIDEO_ENCODER_QP_MAX 描述视频编码器允许的最大量化参数的键,值类型为int32_t。该键是可选的且只用于视频编码。
OH_MD_KEY_VIDEO_ENCODER_QP_MIN 描述视频编码器允许的最小量化参数的键,值类型为int32_t。该键是可选的且只用于视频编码。
OH_MD_KEY_VIDEO_ENCODER_QP_AVERAGE 描述视频帧平均量化参数的键,值类型为int32_t。该键是可选的且只用于视频编码。
OH_MD_KEY_VIDEO_ENCODER_MSE 描述视频帧平方误差的键,值类型为double。该键是可选的且只用于视频编码。
OH_MD_KEY_VIDEO_ENCODER_REPEAT_PREVIOUS_FRAME_AFTER 如果在上一帧提交给编码器之后没有新的帧可用,则会以毫秒为单位重复提交最后一帧,值类型为int32_t。该键只用于视频编码Surface模式,在Configure阶段使用。
OH_MD_KEY_VIDEO_ENCODER_REPEAT_PREVIOUS_MAX_COUNT 描述编码器在没有新的帧可用的情况下,可以对之前的帧进行重复编码的最大次数,值类型为int32_t。该键仅在OH_MD_KEY_VIDEO_ENCODER_REPEAT_PREVIOUS_FRAME_AFTER可用时生效,在Configure阶段使用。
OH_MD_KEY_VIDEO_DECODER_OUTPUT_COLOR_SPACE 设置视频解码器输出色彩空间的键,值类型为int32_t。 支持的值为OH_COLORSPACE_BT709_LIMIT。
OH_MD_KEY_ROTATION surface旋转角度的键。值类型为int32_t:应为{0, 90, 180, 270},默认值为0。该键只在视频解码Surface模式下使用。该键是可选的。
OH_MD_KEY_SCALING_MODE 视频缩放模式,值类型为int32_t,请参见OH_ScalingMode。该键是可选的且只用于视频解码Surface模式。建议直接调用OH_NativeWindow_NativeWindowSetScalingModeV2接口进行设置。(API14废弃)
OH_MD_KEY_VIDEO_CROP_TOP 描述裁剪矩形顶部坐标(y)值的键,值类型为int32_t。该键是可选的且只用于视频解码。
OH_MD_KEY_VIDEO_CROP_BOTTOM 描述裁剪矩形底部坐标(y)值的键,值类型为int32_t。该键是可选的且只用于视频解码。
OH_MD_KEY_VIDEO_CROP_LEFT 描述裁剪矩形左坐标(x)值的键,值类型为int32_t。该键是可选的且只用于视频解码。
OH_MD_KEY_VIDEO_CROP_RIGHT 描述裁剪矩形右坐标(x)值的键,值类型为int32_t。该键是可选的且只用于视频解码。
OH_MD_KEY_VIDEO_DECODER_OUTPUT_ENABLE_VRR 解码器是否打开视频可变帧率功能的键,值类型为int32_t。该键是可选的且只用于视频解码。
OH_MD_KEY_SQR_FACTOR 描述SQR码控模式的质量参数,值越小,编码输出文件越大,质量越好,值类型为int32_t。该键值是可选的且只用于视频编码。
OH_MD_KEY_MAX_BITRATE 描述SQR码控模式的最大码率,单位bps,值类型为int64_t。该键值是可选的且只用于视频编码。
OH_MD_KEY_VIDEO_ENCODER_ROI_PARAMS 描述ROI编码参数,包括ROI区域和deltaQp,值类型为string。该键值是可选的且只用于视频编码。

音频专有的键值对:

名称 描述
OH_MD_KEY_AUDIO_SAMPLE_FORMAT 音频原始格式的键,值类型为int32_t。请参见OH_BitsPerSample
OH_MD_KEY_AUD_CHANNEL_COUNT 音频通道计数键,值类型为int32_t。
OH_MD_KEY_AUD_SAMPLE_RATE 音频采样率键,值类型为int32_t。
OH_MD_KEY_AUDIO_COMPRESSION_LEVEL 音频编解码压缩水平的键,只在音频编码使用,值类型为int32_t。该键是可选的。
OH_MD_KEY_CHANNEL_LAYOUT 所需编码通道布局的键。值类型为int64_t,此键仅适用于编码器。请参见OH_AudioChannelLayout
OH_MD_KEY_BITS_PER_CODED_SAMPLE 每个编码样本位数的键,值类型为int32_t,支持flac编码器,请参见OH_BitsPerSample。该键是可选的。
OH_MD_KEY_SBR aac sbr模式的键,值类型为int32_t,aac编码器支持。该键是可选的。
OH_MD_KEY_COMPLIANCE_LEVEL flac兼容性等级的键,值类型为int32_t,仅在音频编码使用。该键是可选的。
OH_MD_KEY_AAC_IS_ADTS aac格式的键,aac格式分为ADTS格式和LATM格式。值类型为int32_t,aac解码器支持。该键是可选的。
OH_MD_KEY_IDENTIFICATION_HEADER vorbis标识头的键,值类型为uint8_t*,仅vorbis解码器支持。该键是可选的。
OH_MD_KEY_SETUP_HEADER vorbis设置头的键,值类型为uint8_t*,仅vorbis解码器支持。该键是可选的。
OH_MD_KEY_AUDIO_OBJECT_NUMBER 音频对象数目的键,值类型为int32_t,只有Audio Vivid解码使用。该键是可选的。
OH_MD_KEY_AUDIO_VIVID_METADATA Audio Vivid元数据的键,值类型为uint8_t*,只有Audio Vivid解码使用。该键是可选的。

封装/解封装专有的键值对:

名称 描述
OH_MD_KEY_VIDEO_IS_HDR_VIVID 媒体文件中的视频轨是否为HDR Vivid的键,支持封装和解封装,值类型为int32_t。该键是可选的。
OH_MD_KEY_START_TIME 媒体文件中第一帧起始位置开始时间的键,以微秒为单位,值类型为int64_t。该键是可选的。
OH_MD_KEY_TRACK_START_TIME 轨道开始时间的键,以微秒为单位,值类型为int64_t。该键是可选的。
OH_MD_KEY_TRACK_TYPE 轨道媒体类型的键,值类型为int32_t,请参见OH_MediaType。该键是可选的。
OH_MD_KEY_DURATION 媒体文件持续时间的键,值类型为int64_t。该键是可选的。
OH_MD_KEY_TITLE 媒体文件标题的键,值类型为string。该键是可选的。
OH_MD_KEY_ARTIST 艺术家的键,值类型为string。该键是可选的。
OH_MD_KEY_ALBUM 专辑的媒体文件的键,值类型为string。该键是可选的。
OH_MD_KEY_ALBUM_ARTIST 专辑艺术家的键,值类型为string。该键是可选的。
OH_MD_KEY_DATE 媒体文件日期的键,值类型为string,例如2024年。该键是可选的。
OH_MD_KEY_COMMENT 媒体文件注释的键,值类型为string。该键是可选的。
OH_MD_KEY_GENRE 媒体文件流派的键,值类型为string。该键是可选的。
OH_MD_KEY_COPYRIGHT 媒体文件版权的键,值类型为string。该键是可选的。
OH_MD_KEY_LANGUAGE 媒体文件语言的键,值类型为string。该键是可选的。
OH_MD_KEY_DESCRIPTION 媒体文件描述的键,值类型为string。该键是可选的。
OH_MD_KEY_LYRICS 媒体文件歌词的键,值类型为string。该键是可选的。
OH_MD_KEY_TRACK_COUNT 媒体文件轨道数量的键,值类型为int32_t。该键是可选的。
OH_MD_KEY_BUFFER_DURATION AVBuffer中携带的音视频或字幕的sample对应的持续时间的键,以微秒为单位,值类型为int64_t。该键是可选的。
OH_MD_KEY_DECODING_TIMESTAMP AVBuffer中携带的音视频或字幕的sample对应的解码时间戳的键,以微秒为单位,值类型为int64_t。该键是可选的。
OH_MD_KEY_CODEC_MIME 编解码器MIME类型的键,值类型为string。该键是可选的。
OH_MD_KEY_VIDEO_SAR 样本长宽比的键,值类型为double。
OH_MD_KEY_CREATION_TIME 媒体文件创建时间的元数据,值类型为string。

汇总

文件

名称 描述
avcodec_audio_channel_layout.h 音频编解码枚举的声明。
native_avcodec_base.h 音视频封装、解封装、编解码基础功能Native API的声明。

结构体

名称 描述
struct OH_AVCodecAsyncCallback OH_AVCodec中所有异步回调函数指针的集合。(API11废弃)
struct OH_AVCodecCallback OH_AVCodec中所有异步回调函数指针的集合。
struct OH_AVDataSource 用户自定义数据源。

类型定义

名称 描述
typedef struct NativeWindow OHNativeWindow 为图形接口定义native层对象。
typedef struct OH_AVCodec OH_AVCodec 为音视频编解码接口定义native层对象。
typedef void(* OH_AVCodecOnError) (OH_AVCodec *codec, int32_t errorCode, void *userData) 当OH_AVCodec实例运行出错时,会调用来上报具体的错误信息的函数指针。
typedef void(* OH_AVCodecOnStreamChanged) (OH_AVCodec *codec, OH_AVFormat *format, void *userData) 当视频解码输入码流分辨率或者视频编码输出码流的分辨率发生变化时,将调用此函数指针报告新的流描述信息。
从API 15开始,支持音频解码时,码流采样率、声道数或者音频采样格式发生变化时,将调用此函数指针报告新的流描述信息,支持检测此变化的解码格式有:AAC,FLAC,MP3,VORBIS。
typedef void(* OH_AVCodecOnNeedInputData) (OH_AVCodec *codec, uint32_t index, OH_AVMemory *data, void *userData) 当OH_AVCodec在运行过程中需要新的输入数据时,将调用此函数指针,并携带可用的缓冲区来填充新的输入数据。(API11废弃)
typedef void(* OH_AVCodecOnNewOutputData) (OH_AVCodec *codec, uint32_t index, OH_AVMemory *data, OH_AVCodecBufferAttr *attr, void *userData) 当OH_AVCodec运行过程中生成新的输出数据时,将调用此函数指针,并携带包含新输出数据的缓冲区。(API11废弃)
typedef void(* OH_AVCodecOnNeedInputBuffer) (OH_AVCodec *codec, uint32_t index, OH_AVBuffer *buffer, void *userData) 当OH_AVCodec在运行过程中需要新的输入数据时,将调用此函数指针,并携带可用的缓冲区来填充新的输入数据。
typedef void(* OH_AVCodecOnNewOutputBuffer) (OH_AVCodec *codec, uint32_t index, OH_AVBuffer *buffer, void *userData) 当OH_AVCodec运行过程中生成新的输出数据时,将调用此函数指针,并携带包含新输出数据的缓冲区。
typedef struct OH_AVCodecAsyncCallback OH_AVCodecAsyncCallback OH_AVCodec中所有异步回调函数指针的集合。(API11废弃)
typedef struct OH_AVCodecCallback OH_AVCodecCallback OH_AVCodec中所有异步回调函数指针的集合。
typedef int32_t(* OH_AVDataSourceReadAt) (OH_AVBuffer *data, int32_t length, int64_t pos) 函数指针定义,用于提供获取用户自定义媒体数据的能力。
typedef struct OH_AVDataSource OH_AVDataSource 用户自定义数据源。
typedef enum OH_MediaType OH_MediaType 媒体类型。
typedef enum OH_AACProfile OH_AACProfile AAC档次。
typedef enum OH_AVCProfile OH_AVCProfile AVC档次。
typedef enum OH_HEVCProfile OH_HEVCProfile HEVC档次。
typedef enum OH_VVCProfile OH_VVCProfile VVC档次。
typedef enum OH_H263Profile OH_H263Profile H.263档次。
typedef enum OH_MPEG2Profile OH_MPEG2Profile MPEG2档次。
typedef enum OH_MPEG4Profile OH_MPEG4Profile MPEG4档次。
typedef enum OH_AVOutputFormat OH_AVOutputFormat 封装器支持的输出文件格式。
typedef enum OH_AVSeekMode OH_AVSeekMode 跳转模式。
typedef enum OH_ScalingMode OH_ScalingMode 缩放模式,只在Surface模式下使用。(API14废弃)
typedef enum OH_BitsPerSample OH_BitsPerSample 每个编码样本的音频位数。
typedef enum OH_ColorPrimary OH_ColorPrimary 色域。
typedef enum OH_TransferCharacteristic OH_TransferCharacteristic 转移特性。
typedef enum OH_MatrixCoefficient OH_MatrixCoefficient 矩阵系数。
typedef enum OH_AVCLevel OH_AVCLevel AVC级别。
typedef enum OH_HEVCLevel OH_HEVCLevel HEVC级别。
typedef enum OH_VVCLevel OH_VVCLevel VVC级别。
typedef enum OH_H263Level OH_H263Level H.263级别。
typedef enum OH_MPEG2Level OH_MPEG2Level MPEG2级别。
typedef enum OH_MPEG4Level OH_MPEG4Level MPEG4级别。
typedef enum OH_TemporalGopReferenceMode OH_TemporalGopReferenceMode 时域图片组参考模式。
typedef enum OH_BitrateMode OH_BitrateMode 编码器的比特率模式。

枚举

名称 描述
AudioChannelSet : uint64_t {
FRONT_LEFT = 1ULL << 0U,
FRONT_RIGHT = 1ULL << 1U,
FRONT_CENTER = 1ULL << 2U,
LOW_FREQUENCY = 1ULL << 3U,
BACK_LEFT = 1ULL << 4U,
BACK_RIGHT = 1ULL << 5U,
FRONT_LEFT_OF_CENTER = 1ULL << 6U,
FRONT_RIGHT_OF_CENTER = 1ULL << 7U,
BACK_CENTER = 1ULL << 8U,
SIDE_LEFT = 1ULL << 9U,
SIDE_RIGHT = 1ULL << 10U,
TOP_CENTER = 1ULL << 11U,
TOP_FRONT_LEFT = 1ULL << 12U,
TOP_FRONT_CENTER = 1ULL << 13U,
TOP_FRONT_RIGHT = 1ULL << 14U,
TOP_BACK_LEFT = 1ULL << 15U,
TOP_BACK_CENTER = 1ULL << 16U,
TOP_BACK_RIGHT = 1ULL << 17U,
STEREO_LEFT = 1ULL << 29U,
STEREO_RIGHT = 1ULL << 30U,
WIDE_LEFT = 1ULL << 31U,
WIDE_RIGHT = 1ULL << 32U,
SURROUND_DIRECT_LEFT = 1ULL << 33U,
SURROUND_DIRECT_RIGHT = 1ULL << 34U,
LOW_FREQUENCY_2 = 1ULL << 35U,
TOP_SIDE_LEFT = 1ULL << 36U,
TOP_SIDE_RIGHT = 1ULL << 37U,
BOTTOM_FRONT_CENTER = 1ULL << 38U,
BOTTOM_FRONT_LEFT = 1ULL << 39U,
BOTTOM_FRONT_RIGHT = 1ULL << 40U,
AMBISONICS_ACN0 = 1ULL << 41U,
AMBISONICS_ACN1 = 1ULL << 42U,
AMBISONICS_ACN2 = 1ULL << 43U,
AMBISONICS_ACN3 = 1ULL << 44U,
AMBISONICS_W = AMBISONICS_ACN0,
AMBISONICS_Y = AMBISONICS_ACN1,
AMBISONICS_Z = AMBISONICS_ACN2,
AMBISONICS_X = AMBISONICS_ACN3,
AMBISONICS_ACN4 = 1ULL << 45U,
AMBISONICS_ACN5 = 1ULL << 46U,
AMBISONICS_ACN6 = 1ULL << 47U,
AMBISONICS_ACN7 = 1ULL << 48U,
AMBISONICS_ACN8 = 1ULL << 49U,
AMBISONICS_ACN9 = 1ULL << 50U,
AMBISONICS_ACN10 = 1ULL << 51U,
AMBISONICS_ACN11 = 1ULL << 52U,
AMBISONICS_ACN12 = 1ULL << 53U,
AMBISONICS_ACN13 = 1ULL << 54U,
AMBISONICS_ACN14 = 1ULL << 55U,
AMBISONICS_ACN15 = 1ULL << 56U
}
音频声道数集合, 将每一个声道数映射为int64_t的变量。(API11废弃)
AudioChannelLayout : uint64_t {
UNKNOWN_CHANNEL_LAYOUT = 0,
MONO = (AudioChannelSet::FRONT_CENTER),
STEREO = (AudioChannelSet::FRONT_LEFT |AudioChannelSet::FRONT_RIGHT),
CH_2POINT1 = (STEREO |AudioChannelSet::LOW_FREQUENCY),
CH_2_1 = (STEREO |AudioChannelSet::BACK_CENTER),
SURROUND = (STEREO |AudioChannelSet::FRONT_CENTER),
CH_3POINT1 = (SURROUND |AudioChannelSet::LOW_FREQUENCY),
CH_4POINT0 = (SURROUND |AudioChannelSet::BACK_CENTER),
CH_4POINT1 = (CH_4POINT0 |AudioChannelSet::LOW_FREQUENCY),
CH_2_2 = (STEREO |AudioChannelSet::SIDE_LEFT |AudioChannelSet::SIDE_RIGHT),
QUAD = (STEREO |AudioChannelSet::BACK_LEFT |AudioChannelSet::BACK_RIGHT),
CH_5POINT0 = (SURROUND |AudioChannelSet::SIDE_LEFT |AudioChannelSet::SIDE_RIGHT),
CH_5POINT1 = (CH_5POINT0 |AudioChannelSet::LOW_FREQUENCY),
CH_5POINT0_BACK = (SURROUND |AudioChannelSet::BACK_LEFT |AudioChannelSet::BACK_RIGHT),
CH_5POINT1_BACK = (CH_5POINT0_BACK |AudioChannelSet::LOW_FREQUENCY),
CH_6POINT0 = (CH_5POINT0 |AudioChannelSet::BACK_CENTER),
CH_6POINT0_FRONT = (CH_2_2 |AudioChannelSet::FRONT_LEFT_OF_CENTER |AudioChannelSet::FRONT_RIGHT_OF_CENTER),
HEXAGONAL = (CH_5POINT0_BACK |AudioChannelSet::BACK_CENTER),
CH_6POINT1 = (CH_5POINT1 |AudioChannelSet::BACK_CENTER),
CH_6POINT1_BACK = (CH_5POINT1_BACK |AudioChannelSet::BACK_CENTER),
CH_6POINT1_FRONT = (CH_6POINT0_FRONT |AudioChannelSet::LOW_FREQUENCY),
CH_7POINT0 = (CH_5POINT0 |AudioChannelSet::BACK_LEFT |AudioChannelSet::BACK_RIGHT),
CH_7POINT0_FRONT = (CH_5POINT0 |AudioChannelSet::FRONT_LEFT_OF_CENTER |AudioChannelSet::FRONT_RIGHT_OF_CENTER),
CH_7POINT1 = (CH_5POINT1 |AudioChannelSet::BACK_LEFT |AudioChannelSet::BACK_RIGHT),
CH_7POINT1_WIDE = (CH_5POINT1 |AudioChannelSet::FRONT_LEFT_OF_CENTER |AudioChannelSet::FRONT_RIGHT_OF_CENTER),
CH_7POINT1_WIDE_BACK, CH_3POINT1POINT2 = (CH_3POINT1 |AudioChannelSet::TOP_FRONT_LEFT |AudioChannelSet::TOP_FRONT_RIGHT),
CH_5POINT1POINT2 = (CH_5POINT1 |AudioChannelSet::TOP_SIDE_LEFT |AudioChannelSet::TOP_SIDE_RIGHT),
CH_5POINT1POINT4, CH_7POINT1POINT2 = (CH_7POINT1 |AudioChannelSet::TOP_SIDE_LEFT |AudioChannelSet::TOP_SIDE_RIGHT),
CH_7POINT1POINT4, CH_9POINT1POINT4 = (CH_7POINT1POINT4 |AudioChannelSet::WIDE_LEFT |AudioChannelSet::WIDE_RIGHT),
CH_9POINT1POINT6 = (CH_9POINT1POINT4 |AudioChannelSet::TOP_SIDE_LEFT |AudioChannelSet::TOP_SIDE_RIGHT),
CH_10POINT2, CH_22POINT2, OCTAGONAL = (CH_5POINT0 |AudioChannelSet::BACK_LEFT |AudioChannelSet::BACK_CENTER |AudioChannelSet::BACK_RIGHT),
HEXADECAGONAL, STEREO_DOWNMIX = (AudioChannelSet::STEREO_LEFT |AudioChannelSet::STEREO_RIGHT),
HOA_FIRST,
HOA_SECOND,
HOA_THIRD
}
音频声道数类型,将用户申请的解码器输出格式表示为编解码器的声道类型。(API11废弃)
OH_MediaType {
MEDIA_TYPE_AUD = 0,
MEDIA_TYPE_VID = 1,
MEDIA_TYPE_SUBTITILE = 2
}
媒体类型。
OH_AACProfile {
AAC_PROFILE_LC = 0,
AAC_PROFILE_HE = 3,
AAC_PROFILE_HE_V2 = 4
}
AAC档次。
(AAC_PROFILE_HE, AAC_PROFILE_HE_V2暂未开放)
OH_AVCProfile {
AVC_PROFILE_BASELINE = 0,
AVC_PROFILE_HIGH = 4,
AVC_PROFILE_MAIN = 8
}
AVC档次。
OH_HEVCProfile {
HEVC_PROFILE_MAIN = 0,
HEVC_PROFILE_MAIN_10 = 1,
HEVC_PROFILE_MAIN_STILL = 2,
HEVC_PROFILE_MAIN_10_HDR10 = 3,
HEVC_PROFILE_MAIN_10_HDR10_PLUS = 4
}
HEVC档次。
(HEVC_PROFILE_MAIN_10_HDR10、HEVC_PROFILE_MAIN_10_HDR10_PLUS在API 14废弃)。
OH_VVCProfile {
VVC_PROFILE_MAIN_10 = 1,
VVC_PROFILE_MAIN_12 = 2,
VVC_PROFILE_MAIN_12_INTRA = 10,
VVC_PROFILE_MULTI_MAIN_10 = 17,
VVC_PROFILE_MAIN_10_444 = 33,
VVC_PROFILE_MAIN_12_444 = 34,
VVC_PROFILE_MAIN_16_444 = 36,
VVC_PROFILE_MAIN_12_444_INTRA = 42,
VVC_PROFILE_MAIN_16_444_INTRA = 44,
VVC_PROFILE_MULTI_MAIN_10_444 = 49,
VVC_PROFILE_MAIN_10_STILL = 65,
VVC_PROFILE_MAIN_12_STILL = 66,
VVC_PROFILE_MAIN_10_444_STILL = 97,
VVC_PROFILE_MAIN_12_444_STILL = 98,
VVC_PROFILE_MAIN_16_444_STILL = 100
}
VVC档次。
OH_H263Profile {
H263_PROFILE_BASELINE = 0,
H263_PROFILE_VERSION_1_BACKWARD_COMPATIBILITY = 2
}
H.263档次。
OH_MPEG2Profile {
MPEG2_PROFILE_SIMPLE = 0,
MPEG2_PROFILE_MAIN = 1,
MPEG2_PROFILE_SNR = 2,
MPEG2_PROFILE_SPATIAL = 3,
MPEG2_PROFILE_HIGH = 4,
MPEG2_PROFILE_422 = 5
}
MPEG2档次。
OH_MPEG4Profile {
MPEG4_PROFILE_SIMPLE = 0,
MPEG4_PROFILE_SIMPLE_SCALABLE = 1,
MPEG4_PROFILE_CORE = 2,
MPEG4_PROFILE_MAIN = 3,
MPEG4_PROFILE_NBIT = 4,
MPEG4_PROFILE_HYBRID = 5,
MPEG4_PROFILE_BASIC_ANIMATED_TEXTURE = 6,
MPEG4_PROFILE_SCALABLE_TEXTURE = 7,
MPEG4_PROFILE_SIMPLE_FA = 8,
MPEG4_PROFILE_ADVANCED_REAL_TIME_SIMPLE = 9,
MPEG4_PROFILE_CORE_SCALABLE = 10,
MPEG4_PROFILE_ADVANCED_CODING_EFFICIENCY = 11,
MPEG4_PROFILE_ADVANCED_CORE = 12,
MPEG4_PROFILE_ADVANCED_SCALABLE_TEXTURE = 13,
MPEG4_PROFILE_ADVANCED_SIMPLE = 17
}
MPEG4档次。
OH_AVOutputFormat {
AV_OUTPUT_FORMAT_DEFAULT = 0,
AV_OUTPUT_FORMAT_MPEG_4 = 2,
AV_OUTPUT_FORMAT_M4A = 6,
AV_OUTPUT_FORMAT_AMR = 8,
AV_OUTPUT_FORMAT_MP3 = 9,
AV_OUTPUT_FORMAT_WAV = 10,
AV_OUTPUT_FORMAT_AAC = 11
}
封装器支持的输出文件格式。
OH_AVSeekMode {
SEEK_MODE_NEXT_SYNC = 0,
SEEK_MODE_PREVIOUS_SYNC,
SEEK_MODE_CLOSEST_SYNC
}
跳转模式。
OH_ScalingMode {
SCALING_MODE_SCALE_TO_WINDOW = 1,
SCALING_MODE_SCALE_CROP = 2
}
缩放模式。(API14废弃)
OH_BitsPerSample {
SAMPLE_U8 = 0, SAMPLE_S16LE = 1,
SAMPLE_S24LE = 2, SAMPLE_S32LE = 3,
SAMPLE_F32LE = 4, SAMPLE_U8P = 5,
SAMPLE_S16P = 6, SAMPLE_S24P = 7,
SAMPLE_S32P = 8, SAMPLE_F32P = 9,
INVALID_WIDTH = -1
}
每个编码样本的音频位数。
OH_ColorPrimary {
COLOR_PRIMARY_BT709 = 1,
COLOR_PRIMARY_UNSPECIFIED = 2,
COLOR_PRIMARY_BT470_M = 4,
COLOR_PRIMARY_BT601_625 = 5,
COLOR_PRIMARY_BT601_525 = 6,
COLOR_PRIMARY_SMPTE_ST240 = 7,
COLOR_PRIMARY_GENERIC_FILM = 8,
COLOR_PRIMARY_BT2020 = 9,
COLOR_PRIMARY_SMPTE_ST428 = 10,
COLOR_PRIMARY_P3DCI = 11,
COLOR_PRIMARY_P3D65 = 12
}
色域。
OH_TransferCharacteristic {
TRANSFER_CHARACTERISTIC_BT709 = 1,
TRANSFER_CHARACTERISTIC_UNSPECIFIED = 2,
TRANSFER_CHARACTERISTIC_GAMMA_2_2 = 4,
TRANSFER_CHARACTERISTIC_GAMMA_2_8 = 5,
TRANSFER_CHARACTERISTIC_BT601 = 6,
TRANSFER_CHARACTERISTIC_SMPTE_ST240 = 7,
TRANSFER_CHARACTERISTIC_LINEAR = 8,
TRANSFER_CHARACTERISTIC_LOG = 9,
TRANSFER_CHARACTERISTIC_LOG_SQRT = 10,
TRANSFER_CHARACTERISTIC_IEC_61966_2_4 = 11,
TRANSFER_CHARACTERISTIC_BT1361 = 12,
TRANSFER_CHARACTERISTIC_IEC_61966_2_1 = 13,
TRANSFER_CHARACTERISTIC_BT2020_10BIT = 14,
TRANSFER_CHARACTERISTIC_BT2020_12BIT = 15,
TRANSFER_CHARACTERISTIC_PQ = 16,
TRANSFER_CHARACTERISTIC_SMPTE_ST428 = 17,
TRANSFER_CHARACTERISTIC_HLG = 18
}
转移特性。
OH_MatrixCoefficient {
MATRIX_COEFFICIENT_IDENTITY = 0,
MATRIX_COEFFICIENT_BT709 = 1,
MATRIX_COEFFICIENT_UNSPECIFIED = 2,
MATRIX_COEFFICIENT_FCC = 4,
MATRIX_COEFFICIENT_BT601_625 = 5,
MATRIX_COEFFICIENT_BT601_525 = 6, MATRIX_COEFFICIENT_SMPTE_ST240 = 7,
MATRIX_COEFFICIENT_YCGCO = 8,
MATRIX_COEFFICIENT_BT2020_NCL = 9,
MATRIX_COEFFICIENT_BT2020_CL = 10,
MATRIX_COEFFICIENT_SMPTE_ST2085 = 11,
MATRIX_COEFFICIENT_CHROMATICITY_NCL = 12,
MATRIX_COEFFICIENT_CHROMATICITY_CL = 13,
MATRIX_COEFFICIENT_ICTCP = 14
}
矩阵系数。
OH_AVCLevel {
AVC_LEVEL_1 = 0,
AVC_LEVEL_1b = 1,
AVC_LEVEL_11 = 2,
AVC_LEVEL_12 = 3,
AVC_LEVEL_13 = 4,
AVC_LEVEL_2 = 5,
AVC_LEVEL_21 = 6,
AVC_LEVEL_22 = 7,
AVC_LEVEL_3 = 8,
AVC_LEVEL_31 = 9,
AVC_LEVEL_32 = 10,
AVC_LEVEL_4 = 11,
AVC_LEVEL_41 = 12,
AVC_LEVEL_42 = 13,
AVC_LEVEL_5 = 14,
AVC_LEVEL_51 = 15,
AVC_LEVEL_52 = 16,
AVC_LEVEL_6 = 17,
AVC_LEVEL_61 = 18,
AVC_LEVEL_62 = 19
}
AVC级别。
OH_HEVCLevel {
HEVC_LEVEL_1 = 0,
HEVC_LEVEL_2 = 1,
HEVC_LEVEL_21 = 2,
HEVC_LEVEL_3 = 3,
HEVC_LEVEL_31 = 4,
HEVC_LEVEL_4 = 5,
HEVC_LEVEL_41 = 6,
HEVC_LEVEL_5 = 7,
HEVC_LEVEL_51 = 8,
HEVC_LEVEL_52 = 9,
HEVC_LEVEL_6 = 10,
HEVC_LEVEL_61 = 11,
HEVC_LEVEL_62 = 12
}
HEVC级别。
OH_VVCLevel {
VVC_LEVEL_1 = 16,
VVC_LEVEL_2 = 32,
VVC_LEVEL_21 = 35,
VVC_LEVEL_3 = 48,
VVC_LEVEL_31 = 51,
VVC_LEVEL_4 = 64,
VVC_LEVEL_41 = 67,
VVC_LEVEL_5 = 80,
VVC_LEVEL_51 = 83,
VVC_LEVEL_52 = 86,
VVC_LEVEL_6 = 96,
VVC_LEVEL_61 = 99,
VVC_LEVEL_62 = 102,
VVC_LEVEL_63 = 105,
VVC_LEVEL_155 = 255
}
VVC级别。
OH_H263Level {
H263_LEVEL_10 = 0,
H263_LEVEL_20 = 1,
H263_LEVEL_30 = 2,
H263_LEVEL_40 = 3,
H263_LEVEL_45 = 4,
H263_LEVEL_50 = 5,
H263_LEVEL_60 = 6,
H263_LEVEL_70 = 7
}
H.263级别。
OH_MPEG2Level {
MPEG2_LEVEL_LL = 0,
MPEG2_LEVEL_ML = 1,
MPEG2_LEVEL_H14 = 2,
MPEG2_LEVEL_HL = 3
}
MPEG2级别。
OH_MPEG4Level {
MPEG4_LEVEL_0 = 0,
MPEG4_LEVEL_0B = 1,
MPEG4_LEVEL_1 = 2,
MPEG4_LEVEL_2 = 3,
MPEG4_LEVEL_3 = 4,
MPEG4_LEVEL_3B = 5,
MPEG4_LEVEL_4 = 6,
MPEG4_LEVEL_4A = 7,
MPEG4_LEVEL_5 = 8,
MPEG4_LEVEL_6 = 9
}
MPEG4级别。
OH_TemporalGopReferenceMode {
ADJACENT_REFERENCE = 0,
JUMP_REFERENCE = 1,
UNIFORMLY_SCALED_REFERENCE = 2
}
时域图片组参考模式。
OH_BitrateMode {
BITRATE_MODE_CBR = 0,
BITRATE_MODE_VBR = 1,
BITRATE_MODE_CQ = 2,
BITRATE_MODE_SQR = 3
}
编码器的比特率模式。

变量

名称 描述
const char * OH_AVCODEC_MIMETYPE_AUDIO_AAC AAC音频编解码器的MIME类型。
const char * OH_AVCODEC_MIMETYPE_AUDIO_FLAC FLAC音频编解码器的MIME类型。
const char * OH_AVCODEC_MIMETYPE_AUDIO_OPUS OPUS音频编解码器的MIME类型。(此规格暂未开放)
const char * OH_AVCODEC_MIMETYPE_AUDIO_G711MU G711MU音频编解码器的MIME类型。
const char * OH_AVCODEC_MIMETYPE_AUDIO_VORBIS VORBIS音频解码器的MIME类型。
const char * OH_AVCODEC_MIMETYPE_AUDIO_MPEG MP3音频解码器的MIME类型。
const char * OH_AVCODEC_MIMETYPE_AUDIO_VIVID Audio Vivid音频解码器的MIME类型。(此规格暂未开放)
const char * OH_AVCODEC_MIMETYPE_AUDIO_AMR_NB AMR_NB音频解码器的MIME类型。
const char * OH_AVCODEC_MIMETYPE_AUDIO_AMR_WB AMR_WB音频解码器的MIME类型。
const char * OH_AVCODEC_MIMETYPE_AUDIO_APE APE音频解码器的MIME类型。
const char * OH_AVCODEC_MIMETYPE_VIDEO_VVC VVC(H.266)视频编解码器的MIME类型。
const char * OH_AVCODEC_MIMETYPE_VIDEO_HEVC HEVC(H.265)视频编解码器的MIME类型。
const char * OH_AVCODEC_MIMETYPE_VIDEO_AVC AVC(H.264)视频编解码器的MIME类型。
const char * OH_AVCODEC_MIMETYPE_VIDEO_H263 H.263视频编解码器的MIME类型。
const char * OH_AVCODEC_MIMETYPE_VIDEO_MPEG4 MPEG4视频编码的MIME类型,仅用于封装MPEG4视频码流使用。(API11废弃)
const char * OH_AVCODEC_MIMETYPE_VIDEO_MPEG2 视频MPEG2编解码器的MIME类型。
const char * OH_AVCODEC_MIMETYPE_VIDEO_MPEG4_PART2 视频MPEG4 Part2编解码器的MIME类型。
const char * OH_AVCODEC_MIMETYPE_IMAGE_JPG JPG图片编码的MIME类型,仅用于封装JPG封面时使用。
const char * OH_AVCODEC_MIMETYPE_IMAGE_PNG PNG图片编码的MIME类型,仅用于封装PNG封面时使用。
const char * OH_AVCODEC_MIMETYPE_IMAGE_BMP BMP图片编码的MIME类型,仅用于封装BMP封面时使用。
const char * OH_AVCODEC_MIMETYPE_SUBTITLE_WEBVTT WEBVTT字幕解封装器的MIME类型。
const char * OH_AVCODEC_MIMETYPE_SUBTITLE_SRT SRT字幕解封装器的MIME类型。
const char * OH_FEATURE_PROPERTY_KEY_VIDEO_ENCODER_MAX_LTR_FRAME_COUNT 在视频编码中获取长期参考帧的最大个数的键,值类型为int32_t。
const char * OH_MD_KEY_CODEC_CONFIG 编解码器特定数据的键,视频中表示传递SPS/PPS,音频中表示传递extraData,值类型为uint8_t*。 (视频编解码此功能暂未支持)
const char * OH_MD_MAX_INPUT_BUFFER_COUNT 最大输入缓冲区个数的键,值类型为int32_t。
const char * OH_MD_MAX_OUTPUT_BUFFER_COUNT 最大输出缓冲区个数的键,值类型int32_t。
const char * OH_MD_KEY_BITRATE 比特率的键,值类型为int64_t。
const char * OH_MD_KEY_PROFILE 编码档次,值类型为int32_t,请参见OH_AVCProfileOH_HEVCProfileOH_AACProfile
const char * OH_MD_KEY_MAX_INPUT_SIZE 设置解码输入码流大小最大值的键,值类型为int32_t。
const char * OH_ED_KEY_TIME_STAMP 表示surfacebuffer时间戳的键,值类型为int64_t。(API14废弃)
const char * OH_ED_KEY_EOS 表示surfacebuffer流结束符的键,值类型为int32_t。(API14废弃)
const char * OH_MD_KEY_WIDTH 视频宽度的键,值类型为int32_t。
const char * OH_MD_KEY_HEIGHT 视频高度键,值类型为int32_t。
const char * OH_MD_KEY_PIXEL_FORMAT 视频像素格式的键,值类型为int32_t,请参见OH_AVPixelFormat
const char * OH_MD_KEY_FRAME_RATE 视频帧率的键,值类型为double。
const char * OH_MD_KEY_ROTATION surface旋转角度的键。值类型为int32_t:应为{0, 90, 180, 270},默认值为0。该键只在视频解码Surface模式下使用。
const char * OH_MD_KEY_RANGE_FLAG 视频YUV值域标志的键,值类型为int32_t,1表示full range,0表示limited range。
const char * OH_MD_KEY_COLOR_PRIMARIES 视频色域的键,值类型为int32_t,请参见OH_ColorPrimary,遵循H.273标准Table2。
const char * OH_MD_KEY_TRANSFER_CHARACTERISTICS 视频传递函数的键,值类型为int32_t,请参见OH_TransferCharacteristic,遵循H.273标准Table3。
const char * OH_MD_KEY_MATRIX_COEFFICIENTS 视频矩阵系数的键,值类型为int32_t,请参见OH_MatrixCoefficient,遵循H.273标准Table4。
const char * OH_MD_KEY_SCALING_MODE 视频缩放模式,值类型为int32_t,请参见OH_ScalingMode。该键是可选的且只用于视频解码Surface模式。建议直接调用OH_NativeWindow_NativeWindowSetScalingModeV2接口进行设置。(API14废弃)
const char * OH_MD_KEY_VIDEO_CROP_TOP 描述裁剪矩形顶部坐标(y)值的键,值类型为int32_t。
const char * OH_MD_KEY_VIDEO_CROP_BOTTOM 描述裁剪矩形底部坐标(y)值的键,值类型为int32_t。
const char * OH_MD_KEY_VIDEO_CROP_LEFT 描述裁剪矩形左坐标(x)值的键,值类型为int32_t。
const char * OH_MD_KEY_VIDEO_CROP_RIGHT 描述裁剪矩形右坐标(x)值的键,值类型为int32_t。
const char * OH_MD_KEY_VIDEO_DECODER_OUTPUT_ENABLE_VRR 解码器是否打开视频可变帧率功能的键,值类型为int32_t。
const char * OH_MD_KEY_SQR_FACTOR 描述SQR码控模式的质量参数,值越小,编码输出文件越大,质量越好,值类型为int32_t。
const char * OH_MD_KEY_MAX_BITRATE 描述SQR码控模式的最大码率,单位bps,值类型为int64_t。
const char * OH_MD_KEY_VIDEO_ENCODER_ROI_PARAMS 描述ROI编码参数,包括ROI区域和deltaQp,值类型为string。
const char * OH_MD_KEY_VIDEO_STRIDE 描述视频帧宽跨距的键,值类型为int32_t。
const char * OH_MD_KEY_VIDEO_SLICE_HEIGHT 描述视频帧高跨距的键,值类型为int32_t。
const char * OH_MD_KEY_VIDEO_PIC_WIDTH 描述视频帧真实宽度的键,值类型为int32_t。
const char * OH_MD_KEY_VIDEO_PIC_HEIGHT 描述视频帧真实高度的键,值类型为int32_t。
const char * OH_MD_KEY_VIDEO_ENABLE_LOW_LATENCY 使能低时延视频编解码的键,值类型为int32_t,1表示使能,0表示其它情况。如果使能,则视频编码器或视频解码器持有的输入和输出数据不会超过编解码器标准所要求的数量。
const char * OH_MD_KEY_VIDEO_ENCODE_BITRATE_MODE 视频编码码率模式,值类型为int32_t,请参见OH_BitrateMode
const char * OH_MD_KEY_QUALITY 所需编码质量的键。值类型为int32_t,此键仅适用于配置在恒定质量模式下的编码器。
const char * OH_MD_KEY_REQUEST_I_FRAME 请求立即编码I帧的键。值类型为int32_t。
const char * OH_MD_KEY_I_FRAME_INTERVAL 关键帧间隔的键,值类型为int32_t,单位为毫秒。该键是可选的且只用于视频编码。
const char * OH_MD_KEY_VIDEO_ENCODER_ENABLE_TEMPORAL_SCALABILITY 使能分层编码的键,值类型为int32_t,1表示使能,0表示其它情况。
const char * OH_MD_KEY_VIDEO_ENCODER_TEMPORAL_GOP_SIZE 描述图片组基本层图片的间隔大小的键,值类型为int32_t,只在使能分层编码时生效。
const char * OH_MD_KEY_VIDEO_ENCODER_TEMPORAL_GOP_REFERENCE_MODE 描述图片组内参考模式的键,值类型为int32_t,请参见OH_TemporalGopReferenceMode,只在使能分层编码时生效。
const char * OH_MD_KEY_VIDEO_ENCODER_LTR_FRAME_COUNT 描述长期参考帧个数的键,值类型为int32_t,必须在支持的值范围内使用。该键是可选的且只用于视频编码。
const char * OH_MD_KEY_VIDEO_ENCODER_PER_FRAME_MARK_LTR 标记当前帧为长期参考帧的键,值类型为int32_t,1表示被标记,0表示其它情况。该键是可选的且只用于视频编码。
const char * OH_MD_KEY_VIDEO_ENCODER_PER_FRAME_USE_LTR 描述当前帧参考的长期参考帧帧的POC号的键,值类型为int32_t。该键是可选的且只用于视频编码。
const char * OH_MD_KEY_VIDEO_PER_FRAME_IS_LTR 当前OH_AVBuffer中输出的码流对应的帧是否为长期参考帧的键,值类型为int32_t,1表示是LTR,0表示其它情况。该键是可选的且只用于视频编码。
const char * OH_MD_KEY_VIDEO_PER_FRAME_POC 描述帧的POC号的键,值类型为int32_t。该键是可选的且只用于视频编码。
const char * OH_MD_KEY_VIDEO_ENCODER_QP_MAX 描述视频编码器允许的最大量化参数的键,值类型为int32_t。
const char * OH_MD_KEY_VIDEO_ENCODER_QP_MIN 描述视频编码器允许的最小量化参数的键,值类型为int32_t。
const char * OH_MD_KEY_VIDEO_ENCODER_QP_AVERAGE 描述视频帧平均量化参数的键,值类型为int32_t。
const char * OH_MD_KEY_VIDEO_ENCODER_MSE 描述视频帧平方误差的键,值类型为double。
const char * OH_MD_KEY_VIDEO_ENCODER_REPEAT_PREVIOUS_FRAME_AFTER 如果在上一帧提交给编码器之后没有新的帧可用,则会以毫秒为单位重复提交最后一帧,值类型为int32_t。
const char * OH_MD_KEY_VIDEO_ENCODER_REPEAT_PREVIOUS_MAX_COUNT 描述编码器在没有新的帧可用的情况下,可以对之前的帧进行重复编码的最大次数,值类型为int32_t。
const char * OH_MD_KEY_VIDEO_DECODER_OUTPUT_COLOR_SPACE 设置视频解码器输出色彩空间的键,值类型为int32_t。 支持的值为OH_COLORSPACE_BT709_LIMIT。
const char * OH_MD_KEY_AUDIO_SAMPLE_FORMAT 音频原始格式的键,值类型为int32_t。请参见OH_BitsPerSample
const char * OH_MD_KEY_AUD_CHANNEL_COUNT 音频通道计数键,值类型为int32_t。
const char * OH_MD_KEY_AUD_SAMPLE_RATE 音频采样率键,值类型为int32_t。
const char * OH_MD_KEY_AUDIO_COMPRESSION_LEVEL 音频编解码压缩水平的键,只在音频编码使用,值类型为int32_t。
const char * OH_MD_KEY_CHANNEL_LAYOUT 所需编码通道布局的键。值类型为int64_t,此键仅适用于编码器。
const char * OH_MD_KEY_BITS_PER_CODED_SAMPLE 每个编码样本位数的键,值类型为int32_t,支持flac编码器,请参见OH_BitsPerSample
const char * OH_MD_KEY_SBR aac sbr模式的键,值类型为int32_t,aac编码器支持。
const char * OH_MD_KEY_COMPLIANCE_LEVEL flac兼容性等级的键,值类型为int32_t,仅在音频编码使用。
const char * OH_MD_KEY_AAC_IS_ADTS aac格式的键,aac格式分为ADTS格式和LATM格式。值类型为int32_t,aac解码器支持。
const char * OH_MD_KEY_IDENTIFICATION_HEADER vorbis标识头的键,值类型为uint8_t*,仅vorbis解码器支持。
const char * OH_MD_KEY_SETUP_HEADER vorbis设置头的键,值类型为uint8_t*,仅vorbis解码器支持。
const char * OH_MD_KEY_AUDIO_OBJECT_NUMBER 音频对象数目的键,值类型为int32_t,只有Audio Vivid解码使用。
const char * OH_MD_KEY_AUDIO_VIVID_METADATA Audio Vivid元数据的键,值类型为uint8_t*,只有Audio Vivid解码使用。
const char * OH_MD_KEY_VIDEO_IS_HDR_VIVID 媒体文件中的视频轨是否为HDR Vivid的键,支持封装和解封装,值类型为int32_t。
const char * OH_MD_KEY_START_TIME 媒体文件中第一帧起始位置开始时间的键,以微秒为单位,值类型为int64_t。
const char * OH_MD_KEY_TRACK_START_TIME 轨道开始时间的键,以微秒为单位,值类型为int64_t。
const char * OH_MD_KEY_TRACK_TYPE 轨道媒体类型的键,值类型为int32_t,请参见OH_MediaType
const char * OH_MD_KEY_DURATION 媒体文件持续时间的键,值类型为int64_t。
const char * OH_MD_KEY_TITLE 媒体文件标题的键,值类型为string。
const char * OH_MD_KEY_ARTIST 媒体文件艺术家的键,值类型为string。
const char * OH_MD_KEY_ALBUM 专辑的媒体文件的键,值类型为string。
const char * OH_MD_KEY_ALBUM_ARTIST 专辑艺术家的键,值类型为string。
const char * OH_MD_KEY_DATE 媒体文件日期的键,值类型为string,例如2024年。
const char * OH_MD_KEY_COMMENT 媒体文件注释的键,值类型为string。
const char * OH_MD_KEY_GENRE 媒体文件流派的键,值类型为string。
const char * OH_MD_KEY_COPYRIGHT 媒体文件版权的键,值类型为string。
const char * OH_MD_KEY_LANGUAGE 媒体文件语言的键,值类型为string。
const char * OH_MD_KEY_DESCRIPTION 媒体文件描述的键,值类型为string。
const char * OH_MD_KEY_LYRICS 媒体文件歌词的键,值类型为string。
const char * OH_MD_KEY_TRACK_COUNT 媒体文件轨道数量的键,值类型为int32_t。
const char * OH_MD_KEY_BUFFER_DURATION AVBuffer中携带的音视频或字幕的sample对应的持续时间的键,以微秒为单位,值类型为int64_t。
const char * OH_MD_KEY_DECODING_TIMESTAMP AVBuffer中携带的音视频或字幕的sample对应的解码时间戳的键,以微秒为单位,值类型为int64_t。
const char * OH_MD_KEY_CODEC_MIME 编解码器MIME类型的键,值类型为string。
const char * OH_MD_KEY_VIDEO_SAR 样本长宽比的键,值类型为double。
const char * OH_MD_KEY_CREATION_TIME 媒体文件创建时间的元数据,值类型为string。

类型定义说明

OH_AACProfile

typedef enum OH_AACProfile OH_AACProfile

描述 AAC档次。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 9

OH_AVCLevel

typedef enum OH_AVCLevel OH_AVCLevel

描述 AVC级别。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 12

OH_AVCodec

typedef struct OH_AVCodec OH_AVCodec

描述 为音视频编解码接口定义native层对象。

起始版本: 9

OH_AVCodecAsyncCallback

typedef struct OH_AVCodecAsyncCallback OH_AVCodecAsyncCallback

描述 OH_AVCodec中所有异步回调函数指针的集合。将该结构体的实例注册到OH_AVCodec实例中,并处理回调上报的信息,以保证OH_AVCodec的正常运行。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 9

废弃版本: 11

替代接口:OH_AVCodecCallback

参数:

名称 描述
onError 监控编解码器操作错误,请参见OH_AVCodecOnError
onStreamChanged 监控编解码器流变化,请参见OH_AVCodecOnStreamChanged
onNeedInputData 监控编解码器需要输入数据,请参见OH_AVCodecOnNeedInputData
onNeedOutputData 监控编解码器已生成输出数据,请参见OH_AVCodecOnNewOutputData

OH_AVCodecCallback

typedef struct OH_AVCodecCallback OH_AVCodecCallback

描述 OH_AVCodec中所有异步回调函数指针的集合。将该结构体的实例注册到OH_AVCodec实例中,并处理回调上报的信息,以保证OH_AVCodec的正常运行。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 11

参数:

名称 描述
onError 监控编解码器操作错误,请参见OH_AVCodecOnError
onStreamChanged 监控编解码器流变化,请参见OH_AVCodecOnStreamChanged
onNeedInputBuffer 监控编解码器需要输入数据,请参见OH_AVCodecOnNeedInputBuffer
onNewOutputBuffer 监控编解码器已生成输出数据,请参见OH_AVCodecOnNewOutputBuffer

OH_AVCodecOnError

typedef void(* OH_AVCodecOnError) (OH_AVCodec *codec, int32_t errorCode, void *userData)

描述 当OH_AVCodec实例运行出错时,回调将上报具体的错误信息的函数指针。

使用场景 错误码
音频编解码 AV_ERR_DRM_DECRYPT_FAILED:DRM解密失败。
视频编解码 AV_ERROR_NO_MEMORY:系统资源不足。
AV_ERROR_UNKNOWN:未知错误,请通过具体日志分析。
AV_ERR_SERVICE_DIED:服务状态已消亡。
视频解码 AV_ERR_VIDEO_UNSUPPORTED_COLOR_SPACE_CONVERSION:当前输入不支持色彩空间转换功能。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 9

参数:

名称 描述
codec OH_AVCodec实例。
errorCode 特定错误代码。在不同场景下返回的错误码不同,详情可见上述描述中的表格。
userData 用户执行回调所依赖的数据。

OH_AVCodecOnNeedInputBuffer

typedef void(* OH_AVCodecOnNeedInputBuffer) (OH_AVCodec *codec, uint32_t index, OH_AVBuffer *buffer, void *userData)

描述 当OH_AVCodec在运行过程中需要新的输入数据时,将调用此函数指针,并携带可用的缓冲区来填充新的输入数据。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 11

参数:

名称 描述
codec OH_AVCodec实例。
index 与新可用的输入缓冲区相对应的索引。
buffer 新的可用输入缓冲区。
userData 用户执行回调所依赖的数据。

OH_AVCodecOnNeedInputData

typedef void(* OH_AVCodecOnNeedInputData) (OH_AVCodec *codec, uint32_t index, OH_AVMemory *data, void *userData)

描述 当OH_AVCodec在运行过程中需要新的输入数据时,将调用此函数指针,并携带可用的缓冲区来填充新的输入数据。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 9

废弃版本: 11

替代接口:OH_AVCodecOnNeedInputBuffer

参数:

名称 描述
codec OH_AVCodec实例。
index 与新可用的输入缓冲区相对应的索引。
data 新的可用输入缓冲区。
userData 用户执行回调所依赖的数据。

OH_AVCodecOnNewOutputBuffer

typedef void(* OH_AVCodecOnNewOutputBuffer) (OH_AVCodec *codec, uint32_t index, OH_AVBuffer *buffer, void *userData)

描述 当OH_AVCodec运行过程中生成新的输出数据时,将调用此函数指针,并携带包含新输出数据的缓冲区。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 11

参数:

名称 描述
codec OH_AVCodec实例。
index 与新输出缓冲区对应的索引。
buffer 包含新输出数据的缓冲区。
userData 用户执行回调所依赖的数据。

OH_AVCodecOnNewOutputData

typedef void(* OH_AVCodecOnNewOutputData) (OH_AVCodec *codec, uint32_t index, OH_AVMemory *data, OH_AVCodecBufferAttr *attr, void *userData)

描述 当OH_AVCodec运行过程中生成新的输出数据时,将调用此函数指针,并携带包含新输出数据的缓冲区。 需要注意的是,OH_AVCodecBufferAttr指针的生命周期仅在调用函数指针时有效,这将禁止调用结束后继续访问。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 9

废弃版本: 11

替代接口:OH_AVCodecOnNewOutputBuffer

参数:

名称 描述
codec OH_AVCodec实例。
index 与新输出缓冲区对应的索引。
data 包含新输出数据的缓冲区。
attr 新输出缓冲区的说明,请参见OH_AVCodecBufferAttr
userData 用户执行回调所依赖的数据。

OH_AVCodecOnStreamChanged

typedef void(* OH_AVCodecOnStreamChanged) (OH_AVCodec *codec, OH_AVFormat *format, void *userData)

描述 当视频解码输入码流分辨率或者视频编码输出码流的分辨率发生变化时,调用此函数指针报告新的流描述信息。
从API 15开始,支持音频解码时,码流采样率、声道数或者音频采样格式发生变化时,将调用此函数指针报告新的流描述信息,支持检测此变化的解码格式有:AAC,FLAC,MP3,VORBIS。
需要注意的是,OH_AVFormat指针的生命周期只有在函数指针被调用时才有效,调用结束后禁止继续访问。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 9

参数:

名称 描述
codec OH_AVCodec实例。
format 新输出流描述信息。
userData 用户执行回调所依赖的数据。

OH_AVCProfile

typedef enum OH_AVCProfile OH_AVCProfile

描述 AVC档次。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 9

OH_AVDataSource

typedef struct OH_AVDataSource OH_AVDataSource

描述 用户自定义数据源。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 12

OH_AVDataSourceReadAt

typedef int32_t(* OH_AVDataSourceReadAt) (OH_AVBuffer *data, int32_t length, int64_t pos)

描述 函数指针定义,用于提供获取用户自定义媒体数据的能力。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 12

参数:

名称 描述
data 要填充的缓冲区。
length 要读取的数据长度。
pos 从偏移量位置读取。

返回:

读取到缓冲区的数据的实际长度。

OH_AVOutputFormat

typedef enum OH_AVOutputFormat OH_AVOutputFormat

描述 封装器支持的输出文件格式。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 10

OH_AVSeekMode

typedef enum OH_AVSeekMode OH_AVSeekMode

描述 跳转模式。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 10

OH_BitsPerSample

typedef enum OH_BitsPerSample OH_BitsPerSample

描述 每个编码样本的音频位数。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 10

OH_ColorPrimary

typedef enum OH_ColorPrimary OH_ColorPrimary

描述 色域。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 10

OH_HEVCLevel

typedef enum OH_HEVCLevel OH_HEVCLevel

描述 HEVC级别。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 12

OH_HEVCProfile

typedef enum OH_HEVCProfile OH_HEVCProfile

描述 HEVC档次。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 10

OH_MatrixCoefficient

typedef enum OH_MatrixCoefficient OH_MatrixCoefficient

描述 矩阵系数。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 10

OH_MediaType

typedef enum OH_MediaType OH_MediaType

描述 媒体类型。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 9

OH_MPEG2Level

typedef enum OH_MPEG2Level OH_MPEG2Level

描述

MPEG2级别。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 17

OH_MPEG2Profile

typedef enum OH_MPEG2Profile OH_MPEG2Profile

描述

MPEG2档次。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 17

OH_MPEG4Level

typedef enum OH_MPEG4Level OH_MPEG4Level

描述

MPEG4级别。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 17

OH_MPEG4Profile

typedef enum OH_MPEG4Profile OH_MPEG4Profile

描述

MPEG4档次。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 17

OH_ScalingMode

typedef enum OH_ScalingMode OH_ScalingMode

描述 缩放模式,只在Surface模式下使用。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 10

废弃版本: 14

替代接口:OHScalingModeV2

OH_TemporalGopReferenceMode

typedef enum OH_TemporalGopReferenceMode OH_TemporalGopReferenceMode

描述 时域图片组参考模式。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 12

OH_VVCLevel

typedef enum OH_VVCLevel OH_VVCLevel

描述 VVC级别。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 15

OH_VVCProfile

typedef enum OH_VVCProfile OH_VVCProfile

描述 VVC档次。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 15

OH_H263Level

typedef enum OH_H263Level OH_H263Level

描述 H.263级别。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 17

OH_H263Profile

typedef enum OH_H263Profile OH_H263Profile

描述 H.263档次。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 17

OH_TransferCharacteristic

typedef enum OH_TransferCharacteristic OH_TransferCharacteristic

描述 转移特性。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 10

OH_BitrateMode

typedef enum OH_BitrateMode OH_BitrateMode

描述 编码器的比特率模式。从API14开始改变key的位置。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 10

OHNativeWindow

typedef struct NativeWindow OHNativeWindow

描述 为图形接口定义native层对象。

起始版本: 9

枚举类型说明

AudioChannelLayout

enum AudioChannelLayout : uint64_t

描述 音频声道数类型,将用户申请的解码器输出格式表示为编解码器的声道类型。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 10

废弃版本: 11

替代接口:OH_AudioChannelLayout

枚举值 描述
UNKNOWN_CHANNEL_LAYOUT 未知通道布局
MONO 单通道布局
STEREO 立体声布局
CH_2POINT1 2.1布局
CH_2_1 2_1布局
SURROUND 环绕布局
CH_3POINT1 3.1布局
CH_4POINT0 4.0布局
CH_4POINT1 4.1布局
CH_2_2 2_2布局
QUAD 四角形布局
CH_5POINT0 5.0布局
CH_5POINT1 5.1布局
CH_5POINT0_BACK 5.0后置布局
CH_5POINT1_BACK 5.1后置布局
CH_6POINT0 6.0布局
CH_6POINT0_FRONT 6.0前置布局
HEXAGONAL 六角形布局
CH_6POINT1 6.1布局
CH_6POINT1_BACK 6.1后置布局
CH_6POINT1_FRONT 6.1前置布局
CH_7POINT0 7.0布局
CH_7POINT0_FRONT 7.0前置布局
CH_7POINT1 7.1布局
CH_7POINT1_WIDE 7.1宽布局
CH_7POINT1_WIDE_BACK 7.1后置宽布局
CH_3POINT1POINT2 3.1.2布局
CH_5POINT1POINT2 5.1.2布局
CH_5POINT1POINT4 5.1.4布局
CH_7POINT1POINT2 7.1.2布局
CH_7POINT1POINT4 7.1.4布局
CH_9POINT1POINT4 9.1.4布局
CH_9POINT1POINT6 9.1.6布局
CH_10POINT2 10.2布局
CH_22POINT2 22.2布局
OCTAGONAL 八边形布局
HEXADECAGONAL 十六边形布局
STEREO_DOWNMIX 立体声下混布局
HOA_FIRST 高阶立体声一阶布局
HOA_SECOND 高阶立体声二阶布局
HOA_THIRD 高阶立体声三阶布局

AudioChannelSet

enum AudioChannelSet : uint64_t

描述 音频声道数集合, 将每一个声道数映射为int64_t的变量。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 10

废弃版本: 11

替代接口:OH_AudioChannelSet

枚举值 描述
FRONT_LEFT 左前声道
FRONT_RIGHT 右前声道
FRONT_CENTER 中前声道
LOW_FREQUENCY 低频声道
BACK_LEFT 左后声道
BACK_RIGHT 右后声道
FRONT_LEFT_OF_CENTER 左前中置声道
FRONT_RIGHT_OF_CENTER 右前中置声道
BACK_CENTER 后方中置声道
SIDE_LEFT 左侧声道
SIDE_RIGHT 右侧声道
TOP_CENTER 上方中置声道
TOP_FRONT_LEFT 上方左前声道
TOP_FRONT_CENTER 上方中前声道
TOP_FRONT_RIGHT 上方右前声道
TOP_BACK_LEFT 上方左后声道
TOP_BACK_CENTER 上方中后声道
TOP_BACK_RIGHT 上方右后声道
STEREO_LEFT 立体声左声道
STEREO_RIGHT 立体声右声道
WIDE_LEFT 宽左声道
WIDE_RIGHT 宽右声道
SURROUND_DIRECT_LEFT 左环绕声道
SURROUND_DIRECT_RIGHT 右环绕声道
LOW_FREQUENCY_2 低频声道2
TOP_SIDE_LEFT 上方左侧声道
TOP_SIDE_RIGHT 上方右侧声道
BOTTOM_FRONT_CENTER 下方中前声道
BOTTOM_FRONT_LEFT 下方左前声道
BOTTOM_FRONT_RIGHT 下方右前声道
AMBISONICS_ACN0 零阶立体声声道数 0
AMBISONICS_ACN1 一阶立体声声道数 1
AMBISONICS_ACN2 一阶立体声声道数 2
AMBISONICS_ACN3 一阶立体声声道数 3
AMBISONICS_W 同于零阶立体声声道数 0
AMBISONICS_Y 同于一阶立体声声道数 1
AMBISONICS_Z 同于一阶立体声声道数 2
AMBISONICS_X 同于一阶立体声声道数 3
AMBISONICS_ACN4 二阶立体声声道数 4
AMBISONICS_ACN5 二阶立体声声道数 5
AMBISONICS_ACN6 二阶立体声声道数 6
AMBISONICS_ACN7 二阶立体声声道数 7
AMBISONICS_ACN8 二阶立体声声道数 8
AMBISONICS_ACN9 三阶立体声声道数 9
AMBISONICS_ACN10 三阶立体声声道数 10
AMBISONICS_ACN11 三阶立体声声道数 11
AMBISONICS_ACN12 三阶立体声声道数 12
AMBISONICS_ACN13 三阶立体声声道数 13
AMBISONICS_ACN14 三阶立体声声道数 14
AMBISONICS_ACN15 三阶立体声声道数 15

OH_AACProfile

enum OH_AACProfile

描述 AAC档次。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 9

枚举值 描述
AAC_PROFILE_LC AAC编码档次为Low Complexity级别。
AAC_PROFILE_HE AAC编码档次为High Efficiency级别。(此规格暂未开放)
起始版本: 14
AAC_PROFILE_HE_V2 AAC编码档次为High Efficiency v2级别。(此规格暂未开放)
起始版本: 14

OH_AVCLevel

enum OH_AVCLevel

描述 AVC级别。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 12

枚举值 描述
AVC_LEVEL_1 级别1
AVC_LEVEL_1b 级别1b
AVC_LEVEL_11 级别1.1
AVC_LEVEL_12 级别1.2
AVC_LEVEL_13 级别1.3
AVC_LEVEL_2 级别2
AVC_LEVEL_21 级别2.1
AVC_LEVEL_22 级别2.2
AVC_LEVEL_3 级别3
AVC_LEVEL_31 级别3.1
AVC_LEVEL_32 级别3.2
AVC_LEVEL_4 级别4
AVC_LEVEL_41 级别4.1
AVC_LEVEL_42 级别4.2
AVC_LEVEL_5 级别5
AVC_LEVEL_51 级别5.1
AVC_LEVEL_52 级别5.2
AVC_LEVEL_6 级别6
AVC_LEVEL_61 级别6.1
AVC_LEVEL_62 级别6.2

OH_AVCProfile

enum OH_AVCProfile

描述 AVC档次。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 9

枚举值 描述
AVC_PROFILE_BASELINE AVC编码档次为基本档次。
AVC_PROFILE_HIGH AVC编码档次为高档次。
AVC_PROFILE_MAIN AVC编码档次为主档次。

OH_AVOutputFormat

enum OH_AVOutputFormat

描述 封装器支持的输出文件格式。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 10

枚举值 描述
AV_OUTPUT_FORMAT_DEFAULT 输出文件格式默认值,默认为MP4格式。
AV_OUTPUT_FORMAT_MPEG_4 输出文件格式为MP4格式。
AV_OUTPUT_FORMAT_M4A 输出文件格式为M4A格式。
AV_OUTPUT_FORMAT_AMR 输出文件格式为AMR格式。
起始版本: 12
AV_OUTPUT_FORMAT_MP3 输出文件格式为MP3格式。
起始版本: 12
AV_OUTPUT_FORMAT_WAV 输出文件格式为WAV格式。
起始版本: 12
AV_OUTPUT_FORMAT_AAC 输出文件格式为AAC格式。
起始版本: 18

OH_AVSeekMode

enum OH_AVSeekMode

描述 跳转模式。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 10

枚举值 描述
SEEK_MODE_NEXT_SYNC 指定时间位置的下一I帧。若时间点后没有I帧,该模式可能跳转失败。
SEEK_MODE_PREVIOUS_SYNC 指定时间位置的上一I帧。
SEEK_MODE_CLOSEST_SYNC 指定时间位置的最近I帧。

OH_BitsPerSample

enum OH_BitsPerSample

描述 每个编码样本的音频位数。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 10

枚举值 描述
SAMPLE_U8 8位无符号整数采样。
SAMPLE_S16LE 16位有符号整数采样。
SAMPLE_S24LE 24位有符号整数采样。
SAMPLE_S32LE 32位有符号整数采样。
SAMPLE_F32LE 32位浮点采样。
SAMPLE_U8P 8位无符号整数平面采样。
SAMPLE_S16P 16位有符号整数平面采样。
SAMPLE_S24P 24位有符号整数平面采样。
SAMPLE_S32P 32位有符号整数平面采样。
SAMPLE_F32P 32位浮点平面采样。
INVALID_WIDTH 无效采样格式。

OH_ColorPrimary

enum OH_ColorPrimary

描述 色域。编解码都支持。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 10

枚举值 描述
COLOR_PRIMARY_BT709 BT709色域。
COLOR_PRIMARY_UNSPECIFIED 未指定色域。
COLOR_PRIMARY_BT470_M BT470_M色域。
COLOR_PRIMARY_BT601_625 BT601_625色域。
COLOR_PRIMARY_BT601_525 BT601_525色域。
COLOR_PRIMARY_SMPTE_ST240 SMPTE_ST240色域。
COLOR_PRIMARY_GENERIC_FILM GENERIC_FILM色域。
COLOR_PRIMARY_BT2020 BT2020色域。
COLOR_PRIMARY_SMPTE_ST428 SMPTE_ST428色域。
COLOR_PRIMARY_P3DCI P3DCI色域。
COLOR_PRIMARY_P3D65 P3D65色域。

OH_HEVCLevel

enum OH_HEVCLevel

描述 HEVC级别。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 12

枚举值 描述
HEVC_LEVEL_1 级别1
HEVC_LEVEL_2 级别2
HEVC_LEVEL_21 级别2.1
HEVC_LEVEL_3 级别3
HEVC_LEVEL_31 级别3.1
HEVC_LEVEL_4 级别4
HEVC_LEVEL_41 级别4.1
HEVC_LEVEL_5 级别5
HEVC_LEVEL_51 级别5.1
HEVC_LEVEL_52 级别5.2
HEVC_LEVEL_6 级别6
HEVC_LEVEL_61 级别6.1
HEVC_LEVEL_62 级别6.2

OH_HEVCProfile

enum OH_HEVCProfile

描述 HEVC档次。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 10

枚举值 描述
HEVC_PROFILE_MAIN HEVC编码档次为主档次。
HEVC_PROFILE_MAIN_10 HEVC编码档次为10bit主档次。
HEVC_PROFILE_MAIN_STILL HEVC编码档次为静止图像主档次。
HEVC_PROFILE_MAIN_10_HDR10 HEVC编码档次为HDR10主档次。(API14废弃)
HEVC_PROFILE_MAIN_10_HDR10_PLUS HEVC编码档次为HDR10+主档次。(API14废弃)

OH_MatrixCoefficient

enum OH_MatrixCoefficient

描述 矩阵系数。编解码都支持。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 10

枚举值 描述
MATRIX_COEFFICIENT_IDENTITY 单位矩阵。
MATRIX_COEFFICIENT_BT709 BT709转换矩阵。
MATRIX_COEFFICIENT_UNSPECIFIED 未指定转换矩阵。
MATRIX_COEFFICIENT_FCC FCC转换矩阵。
MATRIX_COEFFICIENT_BT601_625 BT601_625转换矩阵。
MATRIX_COEFFICIENT_BT601_525 BT601_525转换矩阵。
MATRIX_COEFFICIENT_SMPTE_ST240 SMPTE_ST240转换矩阵。
MATRIX_COEFFICIENT_YCGCO YCGCO转换矩阵。
MATRIX_COEFFICIENT_BT2020_NCL BT2020_NCL转换矩阵。
MATRIX_COEFFICIENT_BT2020_CL BT2020_CL转换矩阵。
MATRIX_COEFFICIENT_SMPTE_ST2085 SMPTE_ST2085转换矩阵。
MATRIX_COEFFICIENT_CHROMATICITY_NCL CHROMATICITY_NCL转换矩阵。
MATRIX_COEFFICIENT_CHROMATICITY_CL CHROMATICITY_CL转换矩阵。
MATRIX_COEFFICIENT_ICTCP ICTCP转换矩阵。

OH_MediaType

enum OH_MediaType

描述 媒体类型。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 9

枚举值 描述
MEDIA_TYPE_AUD 音频轨。
MEDIA_TYPE_VID 视频轨。
MEDIA_TYPE_SUBTITILE 字幕轨。
起始版本: 12

OH_MPEG2Level

enum OH_MPEG2Level

描述

MPEG2级别。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 17

枚举值 描述
MPEG2_LEVEL_LL 低级别。
MPEG2_LEVEL_ML 主级别。
MPEG2_LEVEL_H14 高1440级别。
MPEG2_LEVEL_HL 高级别。

OH_MPEG2Profile

enum OH_MPEG2Profile

描述

MPEG2档次。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 17

枚举值 描述
MPEG2_PROFILE_SIMPLE 简单档次。
MPEG2_PROFILE_MAIN 主档次。
MPEG2_PROFILE_SNR 信噪比可分级档次。
MPEG2_PROFILE_SPATIAL 空间可分级档次。
MPEG2_PROFILE_HIGH 高级档次。
MPEG2_PROFILE_422 4:2:2档次。

OH_MPEG4Level

enum OH_MPEG4Level

描述

MPEG4级别。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 17

枚举值 描述
MPEG4_LEVEL_0 级别0
MPEG4_LEVEL_0B 级别0B。
MPEG4_LEVEL_1 级别1。
MPEG4_LEVEL_2 级别2。
MPEG4_LEVEL_3 级别3。
MPEG4_LEVEL_3B 级别3B。
MPEG4_LEVEL_4 级别4。
MPEG4_LEVEL_4A 级别4A。
MPEG4_LEVEL_5 级别5。
MPEG4_LEVEL_6 级别6。

OH_MPEG4Profile

enum OH_MPEG4Profile

描述

MPEG4档次。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 17

枚举值 描述
MPEG4_PROFILE_SIMPLE 简单档次。
MPEG4_PROFILE_SIMPLE_SCALABLE 简单可分级档次。
MPEG4_PROFILE_CORE 核心档次。
MPEG4_PROFILE_MAIN 主档次。
MPEG4_PROFILE_NBIT N位档次。
MPEG4_PROFILE_HYBRID 混合档次。
MPEG4_PROFILE_BASIC_ANIMATED_TEXTURE 基本动画纹理档次。
MPEG4_PROFILE_SCALABLE_TEXTURE 可分级纹理档次。
MPEG4_PROFILE_SIMPLE_FA 简单FA档次。
MPEG4_PROFILE_ADVANCED_REAL_TIME_SIMPLE 高级实时简单档次。
MPEG4_PROFILE_CORE_SCALABLE 核心可分级档次。
MPEG4_PROFILE_ADVANCED_CODING_EFFICIENCY 高级编码效率档次。
MPEG4_PROFILE_ADVANCED_CORE 高级核心档次。
MPEG4_PROFILE_ADVANCED_SCALABLE_TEXTURE 高级可分级纹理档次。
MPEG4_PROFILE_ADVANCED_SIMPLE 高级简单档次。

OH_ScalingMode

enum OH_ScalingMode

描述 缩放模式,只在Surface模式下使用。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 10

废弃版本: 14

替代接口: OHScalingModeV2.OH_SCALING_MODE_SCALE_TO_WINDOW_V2、 OHScalingModeV2.OH_SCALING_MODE_SCALE_CROP_V2

枚举值 描述
SCALING_MODE_SCALE_TO_WINDOW 根据窗口尺寸自适应调整图像大小。
SCALING_MODE_SCALE_CROP 根据窗口尺寸裁剪图像大小。

OH_TemporalGopReferenceMode

enum OH_TemporalGopReferenceMode

描述 时域图片组参考模式。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 12

枚举值 描述
ADJACENT_REFERENCE 参考最近的短期参考帧。
JUMP_REFERENCE 参考最近的长期参考帧。
UNIFORMLY_SCALED_REFERENCE 均匀分层参考结构,在丢弃最高层级视频帧后,视频帧均匀分布。其中时域图片组个数必须为2的幂。

OH_VVCLevel

enum OH_VVCLevel

描述 VVC级别。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 15

枚举值 描述
VVC_LEVEL_1 级别1.0
VVC_LEVEL_2 级别2.0
VVC_LEVEL_21 级别2.1
VVC_LEVEL_3 级别3.0
VVC_LEVEL_31 级别3.1
VVC_LEVEL_4 级别4.0
VVC_LEVEL_41 级别4.1
VVC_LEVEL_5 级别5.0
VVC_LEVEL_51 级别5.1
VVC_LEVEL_52 级别5.2
VVC_LEVEL_6 级别6.0
VVC_LEVEL_61 级别6.1
VVC_LEVEL_62 级别6.2
VVC_LEVEL_63 级别6.3
VVC_LEVEL_155 级别15.5

OH_VVCProfile

enum OH_VVCProfile

描述 VVC档次。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 15

枚举值 描述
VVC_PROFILE_MAIN_10 VVC编码档次为10bit主档次。
VVC_PROFILE_MAIN_12 VVC编码档次为12bit主档次。
VVC_PROFILE_MAIN_12_INTRA VVC编码档次为12bit帧内主档次。
VVC_PROFILE_MULTI_MAIN_10 VVC编码档次为多层编码10bit主档次。
VVC_PROFILE_MAIN_10_444 VVC编码档次为10bit全采样主档次。
VVC_PROFILE_MAIN_12_444 VVC编码档次为12bit全采样主档次。
VVC_PROFILE_MAIN_16_444 VVC编码档次为16bit全采样主档次。
VVC_PROFILE_MAIN_12_444_INTRA VVC编码档次为12bit全采样帧内主档次。
VVC_PROFILE_MAIN_16_444_INTRA VVC编码档次为16bit全采样帧内主档次。
VVC_PROFILE_MULTI_MAIN_10_444 VVC编码档次为多层编码10bit全采样主档次。
VVC_PROFILE_MAIN_10_STILL VVC编码档次为10bit静止图像主档次。
VVC_PROFILE_MAIN_12_STILL VVC编码档次为12bit静止图像主档次。
VVC_PROFILE_MAIN_10_444_STILL VVC编码档次为10bit全采样静止图像主档次。
VVC_PROFILE_MAIN_12_444_STILL VVC编码档次为12bit全采样静止图像主档次。
VVC_PROFILE_MAIN_16_444_STILL VVC编码档次为16bit全采样静止图像主档次。

OH_H263Level

enum OH_H263Level

描述 H.263级别。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 17

枚举值 描述
H263_LEVEL_10 级别10。
H263_LEVEL_20 级别20。
H263_LEVEL_30 级别30。
H263_LEVEL_40 级别40。
H263_LEVEL_45 级别45。
H263_LEVEL_50 级别50。
H263_LEVEL_60 级别60。
H263_LEVEL_70 级别70。

OH_H263Profile

enum OH_H263Profile

描述 H.263档次。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 17

枚举值 描述
H263_PROFILE_BASELINE 基线档次。
H263_PROFILE_VERSION_1_BACKWARD_COMPATIBILITY 版本1向后兼容档次。

OH_TransferCharacteristic

enum OH_TransferCharacteristic

描述 转移特性。编解码都支持。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 10

枚举值 描述
TRANSFER_CHARACTERISTIC_BT709 BT709传递函数。
TRANSFER_CHARACTERISTIC_UNSPECIFIED 未指定传递函数。
TRANSFER_CHARACTERISTIC_GAMMA_2_2 GAMMA_2_2传递函数。
TRANSFER_CHARACTERISTIC_GAMMA_2_8 GAMMA_2_8传递函数。
TRANSFER_CHARACTERISTIC_BT601 BT601传递函数。
TRANSFER_CHARACTERISTIC_SMPTE_ST240 SMPTE_ST240传递函数。
TRANSFER_CHARACTERISTIC_LINEAR LINEAR传递函数。
TRANSFER_CHARACTERISTIC_LOG LOG传递函数。
TRANSFER_CHARACTERISTIC_LOG_SQRT LOG_SQRT传递函数。
TRANSFER_CHARACTERISTIC_IEC_61966_2_4 IEC_61966_2_4传递函数。
TRANSFER_CHARACTERISTIC_BT1361 BT1361传递函数。
TRANSFER_CHARACTERISTIC_IEC_61966_2_1 IEC_61966_2_1传递函数。
TRANSFER_CHARACTERISTIC_BT2020_10BIT BT2020_10BIT传递函数。
TRANSFER_CHARACTERISTIC_BT2020_12BIT BT2020_12BIT传递函数。
TRANSFER_CHARACTERISTIC_PQ PQ传递函数。
TRANSFER_CHARACTERISTIC_SMPTE_ST428 SMPTE_ST428传递函数。
TRANSFER_CHARACTERISTIC_HLG HLG传递函数。

OH_BitrateMode

enum OH_BitrateMode

描述 编码器的比特率模式。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 10

枚举值 描述
BITRATE_MODE_CBR 恒定比特率模式。
BITRATE_MODE_VBR 可变比特率模式,码率仅作参考。
BITRATE_MODE_CQ 恒定质量模式。
BITRATE_MODE_SQR20+ 质量稳定模式,仅支持H265(HEVC)。

变量说明

OH_AVCODEC_MIMETYPE_SUBTITLE_SRT

const char* OH_AVCODEC_MIMETYPE_SUBTITLE_SRT

描述 SRT字幕解封装器的MIME类型。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 12

OH_AVCODEC_MIMETYPE_SUBTITLE_WEBVTT

const char* OH_AVCODEC_MIMETYPE_SUBTITLE_WEBVTT

描述 WEBVTT字幕解封装器的MIME类型。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 12

OH_AVCODEC_MIMETYPE_AUDIO_APE

const char* OH_AVCODEC_MIMETYPE_AUDIO_APE

描述 APE音频解码器的MIME类型。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 12

OH_AVCODEC_MIMETYPE_AUDIO_AAC

const char* OH_AVCODEC_MIMETYPE_AUDIO_AAC

描述 AAC音频编解码器的MIME类型。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 9

OH_AVCODEC_MIMETYPE_AUDIO_AMR_NB

const char* OH_AVCODEC_MIMETYPE_AUDIO_AMR_NB

描述 AMR_NB音频解码器的MIME类型。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 11

OH_AVCODEC_MIMETYPE_AUDIO_AMR_WB

const char* OH_AVCODEC_MIMETYPE_AUDIO_AMR_WB

描述 AMR_WB音频解码器的MIME类型。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 11

OH_AVCODEC_MIMETYPE_AUDIO_FLAC

const char* OH_AVCODEC_MIMETYPE_AUDIO_FLAC

描述 FLAC音频编解码器的MIME类型。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 10

OH_AVCODEC_MIMETYPE_AUDIO_G711MU

const char* OH_AVCODEC_MIMETYPE_AUDIO_G711MU

描述 G711MU音频编解码器的MIME类型。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 11

OH_AVCODEC_MIMETYPE_AUDIO_RAW

const char* OH_AVCODEC_MIMETYPE_AUDIO_RAW

描述 RAW音频码流的MIME类型。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 18

OH_AVCODEC_MIMETYPE_AUDIO_MPEG

const char* OH_AVCODEC_MIMETYPE_AUDIO_MPEG

描述 MP3音频解码器的MIME类型。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 10

OH_AVCODEC_MIMETYPE_AUDIO_OPUS

const char* OH_AVCODEC_MIMETYPE_AUDIO_OPUS

描述 OPUS音频编解码器的MIME类型。(此规格暂未开放)

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 11

OH_AVCODEC_MIMETYPE_AUDIO_VIVID

const char* OH_AVCODEC_MIMETYPE_AUDIO_VIVID

描述 Audio Vivid音频解码器的MIME类型。(目前本规格未开放)

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 11

OH_AVCODEC_MIMETYPE_AUDIO_VORBIS

const char* OH_AVCODEC_MIMETYPE_AUDIO_VORBIS

描述 VORBIS音频解码器的MIME类型。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 10

OH_AVCODEC_MIMETYPE_IMAGE_BMP

const char* OH_AVCODEC_MIMETYPE_IMAGE_BMP

描述 BMP图片编码的MIME类型,仅用于封装BMP封面时使用。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 10

OH_AVCODEC_MIMETYPE_IMAGE_JPG

const char* OH_AVCODEC_MIMETYPE_IMAGE_JPG

描述 JPG图片编码的MIME类型,仅用于封装JPG封面时使用。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 10

OH_AVCODEC_MIMETYPE_IMAGE_PNG

const char* OH_AVCODEC_MIMETYPE_IMAGE_PNG

描述 PNG图片编码的MIME类型,仅用于封装PNG封面时使用。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 10

OH_AVCODEC_MIMETYPE_VIDEO_AVC

const char* OH_AVCODEC_MIMETYPE_VIDEO_AVC

描述 AVC(H.264)视频编解码器的MIME类型。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 9

OH_AVCODEC_MIMETYPE_VIDEO_HEVC

const char* OH_AVCODEC_MIMETYPE_VIDEO_HEVC

描述 HEVC(H.265)视频编解码器的MIME类型。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 10

OH_AVCODEC_MIMETYPE_VIDEO_VVC

const char* OH_AVCODEC_MIMETYPE_VIDEO_VVC

描述 VVC(H.266)视频编解码器的MIME类型。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 12

OH_AVCODEC_MIMETYPE_VIDEO_H263

const char* OH_AVCODEC_MIMETYPE_VIDEO_H263

描述 H.263视频编解码器的MIME类型。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 17

OH_AVCODEC_MIMETYPE_VIDEO_MPEG2

const char* OH_AVCODEC_MIMETYPE_VIDEO_MPEG2

描述

视频MPEG2编解码器的MIME类型。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 17

OH_AVCODEC_MIMETYPE_VIDEO_MPEG4

const char* OH_AVCODEC_MIMETYPE_VIDEO_MPEG4

描述 MPEG4视频编码的MIME类型,仅用于封装MPEG4视频码流使用。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 10

废弃版本: 11

OH_AVCODEC_MIMETYPE_VIDEO_MPEG4_PART2

const char* OH_AVCODEC_MIMETYPE_VIDEO_MPEG4_PART2

描述

视频MPEG4 Part2编解码器的MIME类型。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 17

OH_ED_KEY_EOS

const char* OH_ED_KEY_EOS

描述 表示surfacebuffer流结束符的键,值类型为int32_t。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 9

废弃版本: 14

OH_ED_KEY_TIME_STAMP

const char* OH_ED_KEY_TIME_STAMP

描述 表示surfacebuffer时间戳的键,值类型为int64_t。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 9

废弃版本: 14

OH_FEATURE_PROPERTY_KEY_VIDEO_ENCODER_MAX_LTR_FRAME_COUNT

const char* OH_FEATURE_PROPERTY_KEY_VIDEO_ENCODER_MAX_LTR_FRAME_COUNT

描述 在视频编码中获取长期参考帧的最大个数的键,值类型为int32_t。

可以通过OH_AVCapability_GetFeatureProperties接口和枚举值VIDEO_ENCODER_LONG_TERM_REFERENCE来查询这个最大值。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 12

OH_MD_KEY_AAC_IS_ADTS

const char* OH_MD_KEY_AAC_IS_ADTS

描述 aac格式的键,aac格式分为ADTS格式和LATM格式。值类型为int32_t,0表示LATM格式,1表示ADTS格式。aac解码器支持。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 10

OH_MD_KEY_ALBUM

const char* OH_MD_KEY_ALBUM

描述 专辑的媒体文件的键,值类型为string。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 10

OH_MD_KEY_ALBUM_ARTIST

const char* OH_MD_KEY_ALBUM_ARTIST

描述 专辑艺术家的键,值类型为string。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 10

OH_MD_KEY_ARTIST

const char* OH_MD_KEY_ARTIST

描述 媒体文件艺术家的键,值类型为string。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 10

OH_MD_KEY_AUD_CHANNEL_COUNT

const char* OH_MD_KEY_AUD_CHANNEL_COUNT

描述 音频通道计数键,值类型为int32_t。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 9

OH_MD_KEY_AUD_SAMPLE_RATE

const char* OH_MD_KEY_AUD_SAMPLE_RATE

描述 音频采样率键,值类型为int32_t。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 9

OH_MD_KEY_AUDIO_COMPRESSION_LEVEL

const char* OH_MD_KEY_AUDIO_COMPRESSION_LEVEL

描述 音频编解码压缩水平的键,只在音频编码使用,值类型为int32_t。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 11

OH_MD_KEY_AUDIO_OBJECT_NUMBER

const char* OH_MD_KEY_AUDIO_OBJECT_NUMBER

描述 音频对象数目的键,值类型为int32_t,只有Audio Vivid解码使用。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 11

OH_MD_KEY_AUDIO_SAMPLE_FORMAT

const char* OH_MD_KEY_AUDIO_SAMPLE_FORMAT

描述 音频原始格式的键,值类型为int32_t。请参见OH_BitsPerSample

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 9

OH_MD_KEY_AUDIO_VIVID_METADATA

const char* OH_MD_KEY_AUDIO_VIVID_METADATA

描述 Audio Vivid元数据的键,值类型为uint8_t*,只有Audio Vivid解码使用。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 11

OH_MD_KEY_BITRATE

const char* OH_MD_KEY_BITRATE

描述 比特率的键,值类型为int64_t。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 9

OH_MD_KEY_BITS_PER_CODED_SAMPLE

const char* OH_MD_KEY_BITS_PER_CODED_SAMPLE

描述 每个编码样本位数的键,值类型为int32_t,支持flac编码器,请参见OH_BitsPerSample

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 10

OH_MD_KEY_CHANNEL_LAYOUT

const char* OH_MD_KEY_CHANNEL_LAYOUT

描述 所需编码通道布局的键。值类型为int64_t,此键仅适用于编码器。 请参见OH_AudioChannelLayout

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 10

OH_MD_KEY_CODEC_CONFIG

const char* OH_MD_KEY_CODEC_CONFIG

描述

编解码器特定数据的键,视频中表示传递SPS/PPS,音频中表示传递extraData,值类型为uint8_t*。 (视频编解码此功能暂未支持)

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 10

OH_MD_KEY_CODEC_MIME

const char* OH_MD_KEY_CODEC_MIME

描述 编解码器MIME类型的键,值类型为string。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 9

OH_MD_KEY_COLOR_PRIMARIES

const char* OH_MD_KEY_COLOR_PRIMARIES

描述 视频色域的键,值类型为int32_t,请参见OH_ColorPrimary,遵循H.273标准Table2。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 10

OH_MD_KEY_COMMENT

const char* OH_MD_KEY_COMMENT

描述 媒体文件注释的键,值类型为string。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 10

OH_MD_KEY_COMPLIANCE_LEVEL

const char* OH_MD_KEY_COMPLIANCE_LEVEL

描述 flac兼容性等级的键,值类型为int32_t,仅在音频编码使用。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 10

OH_MD_KEY_COPYRIGHT

const char* OH_MD_KEY_COPYRIGHT

描述 媒体文件版权的键,值类型为string。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 10

OH_MD_KEY_DATE

const char* OH_MD_KEY_DATE

描述 媒体文件日期的键,值类型为string,例如2024年。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 10

OH_MD_KEY_DESCRIPTION

const char* OH_MD_KEY_DESCRIPTION

描述 媒体文件描述的键,值类型为string。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 10

OH_MD_KEY_DURATION

const char* OH_MD_KEY_DURATION

描述 媒体文件持续时间的键,单位为微秒,值类型为int64_t。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 9

OH_MD_KEY_FRAME_RATE

const char* OH_MD_KEY_FRAME_RATE

描述 视频帧率的键,值类型为double。该值必须大于 0。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 9

OH_MD_KEY_GENRE

const char* OH_MD_KEY_GENRE

描述 媒体文件流派的键,值类型为string。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 10

OH_MD_KEY_HEIGHT

const char* OH_MD_KEY_HEIGHT

描述 视频高度键,值类型为int32_t。

在视频编解码流程中调用Configure接口时,使用此接口来设置视频帧的显示高。

使用指导请参见:视频编码中的中的Surface模式的“步骤-5”或Buffer模式“步骤-4”。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 9

OH_MD_KEY_I_FRAME_INTERVAL

const char* OH_MD_KEY_I_FRAME_INTERVAL

描述 关键帧间隔的键,值类型为int32_t,单位为毫秒。该键是可选的且只用于视频编码。

负值表示只有第一帧是关键帧,零表示所有帧都是关键帧。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 9

OH_MD_KEY_IDENTIFICATION_HEADER

const char* OH_MD_KEY_IDENTIFICATION_HEADER

描述 vorbis标识头的键,值类型为uint8_t*,仅vorbis解码器支持。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 10

OH_MD_KEY_LANGUAGE

const char* OH_MD_KEY_LANGUAGE

描述 媒体文件语言的键,值类型为string。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 10

OH_MD_KEY_LYRICS

const char* OH_MD_KEY_LYRICS

描述 媒体文件歌词的键,值类型为string。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 10

OH_MD_KEY_MATRIX_COEFFICIENTS

const char* OH_MD_KEY_MATRIX_COEFFICIENTS

描述 视频矩阵系数的键,值类型为int32_t,请参见OH_MatrixCoefficient,遵循H.273标准Table4。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 10

OH_MD_KEY_MAX_INPUT_SIZE

const char* OH_MD_KEY_MAX_INPUT_SIZE

描述 设置解码输入码流大小最大值的键,值类型为int32_t。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 9

OH_MD_KEY_PIXEL_FORMAT

const char* OH_MD_KEY_PIXEL_FORMAT

描述 视频像素格式的键,值类型为int32_t,请参见OH_AVPixelFormat

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 9

OH_MD_KEY_PROFILE

const char* OH_MD_KEY_PROFILE

描述 编码档次,值类型为int32_t,请参见OH_AVCProfileOH_HEVCProfileOH_AACProfile

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 9

OH_MD_KEY_QUALITY

const char* OH_MD_KEY_QUALITY

描述 所需编码质量的键。值类型为int32_t,在H.264、H.265编码场景值范围可以根据能力查询接口OH_AVCapability_GetEncoderQualityRange()获取,此键仅适用于配置在恒定质量模式下的编码器。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 10

OH_MD_KEY_RANGE_FLAG

const char* OH_MD_KEY_RANGE_FLAG

描述 视频YUV值域标志的键,值类型为int32_t,1表示full range,0表示limited range。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 10

OH_MD_KEY_REQUEST_I_FRAME

const char* OH_MD_KEY_REQUEST_I_FRAME

描述 请求立即编码I帧的键。值类型为int32_t。在调用OH_VideoEncoder_SetParameter()阶段使用,或随帧立即生效。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 10

OH_MD_KEY_ROTATION

const char* OH_MD_KEY_ROTATION

描述 surface旋转角度的键。值类型为int32_t:应为{0, 90, 180, 270},默认值为0。该键只在视频解码Surface模式下使用。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 9

OH_MD_KEY_SBR

const char* OH_MD_KEY_SBR

描述 aac sbr模式的键,值类型为int32_t,aac编码器支持。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 10

OH_MD_KEY_SCALING_MODE

const char* OH_MD_KEY_SCALING_MODE

描述 视频缩放模式,值类型为int32_t,请参见OH_ScalingMode。建议直接调用OH_NativeWindow_NativeWindowSetScalingModeV2接口进行设置。该键是可选的且只用于视频解码Surface模式。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 10

废弃版本: 14

替代接口:OH_NativeWindow_NativeWindowSetScalingModeV2

OH_MD_KEY_SETUP_HEADER

const char* OH_MD_KEY_SETUP_HEADER

描述 vorbis设置头的键,值类型为uint8_t*,仅vorbis解码器支持。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 10

OH_MD_KEY_TITLE

const char* OH_MD_KEY_TITLE

描述 媒体文件标题的键,值类型为string。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 10

OH_MD_KEY_TRACK_COUNT

const char* OH_MD_KEY_TRACK_COUNT

描述 媒体文件轨道数量的键,值类型为int32_t。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 10

OH_MD_KEY_TRACK_TYPE

const char* OH_MD_KEY_TRACK_TYPE

描述

轨道媒体类型的键,值类型为int32_t,请参见OH_MediaType

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 9

OH_MD_KEY_TRANSFER_CHARACTERISTICS

const char* OH_MD_KEY_TRANSFER_CHARACTERISTICS

描述 视频传递函数的键,值类型为int32_t,请参见OH_TransferCharacteristic,遵循H.273标准Table3。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 10

OH_MD_KEY_VIDEO_CROP_BOTTOM

const char* OH_MD_KEY_VIDEO_CROP_BOTTOM

描述 描述裁剪矩形底部坐标(y)值的键,值类型为int32_t。 包含裁剪框底部的行,行索引从0开始。该键只用于视频解码。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 12

OH_MD_KEY_VIDEO_CROP_LEFT

const char* OH_MD_KEY_VIDEO_CROP_LEFT

描述 描述裁剪矩形左坐标(x)值的键,值类型为int32_t。包含裁剪框最左边的列,列索引从0开始。该键只用于视频解码。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 12

OH_MD_KEY_VIDEO_CROP_RIGHT

const char* OH_MD_KEY_VIDEO_CROP_RIGHT

描述 描述裁剪矩形右坐标(x)值的键,值类型为int32_t。包含裁剪框最右边的列,列索引从0开始。该键只用于视频解码。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 12

OH_MD_KEY_VIDEO_CROP_TOP

const char* OH_MD_KEY_VIDEO_CROP_TOP

描述 描述裁剪矩形顶部坐标(y)值的键,值类型为int32_t。 包含裁剪框顶部的行,行索引从0开始。该键只用于视频解码。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 12

OH_MD_KEY_VIDEO_ENABLE_LOW_LATENCY

const char* OH_MD_KEY_VIDEO_ENABLE_LOW_LATENCY

描述 使能低时延视频编解码的键,值类型为int32_t,1表示使能,0表示其它情况。该键是可选的,在Configure阶段使用。

如果使能,则视频编码器或视频解码器持有的输入和输出数据不会超过编解码器标准所要求的数量。

若平台支持,当使能此接口时,视频解码器将按照解码序输出帧。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 12

OH_MD_KEY_VIDEO_ENCODE_BITRATE_MODE

const char* OH_MD_KEY_VIDEO_ENCODE_BITRATE_MODE

描述 视频编码码率模式,值类型为int32_t,请参见OH_BitrateMode

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 9

OH_MD_KEY_VIDEO_ENCODER_ENABLE_TEMPORAL_SCALABILITY

const char* OH_MD_KEY_VIDEO_ENCODER_ENABLE_TEMPORAL_SCALABILITY

描述 使能分层编码的键,值类型为int32_t,1表示使能,0表示其它情况。

使用前可以通过OH_AVCapability_IsFeatureSupported接口和枚举值 VIDEO_ENCODER_TEMPORAL_SCALABILITY来查询当前视频编码器是否支持分层编码。 详情请参见:时域可分层视频编码

该键是可选的且只用于视频编码,在Configure阶段使用。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 12

OH_MD_KEY_VIDEO_ENCODER_LTR_FRAME_COUNT

const char* OH_MD_KEY_VIDEO_ENCODER_LTR_FRAME_COUNT

描述 描述长期参考帧个数的键,值类型为int32_t,必须在支持的值范围内使用。

使用前可以通过OH_AVCapability_GetFeatureProperties接口和枚举值VIDEO_ENCODER_LONG_TERM_REFERENCE来查询支持的LTR数目。

该键是可选的且只用于视频编码,在Configure阶段使用。

详情请参见:时域可分层视频编码

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 12

OH_MD_KEY_VIDEO_ENCODER_PER_FRAME_MARK_LTR

const char* OH_MD_KEY_VIDEO_ENCODER_PER_FRAME_MARK_LTR

描述 标记当前帧为长期参考帧的键,值类型为int32_t,1表示被标记,0表示其它情况。

只在长期参考帧个数被配置后生效。

该键是可选的且只用于视频编码输入轮转中,配置后立即生效。

详情请参见:时域可分层视频编码

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 12

OH_MD_KEY_VIDEO_ENCODER_PER_FRAME_USE_LTR

const char* OH_MD_KEY_VIDEO_ENCODER_PER_FRAME_USE_LTR

描述 描述当前帧参考的长期参考帧帧的POC号的键,值类型为int32_t。

该键是可选的且只用于视频编码输入轮转中,配置后立即生效。

详情请参见:时域可分层视频编码

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 12

OH_MD_KEY_VIDEO_ENCODER_QP_MAX

const char* OH_MD_KEY_VIDEO_ENCODER_QP_MAX

描述 描述视频编码器允许的最大量化参数的键,值类型为int32_t。

在Configure/SetParameter阶段使用,或随帧立即生效。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 12

OH_MD_KEY_VIDEO_ENCODER_QP_MIN

const char* OH_MD_KEY_VIDEO_ENCODER_QP_MIN

描述 描述视频编码器允许的最小量化参数的键,值类型为int32_t。

在Configure/SetParameter阶段使用,或随帧立即生效。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 12

OH_MD_KEY_VIDEO_ENCODER_QP_AVERAGE

const char* OH_MD_KEY_VIDEO_ENCODER_QP_AVERAGE

描述 描述视频帧平均量化参数的键,值类型为int32_t。

表示当前帧编码块的平均qp值,随OH_AVBuffer输出。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 12

OH_MD_KEY_VIDEO_ENCODER_MSE

const char* OH_MD_KEY_VIDEO_ENCODER_MSE

描述 描述视频帧平方误差的键,值类型为double。

表示当前帧编码块的MSE统计值,随OH_AVBuffer输出。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 12

OH_MD_KEY_VIDEO_ENCODER_TEMPORAL_GOP_REFERENCE_MODE

const char* OH_MD_KEY_VIDEO_ENCODER_TEMPORAL_GOP_REFERENCE_MODE

描述 描述图片组内参考模式的键,值类型为int32_t,请参见OH_TemporalGopReferenceMode,只在使能分层编码时生效。

该键是可选的且只用于视频编码,在Configure阶段使用。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 12

OH_MD_KEY_VIDEO_ENCODER_TEMPORAL_GOP_SIZE

const char* OH_MD_KEY_VIDEO_ENCODER_TEMPORAL_GOP_SIZE

描述 描述图片组基本层图片的间隔大小的键,值类型为int32_t,只在使能分层编码时生效。

该键是可选的且只用于视频编码,在Configure阶段使用。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 12

OH_MD_KEY_VIDEO_IS_HDR_VIVID

const char* OH_MD_KEY_VIDEO_IS_HDR_VIVID

描述 媒体文件中的视频轨是否为HDR Vivid的键,支持封装和解封装,值类型为int32_t。

1代表是HDR Vivid视频轨,0表示其他情况。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 11

OH_MD_KEY_DECODING_TIMESTAMP

const char* OH_MD_KEY_DECODING_TIMESTAMP

描述 AVBuffer中携带的音视频或字幕的sample对应的解码时间戳的键,以微秒为单位,值类型为int64_t。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 12

OH_MD_KEY_BUFFER_DURATION

const char* OH_MD_KEY_BUFFER_DURATION

描述 AVBuffer中携带的音视频或字幕的sample对应的持续时间的键,以微秒为单位,值类型为int64_t。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 12

OH_MD_KEY_START_TIME

const char* OH_MD_KEY_START_TIME

描述 媒体文件中第一帧起始位置开始时间的键,以微秒为单位,值类型为int64_t。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 12

OH_MD_KEY_TRACK_START_TIME

const char* OH_MD_KEY_TRACK_START_TIME

描述 轨道开始时间的键,以微秒为单位,值类型为int64_t。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 12

OH_MD_KEY_VIDEO_DECODER_OUTPUT_COLOR_SPACE

const char* OH_MD_KEY_VIDEO_DECODER_OUTPUT_COLOR_SPACE

描述 设置视频解码器输出色彩空间的键,值类型为int32_t。

支持的值为OH_COLORSPACE_BT709_LIMIT,请参见OH_NativeBuffer_ColorSpace

在视频解码调用OH_VideoDecoder_Configure接口时使用此接口。

在启动OH_VideoDecoder_Start接口前,必须要先调用OH_VideoDecoder_Prepare接口。

如果支持色彩空间转换功能并配置了此键,则视频解码器会自动将HDR Vivid视频转码为指定的色彩空间。

如果不支持色彩空间转换功能,则接口OH_VideoDecoder_Configure返回错误码AV_ERR_VIDEO_UNSUPPORTED_COLOR_SPACE_CONVERSION

如果输入视频不是HDR Vivid视频,则会通过回调函数OH_AVCodecOnError报告错误码AV_ERR_VIDEO_UNSUPPORTED_COLOR_SPACE_CONVERSION

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 12

OH_MD_KEY_VIDEO_PER_FRAME_IS_LTR

const char* OH_MD_KEY_VIDEO_PER_FRAME_IS_LTR

描述 当前OH_AVBuffer中输出的码流对应的帧是否为长期参考帧的键,值类型为int32_t,1表示是LTR,0表示其它情况。

该键是可选的且只用于视频编码输出轮转中。

表示帧的属性。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 12

OH_MD_KEY_VIDEO_PER_FRAME_POC

const char* OH_MD_KEY_VIDEO_PER_FRAME_POC

描述 描述帧的POC号的键,值类型为int32_t。

该键是可选的且只用于视频编码输出轮转中。

表示帧的属性。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 12

OH_MD_KEY_VIDEO_PIC_HEIGHT

const char* OH_MD_KEY_VIDEO_PIC_HEIGHT

描述 描述视频帧真实高度的键,值类型为int32_t。

视频解码时调用OH_VideoDecoder_GetOutputDescription接口,可以从其返回的OH_AVFormat中解析出高度值。

当解码输出码流变化时,也可从OH_AVCodecOnStreamChanged返回的OH_AVForamt实例中解析出高度值。

从OH_AVForamt实例中解析出来的是对齐后的宽、高与调用Configure接口设置的OH_MD_KEY_WIDTH、OH_MD_KEY_HEIGHT不一样。

width、height、wStride、hStride图像排布与使用示例请参考:视频编码Buffer模式的“步骤-8”或视频解码Buffer模式“步骤-11”。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 12

OH_MD_KEY_VIDEO_PIC_WIDTH

const char* OH_MD_KEY_VIDEO_PIC_WIDTH

描述 描述视频帧真实宽度的键,值类型为int32_t。

视频解码时调用OH_VideoDecoder_GetOutputDescription接口,可以从其返回的OH_AVFormat中解析出宽度值。

当解码输出码流变化时,也可从OH_AVCodecOnStreamChanged返回的OH_AVForamt实例中解析出宽度值。

从OH_AVForamt实例中解析出来的是对齐后的宽、高与调用Configure接口设置的OH_MD_KEY_WIDTH、OH_MD_KEY_HEIGHT不一样。

width、height、wStride、hStride图像排布与使用示例请参考:视频编码Buffer模式的“步骤-8”或视频解码Buffer模式“步骤-11”。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 12

OH_MD_KEY_VIDEO_SLICE_HEIGHT

const char* OH_MD_KEY_VIDEO_SLICE_HEIGHT

描述 描述视频帧高跨距的键,值类型为int32_t。

高跨距是指从Y平面顶部到U平面顶部必须偏移的行数。本质上,U平面的偏移量是sliceHeight * stride。

U/V平面的高度可以根据颜色格式计算,尽管它通常是未定义的,并且取决于设备和版本。

使用指导请参见:视频编码Buffer模式的“步骤-3”。

width、height、wStride、hStride图像排布与使用示例请参考:视频编码Buffer模式的“步骤-8”或视频解码Buffer模式“步骤-11”。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 12

OH_MD_KEY_VIDEO_STRIDE

const char* OH_MD_KEY_VIDEO_STRIDE

描述 描述视频帧宽跨距的键,值类型为int32_t。

宽跨距是像素的索引与正下方像素的索引之间的差。

对于YUV420格式,宽跨距对应于Y平面,U和V平面的跨距可以根据颜色格式计算,但通常未定义,并且取决于设备和版本。

使用指导请参见:视频编码Buffer模式的“步骤-3”。

width、height、wStride、hStride图像排布与使用示例请参考:视频编码Buffer模式的“步骤-8”或视频解码Buffer模式“步骤-11”。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 12

OH_MD_KEY_WIDTH

const char* OH_MD_KEY_WIDTH

描述 视频宽度的键,值类型为int32_t。

在视频编解码流程中调用Configure接口时,使用此接口来设置视频帧的显示宽度。

使用指导请参见:视频编码中的Surface模式的“步骤-5”或Buffer模式“步骤-4”。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 9

OH_MD_MAX_INPUT_BUFFER_COUNT

const char* OH_MD_MAX_INPUT_BUFFER_COUNT

描述 最大输入缓冲区个数的键,值类型为int32_t。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 10

OH_MD_MAX_OUTPUT_BUFFER_COUNT

const char* OH_MD_MAX_OUTPUT_BUFFER_COUNT

描述 最大输出缓冲区个数的键,值类型int32_t。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 10

OH_MD_KEY_VIDEO_SAR

const char* OH_MD_KEY_VIDEO_SAR

描述 样本长宽比的键,值类型为double。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 12

OH_MD_KEY_CREATION_TIME

const char* OH_MD_KEY_CREATION_TIME

描述 媒体文件创建时间的元数据,值类型为string。使用ISO 8601标准的时间格式且为UTC时间,时间格式参考:”2024-12-28T00:00:00:000000Z”。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 14

OH_MD_KEY_VIDEO_DECODER_OUTPUT_ENABLE_VRR

const char* OH_MD_KEY_VIDEO_DECODER_OUTPUT_ENABLE_VRR

描述 解码器是否打开视频可变帧率功能的键,值类型为int32_t。1代表使能视频可变帧率功能,0代表不使能。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 15

OH_MD_KEY_SQR_FACTOR

const char* OH_MD_KEY_SQR_FACTOR

描述 指定SQR码控模式的质量参数,值越小,编码输出文件越大,质量越好。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 20

OH_MD_KEY_MAX_BITRATE

const char* OH_MD_KEY_MAX_BITRATE

描述 指定SQR码控模式的最大码率,单位bps。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 20

OH_MD_KEY_VIDEO_ENCODER_ROI_PARAMS

const char* OH_MD_KEY_VIDEO_ENCODER_ROI_PARAMS

描述 用于视频编码中,使能ROI编码并下发ROI参数,随帧设置且实时生效。

参数需满足”Top1,Left1-Bottom1,Right1=Offset1;Top2,Left2-Bottom2,Right2=Offset2;“的格式,多个ROI参数之间使用”;“连接。

Top、Left、Bottom、Right指定一个ROI区域的上、左、下、右边界,Offset指定deltaQP,“=Offset”可以省略,省略时使用默认值(-3)。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 20

OH_MD_KEY_VIDEO_ENCODER_REPEAT_PREVIOUS_FRAME_AFTER

const char* OH_MD_KEY_VIDEO_ENCODER_REPEAT_PREVIOUS_FRAME_AFTER

描述 如果在上一帧提交给编码器之后没有新的帧可用,则会以毫秒为单位重复提交最后一帧,值类型为int32_t。

该键只用于视频编码Surface模式,在Configure阶段使用。

配置的值 描述
小于等于0 Configure阶段会被拦截,返回ERROR AV_ERR_INVALID_VAL。
大于0 如果在上一帧提交给编码器之后没有新的帧可用,则会以毫秒为单位重复提交最后一帧。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 18

OH_MD_KEY_VIDEO_ENCODER_REPEAT_PREVIOUS_MAX_COUNT

const char* OH_MD_KEY_VIDEO_ENCODER_REPEAT_PREVIOUS_MAX_COUNT

描述 描述编码器在没有新的帧可用的情况下,可以对之前的帧进行重复编码的最大次数,值类型为int32_t。

该键仅在OH_MD_KEY_VIDEO_ENCODER_REPEAT_PREVIOUS_FRAME_AFTER可用时生效,在Configure阶段使用。

配置的值 描述
0 Configure阶段会被拦截,返回ERROR AV_ERR_INVALID_VAL。
小于0 在没有新的帧提交给编码器的这段时间内,编码器会一直重复编上一帧,直到达到系统上限。
大于0 在没有新的帧提交给编码器的这段时间内,最多可以重复编码的帧数。

系统能力: SystemCapability.Multimedia.Media.CodecBase

起始版本: 18

你可能感兴趣的鸿蒙文章

harmony 鸿蒙AVCodec Kit(音视频编解码服务)

harmony 鸿蒙AVCapability

harmony 鸿蒙AVDemuxer

harmony 鸿蒙AVMuxer

harmony 鸿蒙AVSource

harmony 鸿蒙AudioCodec

harmony 鸿蒙AudioDecoder

harmony 鸿蒙AudioEncoder

harmony 鸿蒙Core

harmony 鸿蒙DrmSubsample

0  赞