openharmony 鸿蒙 native-apidiff-avcodec

2023-10-30 浏览 (654)

Native API 差异报告

OpenHarmony 4.0.8.5 版本相较于OpenHarmony 之前的版本的API变更如下: *

标准系统接口变更

模块名称接口名称变更类型变更说明
avmuxerOH_AVMuxer *OH_AVMuxer_Create(int32_t fd, OH_AVOutputFormat format);新增创建OH_AVMuxer
avmuxerOH_AVErrCode OH_AVMuxer_SetRotation(OH_AVMuxer *muxer, int32_t rotation);新增设置视频旋转角度
avmuxerOH_AVErrCode OH_AVMuxer_AddTrack(OH_AVMuxer *muxer, int32_t *trackIndex, OH_AVFormat *trackFormat);新增添加媒体轨
avmuxerOH_AVErrCode OH_AVMuxer_Start(OH_AVMuxer *muxer);新增开始封装
avmuxerOH_AVErrCode OH_AVMuxer_WriteSample(OH_AVMuxer *muxer, uint32_t trackIndex, OH_AVMemory *sample, OH_AVCodecBufferAttr info);新增将数据写入封装器
avmuxerOH_AVErrCode OH_AVMuxer_Stop(OH_AVMuxer *muxer);新增停止封装
avmuxerOH_AVErrCode OH_AVMuxer_Destroy(OH_AVMuxer *muxer);新增销毁OH_AVMuxer
avsourceOH_AVSource *OH_AVSource_CreateWithURI(char *uri);新增根据 URI 创建 OH_AVSource
avsourceOH_AVSource *OH_AVSource_CreateWithFD(int32_t fd, int64_t offset, int64_t size);新增根据 FD 创建OH_AVSource
avsourceOH_AVErrCode OH_AVSource_Destroy(OH_AVSource *source);新增销毁 OH_AVSource
avsourceOH_AVFormat *OH_AVSource_GetSourceFormat(OH_AVSource *source);新增获取 source 信息
avsourceOH_AVFormat *OH_AVSource_GetTrackFormat(OH_AVSource *source, uint32_t trackCount);新增获取 track 信息
avdemuxerOH_AVDemuxer *OH_AVDemuxer_CreateWithSource(OH_AVSource *source);新增根据 source 创建 OH_AVDemuxer
avdemuxerOH_AVErrCode OH_AVDemuxer_Destroy(OH_AVDemuxer *demuxer);新增销毁 OH_AVDemuxer
avdemuxerOH_AVErrCode OH_AVDemuxer_SelectTrackByID(OH_AVDemuxer *demuxer, uint32_t trackIndex);新增选择需要解封装的轨道
avdemuxerOH_AVErrCode OH_AVDemuxer_UnselectTrackByID(OH_AVDemuxer *demuxer, uint32_t trackIndex);新增取消选择需要解封装的轨道
avdemuxerOH_AVErrCode OH_AVDemuxer_ReadSample(OH_AVDemuxer *demuxer, uint32_t trackIndex, OH_AVMemory *sample, OH_AVCodecBufferAttr *info);新增读取 trackIndex 对应轨道的帧
avdemuxerOH_AVErrCode OH_AVDemuxer_SeekToTime(OH_AVDemuxer *demuxer, int64_t millisecond, OH_AVSeekMode mode);新增跳转到指定时间
avcapabilityOH_AVCapability *OH_AVCodec_GetCapability(const char *mime, bool isEncoder);新增获取系统推荐的能力句柄
avcapabilityOH_AVCapability *OH_AVCodec_GetCapabilityByCategory(const char *mime, bool isEncoder, OH_AVCodecCategory category);新增获取系统指定软硬件的能力句柄
avcapabilitybool OH_AVCapability_IsHardware(OH_AVCapability *capability);新增确认是否是硬件编解码器
avcapabilityconst char *OH_AVCapability_GetName(OH_AVCapability *capability);新增获取codec名字
avcapabilityint32_t OH_AVCapability_GetMaxSupportedInstances(OH_AVCapability *capability);新增获取最大支持的实例数
avcapabilityOH_AVErrCode OH_AVCapability_GetEncoderBitrateRange(OH_AVCapability *capability, OH_AVRange *bitrateRange);新增获取编码支持的码率范围
avcapabilitybool OH_AVCapability_IsEncoderBitrateModeSupported(OH_AVCapability *capability, OH_BitrateMode bitrateMode);新增确认码控模式是否支持
avcapabilityOH_AVErrCode OH_AVCapability_GetEncoderQualityRange(OH_AVCapability *capability, OH_AVRange *qualityRange);新增获取编码质量范围
avcapabilityOH_AVErrCode OH_AVCapability_GetEncoderComplexityRange(OH_AVCapability *capability, OH_AVRange *complexityRange);新增获取编码复杂度范围
avcapabilityOH_AVErrCode OH_AVCapability_GetAudioSupportedSampleRates(OH_AVCapability *capability, const int32_t **sampleRates, uint32_t *sampleRateNum);新增获取支持的音频采样率
avcapabilityOH_AVErrCode OH_AVCapability_GetAudioChannelCountRange(OH_AVCapability *capability, OH_AVRange *channelCountRange);新增获取音频通道数范围
avcapabilityOH_AVErrCode OH_AVCapability_GetVideoWidthAlignment(OH_AVCapability *capability, int32_t *widthAlignment);新增获取视频宽对齐
avcapabilityOH_AVErrCode OH_AVCapability_GetVideoHeightAlignment(OH_AVCapability *capability, int32_t *heightAlignment);新增获取视频高对齐
avcapabilityOH_AVErrCode OH_AVCapability_GetVideoWidthRangeForHeight(OH_AVCapability *capability, int32_t height, OH_AVRange *widthRange);新增获取特定高情况下视频宽范围
avcapabilityOH_AVErrCode OH_AVCapability_GetVideoHeightRangeForWidth(OH_AVCapability *capability, int32_t width, OH_AVRange *heightRange);新增获取特定宽情况下视频高范围
avcapabilityOH_AVErrCode OH_AVCapability_GetVideoWidthRange(OH_AVCapability *capability, OH_AVRange *widthRange);新增获取视频宽范围
avcapabilityOH_AVErrCode OH_AVCapability_GetVideoHeightRange(OH_AVCapability *capability, OH_AVRange *heightRange);新增获取视频高范围
avcapabilitybool OH_AVCapability_IsVideoSizeSupported(OH_AVCapability *capability, int32_t width, int32_t height);新增确认当前视频尺寸是否支持
avcapabilityOH_AVErrCode OH_AVCapability_GetVideoFrameRateRange(OH_AVCapability *capability, OH_AVRange *frameRateRange);新增获取视频帧率范围
avcapabilityOH_AVErrCode OH_AVCapability_GetVideoFrameRateRangeForSize(OH_AVCapability *capability, int32_t width, int32_t height, OH_AVRange *frameRateRange);新增获取特定尺寸下视频帧率范围
avcapabilitybool OH_AVCapability_AreVideoSizeAndFrameRateSupported(OH_AVCapability *capability, int32_t width, int32_t height, int32_t frameRate);新增确认当前视频尺寸和帧率是否支持
avcapabilityOH_AVErrCode OH_AVCapability_GetVideoSupportedPixelFormats(OH_AVCapability *capability, const int32_t **pixFormats, uint32_t *pixFormatNum);新增获取支持的视频像素格式
avcapabilityOH_AVErrCode OH_AVCapability_GetSupportedProfiles(OH_AVCapability *capability, const int32_t **profiles, uint32_t *profileNum);新增获取支持的模板
avcapabilityOH_AVErrCode OH_AVCapability_GetSupportedLevelsForProfile(OH_AVCapability *capability, int32_t profile, const int32_t **levels,uint32_t *levelNum);新增获取特定模板情况下的等级范围
avcapabilitybool OH_AVCapability_AreProfileAndLevelSupported(OH_AVCapability *capability, int32_t profile, int32_t level);新增确认当前模板和等级是否支持
avformatstruct OH_AVFormat *OH_AVFormat_CreateAudioFormat(const char *mimeType, int32_t sampleRate, int32_t channelCount);新增创建音频轨的OH_AVFormat(用于avmuxer)
avformatstruct OH_AVFormat *OH_AVFormat_CreateVideoFormat(const char *mimeType, int32_t width, int32_t height);新增创建视频轨的OH_AVFormat(用于avmuxer)
avmemoryOH_AVMemory *OH_AVMemory_Create(int32_t size);新增创建OH_AVMemory
avmemoryOH_AVErrCode OH_AVMemory_Destroy(struct OH_AVMemory *mem);新增销毁OH_AVMemory
avcodecOH_AVErrCode OH_AudioDecoder_IsValid(OH_AVCodec *codec, bool *isValid);新增查询当前codec实例是否有效, 可用于故障恢复
avcodecOH_AVErrCode OH_AudioEncoder_IsValid(OH_AVCodec *codec, bool *isValid);新增查询当前codec实例是否有效, 可用于故障恢复
avcodecOH_AVErrCode OH_VideoDecoder_IsValid(OH_AVCodec *codec, bool *isValid);新增查询当前codec实例是否有效
avcodecOH_AVErrCode OH_VideoEncoder_IsValid(OH_AVCodec *codec, bool *isValid);新增查询当前codec实例是否有效
avcodecOH_AVErrCode OH_VideoEncoder_PushInputData(OH_AVCodec *codec, uint32_t index, OH_AVCodecBufferAttr attr);新增将填入数据的输入缓冲区提交给视频编码器
avcodecOH_AVFormat *OH_VideoEncoder_GetInputDescription(OH_AVCodec *codec);新增获取视频编码器接收的描述信息

你可能感兴趣的鸿蒙文章

harmony 鸿蒙1.0.0 (2022/03/09)

harmony 鸿蒙1.0.0 (2022/03/09)

harmony 鸿蒙OpenHarmony Docker镜像

harmony 鸿蒙OpenHarmony Docker Image

harmony 鸿蒙Legal Notices

harmony 鸿蒙OpenHarmony Project

harmony 鸿蒙IDL Specifications and User Guide (for System Applications Only)

harmony 鸿蒙Application Development

harmony 鸿蒙Accessibility Kit

harmony 鸿蒙Introduction to Accessibility Kit

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