openharmony 鸿蒙 capi-codecbase

2026-08-25 浏览 (1)

CodecBase

概述

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

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

起始版本: 9

文件汇总

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

媒体编解码格式

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

名称描述
OH_AVCODEC_MIMETYPE_AUDIO_AACAAC音频编解码器的MIME类型。
OH_AVCODEC_MIMETYPE_AUDIO_FLACFLAC音频编解码器的MIME类型。
OH_AVCODEC_MIMETYPE_AUDIO_OPUSOPUS音频编解码器的MIME类型。
OH_AVCODEC_MIMETYPE_AUDIO_G711MUG711MU音频编解码器的MIME类型。
OH_AVCODEC_MIMETYPE_AUDIO_G711AG711A音频解码器的MIME类型。
从API version 20开始支持。
OH_AVCODEC_MIMETYPE_AUDIO_RAWRAW音频码流的MIME类型。
OH_AVCODEC_MIMETYPE_AUDIO_VORBISVORBIS音频解码器的MIME类型。
OH_AVCODEC_MIMETYPE_AUDIO_MPEGMP3音频编解码器的MIME类型。
OH_AVCODEC_MIMETYPE_AUDIO_VIVIDAudio Vivid音频解码器的MIME类型。
OH_AVCODEC_MIMETYPE_AUDIO_AMR_NBAMR_NB音频解码器的MIME类型。
OH_AVCODEC_MIMETYPE_AUDIO_AMR_WBAMR_WB音频解码器的MIME类型。
OH_AVCODEC_MIMETYPE_AUDIO_APEAPE音频解码器的MIME类型。
OH_AVCODEC_MIMETYPE_AUDIO_ALACALAC(Apple Lossless Audio Codec)音频解码器的MIME类型。
从API version 22开始支持。
OH_AVCODEC_MIMETYPE_AUDIO_AC3AC3(Dolby Audio Coding 3)音频解码器的MIME类型。
从API version 22开始支持。
OH_AVCODEC_MIMETYPE_AUDIO_EAC3EAC3(Enhanced AC-3)音频解码器的MIME类型。
从API version 22开始支持。
OH_AVCODEC_MIMETYPE_AUDIO_WMAV1WMA(Windows Media Audio)V1音频解码器的MIME类型。
从API version 22开始支持。
OH_AVCODEC_MIMETYPE_AUDIO_WMAV2WMA(Windows Media Audio)V2音频解码器的MIME类型。
从API version 22开始支持。
OH_AVCODEC_MIMETYPE_AUDIO_WMAPROWMA(Windows Media Audio)Pro音频解码器的MIME类型。
从API version 22开始支持。
OH_AVCODEC_MIMETYPE_AUDIO_GSMGSM(Global System for Mobile Communications)音频解码器的MIME类型。
从API version 22开始支持。
OH_AVCODEC_MIMETYPE_AUDIO_GSM_MSGSM MS(Microsoft variant)音频解码器的MIME类型。
从API version 22开始支持。
OH_AVCODEC_MIMETYPE_AUDIO_TWINVQTWINVQ(Transform-domain Weighted Interleave Vector Quantization)音频解码器的MIME类型。
从API version 23开始支持。
OH_AVCODEC_MIMETYPE_AUDIO_ILBCILBC(Internet Low Bitrate Codec) 音频解码器的MIME类型。
从API version 23开始支持。
OH_AVCODEC_MIMETYPE_AUDIO_TRUEHDTRUEHD(True High Definition)音频解码器的MIME类型。
从API version 23开始支持。
OH_AVCODEC_MIMETYPE_AUDIO_DVAUDIODVAUDIO(Digital Video Audio)音频解码器的MIME类型。
从API version 23开始支持。
OH_AVCODEC_MIMETYPE_AUDIO_DTSDTS(Digital Theater Systems)音频解码器的MIME类型。
从API version 23开始支持。
OH_AVCODEC_MIMETYPE_AUDIO_COOKCOOK(RealAudio Cook)音频解码器的MIME类型。
从API version 23开始支持。
OH_AVCODEC_MIMETYPE_VIDEO_VVCVVC(H.266)视频编解码器的MIME类型。
OH_AVCODEC_MIMETYPE_VIDEO_HEVCHEVC(H.265)视频编解码器的MIME类型。
OH_AVCODEC_MIMETYPE_VIDEO_AVCAVC(H.264)视频编解码器的MIME类型。
OH_AVCODEC_MIMETYPE_VIDEO_H263H.263视频编解码器的MIME类型。
OH_AVCODEC_MIMETYPE_VIDEO_VC1VC-1视频编解码器的MIME类型。
从API version 22开始支持。
OH_AVCODEC_MIMETYPE_VIDEO_MSVIDEO1MSVIDEO1(Microsoft Video 1)视频编解码器的MIME类型。
从API version 22开始支持。
OH_AVCODEC_MIMETYPE_VIDEO_WMV3WMV3视频编解码器的MIME类型。
从API version 22开始支持。
OH_AVCODEC_MIMETYPE_VIDEO_MJPEGMJPEG(Motion JPEG)视频编解码器的MIME类型。
从API version 22开始支持。
OH_AVCODEC_MIMETYPE_VIDEO_MPEG4MPEG4视频编码的MIME类型,仅用于封装MPEG4视频码流使用。(API11废弃)
OH_AVCODEC_MIMETYPE_VIDEO_MPEG4_PART2视频MPEG4 Part2编解码器的MIME类型。
OH_AVCODEC_MIMETYPE_VIDEO_MPEG2视频MPEG2编解码器的MIME类型。
OH_AVCODEC_MIMETYPE_VIDEO_AV1AV1视频编解码器的MIME类型。
从API version 23开始支持。
OH_AVCODEC_MIMETYPE_VIDEO_VP9VP9视频编解码器的MIME类型。
从API version 23开始支持。
OH_AVCODEC_MIMETYPE_VIDEO_VP8VP8视频编解码器的MIME类型。
从API version 23开始支持。
OH_AVCODEC_MIMETYPE_VIDEO_RV30RV30视频编解码器的MIME类型。
从API version 23开始支持。
OH_AVCODEC_MIMETYPE_VIDEO_RV40RV40视频编解码器的MIME类型。
从API version 23开始支持。
OH_AVCODEC_MIMETYPE_VIDEO_WVC1WVC1视频编解码器的MIME类型。
从API version 23开始支持。
OH_AVCODEC_MIMETYPE_VIDEO_DVVIDEODVVIDEO(Digital Video)视频编解码器的MIME类型。支持DV NTSC、DV PAL与DVCPRO HD。
从API version 23开始支持。
OH_AVCODEC_MIMETYPE_VIDEO_RAWVIDEORAWVIDEO视频编解码器的MIME类型。
从API version 23开始支持。
OH_AVCODEC_MIMETYPE_VIDEO_MPEG1MPEG1视频编解码器的MIME类型。
从API version 23开始支持。
OH_AVCODEC_MIMETYPE_VIDEO_CINEPAKCinepak视频编解码器的MIME类型。
从API version 24开始支持。
OH_AVCODEC_MIMETYPE_IMAGE_JPGJPG图片编码的MIME类型,仅用于封装JPG封面时使用。
OH_AVCODEC_MIMETYPE_IMAGE_PNGPNG图片编码的MIME类型,仅用于封装PNG封面时使用。
OH_AVCODEC_MIMETYPE_IMAGE_BMPBMP图片编码的MIME类型,仅用于封装BMP封面时使用。
OH_AVCODEC_MIMETYPE_SUBTITLE_WEBVTTWEBVTT字幕解封装器的MIME类型。
OH_AVCODEC_MIMETYPE_SUBTITLE_SRTSRT字幕解封装器的MIME类型。

媒体数据键值对

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

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

能力查询专有的键值对

名称描述
OH_FEATURE_PROPERTY_KEY_VIDEO_ENCODER_MAX_LTR_FRAME_COUNT在视频编码中获取长期参考帧(LTR)的最大个数的键,值类型为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_MD_KEY_ENABLE_SYNC_MODE使能音视频编解码同步模式的键,值类型为int32_t,1表示使能,0表示不使能。该键是可选的配置项,默认不配置则表示不使能同步模式,在Configure阶段使用。

视频专有的键值对

名称描述
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,单位为ms。该键是可选的且只用于视频编码。
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_TEMPORAL_LAYER_ID描述图像组(GOP)内的时域层号ID键,数据类型为int32_t。
时域层号为0时,表示基础层,1及以上时表示增强层,最大时域层号与OH_MD_KEY_VIDEO_ENCODER_TEMPORAL_GOP_REFERENCE_MODE参数和OH_MD_KEY_VIDEO_ENCODER_TEMPORAL_GOP_SIZE参数相关。
该键目前仅用于查询编码器输出的AVBuffer中携带的时域层号。
使用流程如下:
1. 通过OH_AVCodecOnNewOutputBuffer接口或OH_VideoEncoder_GetOutputBuffer获取缓冲区实例(AVBuffer)。
2. 通过OH_AVBuffer_GetParameter获取除基础属性外的其他参数实例(OH_AVFormat)。
3. 通过OH_AVFormat_GetIntValue接口和本键获取对应帧的时域层号。
起始版本: 26.0.0
OH_MD_KEY_VIDEO_ENCODER_LTR_FRAME_COUNT描述长期参考帧(LTR)个数的键,值类型为int32_t,必须在支持的值范围内使用。该键是可选的且只用于视频编码。
OH_MD_KEY_VIDEO_ENCODER_PER_FRAME_MARK_LTR标记当前帧为长期参考帧(LTR)的键,值类型为int32_t,1表示被标记为长期参考帧(LTR),0表示未被标记为长期参考帧(LTR)。该键是可选的且只用于视频编码。
OH_MD_KEY_VIDEO_ENCODER_PER_FRAME_USE_LTR描述当前帧参考的长期参考帧(LTR)的POC号的键,值类型为int32_t。该键是可选的且只用于视频编码。
OH_MD_KEY_VIDEO_PER_FRAME_IS_LTR当前OH_AVBuffer中输出的码流对应的帧是否为长期参考帧(LTR)的键,值类型为int32_t,1表示是长期参考帧(LTR),0表示不是长期参考帧(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_ROTATIONsurface旋转角度的键,旋转方向为顺时针。值类型为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码控模式的质量参数,取值范围为[0, 51](同编码量化参数QP),值越小,编码输出码率越大,质量越好,值类型为int32_t。该键值是可选的且只用于视频编码。
OH_MD_KEY_MAX_BITRATE描述SQR码控模式的最大码率,使用OH_AVCapability_GetEncoderBitrateRange方法获取取值范围(同OH_MD_KEY_BITRATE),单位bps,值类型为int64_t。该键值是可选的且只用于视频编码。
OH_MD_KEY_VIDEO_ENCODER_ROI_PARAMS描述ROI编码参数,包括ROI区域和deltaQp,值类型为char *。该键值是可选的且只用于视频编码。
OH_MD_KEY_VIDEO_ENCODER_ENABLE_PTS_BASED_RATECONTROL使能基于显示时间戳(PTS)的码控模式的键,值类型为int32_t,1表示使能,0表示不使能。该键值是可选的且只用于视频编码,默认值为0。如果使能,则必须在每个视频帧中携带PTS信息,并发送到编码器。在Configure阶段使用。
OH_MD_KEY_VIDEO_ENCODER_ENABLE_B_FRAME使能双向预测帧(B帧)编码的键,值类型为int32_t:1表示使能,0表示不使能。该键是可选项,仅用于视频编码器,默认值为0。
如果使能,视频编码器将会使用B帧编码,编码后的视频在解码时解码顺序与显示顺序会不同。
对于不支持的设备,配置该键不会生效。
可通过OH_AVCapability_IsFeatureSupported接口和枚举值OH_AVCapabilityFeature.VIDEO_ENCODER_B_FRAME查询设备能力。
该键仅通过调用OH_VideoEncoder_Configure使用。
OH_MD_KEY_VIDEO_ENCODER_MAX_B_FRAMES描述视频编码器支持的最大连续B帧数的键,值类型为int32_t。注意:该键目前仅用于查询编码器能力。
使用规范如下:
1. 通过OH_AVCapability_IsFeatureSupported接口和枚举值OH_AVCapabilityFeature.VIDEO_ENCODER_B_FRAME查询特性支持情况。
2. 通过OH_AVCapability_GetFeatureProperties接口和枚举值OH_AVCapabilityFeature.VIDEO_ENCODER_B_FRAME获取OH_AVFormat指针。
3. 通过OH_AVFormat_GetIntValue接口和本键获取最大B帧数。
OH_MD_KEY_VIDEO_DECODER_BLANK_FRAME_ON_SHUTDOWN用于指定视频解码器关闭时是否输出空白帧的键,值类型为int32_t,1表示使能,0表示不使能,默认值为0。配置非0值将按照配置1处理,表示使能。该键是可选的且仅用于视频解码Surface模式。
使能后,调用OH_VideoDecoder_Stop接口或者OH_VideoDecoder_Destroy接口时,视频解码器将输出空白帧(通常为黑色)。该机制可避免因解码器突然终止导致的显示残留。
OH_MD_KEY_VIDEO_NATIVE_BUFFER_FORMAT用于查询视频编解码中native buffer像素格式的键,值类型为int32_t。
具体取值请参见OH_NativeBuffer_Format中定义的像素格式。该键主要用于以下两种场景:
1. 视频解码:调用OH_VideoDecoder_GetOutputDescription接口或OH_AVCodecOnStreamChanged,从返回的OH_AVFormat对象中获取当前输出格式。
2. 视频编码:调用OH_VideoEncoder_GetInputDescription接口,从返回的OH_AVFormat对象中获取当前输入格式。

音频专有的键值对

名称描述
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。该键是可选的。
API version 20前,FLAC编码必须设置此参数,设置为1即可;未设置此参数配置FLAC编码器时,调用OH_AudioCodec_Configure会返回错误码AV_ERR_INVALID_VAL。该值无实际作用,不会影响编码结果。从API version 20开始,无需设置此参数。
OH_MD_KEY_SBRaac sbr模式的键,值类型为int32_t,aac编码器支持。该键是可选的。
OH_MD_KEY_COMPLIANCE_LEVELflac兼容性等级的键,值类型为int32_t,仅在音频编码使用。该键是可选的。
OH_MD_KEY_AAC_IS_ADTSaac格式的键,aac格式分为ADTS格式和LATM格式。值类型为int32_t,aac解码器支持。该键是可选的。
OH_MD_KEY_IDENTIFICATION_HEADERvorbis标识头的键,值类型为uint8_t*,仅vorbis解码器支持。该键是可选的。
OH_MD_KEY_SETUP_HEADERvorbis设置头的键,值类型为uint8_t*,仅vorbis解码器支持。该键是可选的。
OH_MD_KEY_AUDIO_OBJECT_NUMBER音频对象数目的键,值类型为int32_t,只有Audio Vivid解码使用。该键是可选的。
OH_MD_KEY_AUDIO_VIVID_METADATAAudio Vivid元数据的键,值类型为uint8_t*,只有Audio Vivid解码使用。该键是可选的。
OH_MD_KEY_BLOCK_ALIGN划分音频数据块大小的键,单位为字节,值类型为int32_t。该键从API version 22开始支持,仅WMAV1、WMAV2、WMA PRO解码时必须配置。
OH_MD_KEY_ENABLE_BUFFER_SKIP_SAMPLES在音频解码器中使能OH_MD_KEY_BUFFER_SKIP_SAMPLES_INFO的键,值类型为int32_t。1表示使能,0表示不使能,默认值为0。配置非1值将按照配置0处理,表示不使能。
该键是可选的。仅用于音频解码器。
该键从API version 24开始支持。

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

名称描述
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媒体文件标题的键,值类型为char *。该键是可选的。
OH_MD_KEY_ARTIST艺术家的键,值类型为char *。该键是可选的。
OH_MD_KEY_ALBUM专辑的媒体文件的键,值类型为char *。该键是可选的。
OH_MD_KEY_ALBUM_ARTIST专辑艺术家的键,值类型为char *。该键是可选的。
OH_MD_KEY_DATE媒体文件日期的键,值类型为char *,例如2024年。该键是可选的。
OH_MD_KEY_COMMENT媒体文件注释的键,值类型为char *。该键是可选的。
OH_MD_KEY_GENRE媒体文件流派的键,值类型为char *。该键是可选的。
OH_MD_KEY_COPYRIGHT媒体文件版权的键,值类型为char *。该键是可选的。
OH_MD_KEY_LANGUAGE媒体文件语言的键,值类型为char *。该键是可选的。
OH_MD_KEY_DESCRIPTION媒体文件描述的键,值类型为char *。该键是可选的。
OH_MD_KEY_LYRICS媒体文件歌词的键,值类型为char *。该键是可选的。
OH_MD_KEY_TRACK_COUNT媒体文件轨道数量的键,值类型为int32_t。该键是可选的。
OH_MD_KEY_BUFFER_DURATIONAVBuffer中携带的音视频或字幕的sample对应的持续时间的键,以微秒为单位,值类型为int64_t。该键是可选的。
OH_MD_KEY_DECODING_TIMESTAMPAVBuffer中携带的音视频或字幕的sample对应的解码时间戳的键,以微秒为单位,值类型为int64_t。该键是可选的。
OH_MD_KEY_CODEC_MIME编解码器MIME类型的键,值类型为char *。该键是可选的。
OH_MD_KEY_VIDEO_SAR样本长宽比的键,值类型为double。
OH_MD_KEY_CREATION_TIME媒体文件创建时间的元数据,值类型为char *。
OH_MD_KEY_REFERENCE_TRACK_IDS媒体文件轨道间参考、被参考关系,值类型为int32_t*。
OH_MD_KEY_TRACK_REFERENCE_TYPE媒体文件辅助轨类型,值类型为char *。
OH_MD_KEY_TRACK_DESCRIPTION媒体文件辅助轨描述信息,值类型为char *。
OH_MD_KEY_BUFFER_SKIP_SAMPLES_INFOOH_AVBuffer中携带的键,仅解封装支持。在解封装输出音频的起始、末尾帧可能携带此键。
此键对应一个10字节的uint8_t[]类型的数组,记录的是音频文件元数据中解码后需跳过的音频采样点数。
具体结构如下:
1. 数组0~3,这4个字节表示从当前帧第一个采样点开始往后跳过的采样点数,以小端序存储uint32_t值。
2. 数组4~7,这4个字节表示从当前帧最后一个采样点开始往前跳过的采样点数(不大于1帧采样点数),以小端序存储uint32_t值。
3. 数组8~9,这2个字节表示保留位,默认输出为0。
该键从API version 23开始支持。
OH_MD_KEY_LATITUDE纬度的键,值类型为float,范围为[-90.0, 90.0]。表示地理位置信息中的纬度。
该键从API version 24开始支持。
OH_MD_KEY_LONGITUDE经度的键,值类型为float,范围为[-180.0, 180.0]。表示地理位置信息中的经度。
该键从API version 24开始支持。
OH_MD_KEY_ALTITUDE海拔的键,值类型为float,该键是可选的。表示地理位置信息中的海拔。
该键从API version 24开始支持。

你可能感兴趣的鸿蒙文章

openharmony 鸿蒙 capi-native-avcodec-audiocodec-h

openharmony 鸿蒙 capi-avsource-oh-avsource

openharmony 鸿蒙 capi-native-cencinfo-h

openharmony 鸿蒙 capi-avmuxer

openharmony 鸿蒙 capi-multimedia-drm-oh-avcencinfo

openharmony 鸿蒙 capi-native-avdemuxer-h

openharmony 鸿蒙 capi-media-types-h

openharmony 鸿蒙 capi-native-audio-channel-layout-h

openharmony 鸿蒙 capi-native-avbuffer-info-h

openharmony 鸿蒙 capi-codecbase-oh-avcodecasynccallback

  • 所属分类: 后端技术
  • 本文标签: 鸿蒙 软件
  • 版权声明: 本文链接 https://seaxiang.com/blog/CNrdOgVZ