harmony 鸿蒙native_avcodec_base.h

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

native_avcodec_base.h

概述

声明用于音视频封装、解封装、编解码基础功能的Native API。

库: libnative_media_codecbase.so

起始版本: 9

相关模块:CodecBase

汇总

结构体

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

类型定义

名称 描述
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 offset) 函数指针定义,用于提供获取用户自定义媒体数据的能力。
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 时域图片组参考模式。

枚举

名称 描述
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
}
时域图片组参考模式。

变量

名称 描述
const char * OH_AVCODEC_MIMETYPE_VIDEO_AVC AVC(H.264)视频编解码器的MIME类型。
const char * OH_AVCODEC_MIMETYPE_AUDIO_AAC AAC音频编解码器的MIME类型。
const char * OH_AVCODEC_MIMETYPE_AUDIO_FLAC FLAC音频编解码器的MIME类型。
const char * OH_AVCODEC_MIMETYPE_AUDIO_VORBIS VORBIS音频解码器的MIME类型。
const char * OH_AVCODEC_MIMETYPE_AUDIO_MPEG MP3音频解码器的MIME类型。
const char * OH_AVCODEC_MIMETYPE_VIDEO_HEVC HEVC(H.265)视频编解码器的MIME类型。
const char * OH_AVCODEC_MIMETYPE_VIDEO_H263 H.263视频编解码器的MIME类型。
const char * OH_AVCODEC_MIMETYPE_VIDEO_MPEG4 MPEG4视频编码的MIME类型,仅用于封装MPEG4视频码流使用。
const char * OH_AVCODEC_MIMETYPE_VIDEO_MPEG4_PART2 视频MPEG4 Part2编解码器的MIME类型。
const char * OH_AVCODEC_MIMETYPE_VIDEO_MPEG2 视频MPEG2编解码器的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_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_OPUS OPUS音频编解码器的MIME类型。(此规格暂未开放)
const char * OH_AVCODEC_MIMETYPE_AUDIO_G711MU G711MU音频编解码器的MIME类型。
const char * OH_AVCODEC_MIMETYPE_AUDIO_RAW RAW音频码流的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_SUBTITLE_SRT SRT字幕解封装器的MIME类型。
const char * OH_AVCODEC_MIMETYPE_SUBTITLE_WEBVTT WEBVTT字幕解封装器的MIME类型。
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_TRACK_TYPE 轨道媒体类型的键,值类型为int32_t,请参见OH_MediaType
const char * OH_MD_KEY_CODEC_MIME 编解码器MIME类型的键,值类型为string。
const char * OH_MD_KEY_DURATION 媒体文件持续时间的键,值类型为int64_t。
const char * OH_MD_KEY_BITRATE 比特率的键,值类型为int64_t。
const char * OH_MD_KEY_MAX_INPUT_SIZE 设置解码输入码流大小最大值的键,值类型为int32_t。
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_AUDIO_SAMPLE_FORMAT 音频原始格式的键,值类型为int32_t,请参见OH_BitsPerSample
const char * OH_MD_KEY_FRAME_RATE 视频帧率的键,值类型为double。
const char * OH_MD_KEY_VIDEO_ENCODE_BITRATE_MODE 视频编码码率模式,值类型为int32_t,请参见OH_BitrateMode
const char * OH_MD_KEY_PROFILE 编码档次,值类型为int32_t,请参见OH_AVCProfile,OH_HEVCProfile, OH_AACProfile
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_I_FRAME_INTERVAL 关键帧间隔的键,值类型为int32_t,单位为毫秒。
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_REQUEST_I_FRAME 请求立即编码I帧的键。值类型为int32_t。
const char * OH_MD_KEY_QUALITY 所需编码质量的键。值类型为int32_t,此键仅适用于配置在恒定质量模式下的编码器。
const char * OH_MD_KEY_CODEC_CONFIG 编解码器特定数据的键,值类型为uint8_t*。 (视频编解码此功能暂未支持)
const char * OH_MD_KEY_TRACK_START_TIME 轨道开始时间的键,以微秒为单位,值类型为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_CHANNEL_LAYOUT 所需编码通道布局的键。值类型为int64_t,此键仅适用于编码器。
const char * OH_MD_KEY_BITS_PER_CODED_SAMPLE 每个编码样本位数的键,值类型为int32_t,支持flac编码器,请参见OH_BitsPerSample
const char * OH_MD_KEY_AAC_IS_ADTS aac格式的键,aac格式分为ADTS格式和LATM格式。值类型为int32_t,aac解码器支持。
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_IDENTIFICATION_HEADER vorbis标识头的键,值类型为uint8_t*,仅vorbis解码器支持。
const char * OH_MD_KEY_SETUP_HEADER vorbis设置头的键,值类型为uint8_t*,仅vorbis解码器支持。
const char * OH_MD_KEY_SCALING_MODE 视频缩放模式,值类型为int32_t,请参见OH_ScalingMode。 该键只在视频解码surface模式下使用。建议直接调用OH_NativeWindow_NativeWindowSetScalingModeV2接口进行设置。(API14废弃)
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_AUDIO_COMPRESSION_LEVEL 音频编解码压缩水平的键,只在音频编码使用,值类型为int32_t。
const char * OH_MD_KEY_VIDEO_IS_HDR_VIVID 媒体文件中的视频轨是否为HDR Vivid的键,支持封装和解封装,值类型为int32_t。
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_FEATURE_PROPERTY_KEY_VIDEO_ENCODER_MAX_LTR_FRAME_COUNT 在视频编码中获取长期参考帧的最大个数的键,值类型为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_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_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_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_DECODING_TIMESTAMP AVBuffer中携带的音视频或字幕的sample对应的解码时间戳的键,以微秒为单位,值类型为int64_t。
const char * OH_MD_KEY_BUFFER_DURATION AVBuffer中携带的音视频或字幕的sample对应的持续时间的键,以微秒为单位,值类型为int64_t。
const char * OH_MD_KEY_START_TIME 媒体文件中第一帧起始位置的开始时间的键,以微秒为单位,值类型为int64_t。
const char * OH_MD_KEY_VIDEO_DECODER_OUTPUT_COLOR_SPACE 设置视频解码器输出色彩空间的键,值类型为int32_t。 支持的值为OH_COLORSPACE_BT709_LIMIT。
const char * OH_MD_KEY_VIDEO_SAR 样本长宽比的键,值类型为double。
const char * OH_MD_KEY_CREATION_TIME 媒体文件创建时间的元数据,值类型为string。
const char * OH_MD_KEY_VIDEO_DECODER_OUTPUT_ENABLE_VRR 解码器是否打开视频可变帧率功能的键,值类型为int32_t。

你可能感兴趣的鸿蒙文章

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

harmony 鸿蒙AVCapability

harmony 鸿蒙AVDemuxer

harmony 鸿蒙AVMuxer

harmony 鸿蒙AVSource

harmony 鸿蒙AudioCodec

harmony 鸿蒙AudioDecoder

harmony 鸿蒙AudioEncoder

harmony 鸿蒙CodecBase

harmony 鸿蒙Core

0  赞