版本概述

OpenHarmony 5.0.3 Release版本对标准系统的能力进行持续完善,以快速迭代的方式推出API 15。与 5.0.2 Release 版本相比,该版本的媒体部分主要变化为增添了部分新特性,整体改动幅度较小。

媒体

视频解码

  • 新增支持视频可变帧率解码播放的能力
    调用视频解码Native API时,配置OH_MD_KEY_VIDEO_DECODER_OUTPUT_ENABLE_VRR参数为1可开启该功能。
OH_AVFormat_SetIntValue(format, OH_MD_KEY_VIDEO_DECODER_OUTPUT_ENABLE_VRR, 1);
OH_VideoDecoder_Configure(videoDec, format);

OH_AVFormat_SetIntValue(format, OH_MD_KEY_VIDEO_DECODER_OUTPUT_ENABLE_VRR, 0);
OH_VideoDecoder_SetParameter(decoder,format);

图片处理

  • 新增从Surface id创建PixelMap对象的方法,相比原有方法,无需指定区域
  createPixelMapFromSurface(surfaceId: string): Promise<PixelMap>
  createPixelMapFromSurfaceSync(surfaceId: string): PixelMap
  • 新增C API支持获取Pixelmap像素数据的内存地址
 Image_ErrorCode OH_PixelmapNative_AccessPixels(OH_PixelmapNative *pixelmap, void **addr)

获取Pixelmap像素数据的内存地址,并锁定这块内存。当该内存被锁定时,任何修改或释放该Pixelmap的像素数据的操作均会失败或无效。
如果操作成功则返回IMAGE_SUCCESS, 如果pixelmap或addr参数无效则返回IMAGE_BAD_PARAMETER, 如果内存锁定失败则返回IMAGE_LOCK_UNLOCK_FAILED。 具体请参考 Image_ErrorCode。

屏幕录制

  • 屏幕录制的C API新增支持设置录屏内容是否显示光标
 OH_AVSCREEN_CAPTURE_ErrCode OH_AVScreenCapture_ShowCursor(struct OH_AVScreenCapture *capture, bool showCursor)
  • 屏幕录制新增支持获取录屏的屏幕ID的回调
OH_AVSCREEN_CAPTURE_ErrCode OH_AVScreenCapture_SetDisplayCallback(struct OH_AVScreenCapture *capture, OH_AVScreenCapture_OnDisplaySelected callback, void *userData)

typedef void (*OH_AVScreenCapture_OnDisplaySelected)(OH_AVScreenCapture *capture, uint64_t displayId, void *userData)

相机

  • 新增支持获取分布式相机设备的类型
enum HostDeviceType {
    UNKNOWN_TYPE = 0,  // 未知设备类型
    PHONE = 0x0E,      // 手机设备
    TABLET = 0x11      // 平板设备
}

interface CameraDevice {
    ...
    readonly hostDeviceType: HostDeviceType;
    ...
}

getSupportedCameras(): Array<CameraDevice>;
  • 新增支持镜像录像的能力
enableMirror(enabled: boolean): void

PhotoOutput的接口。是否启用动态照片镜像拍照。
调用该接口前,需要通过isMovingPhotoSupported查询是否支持动态照片拍摄功能以及通过isMirrorSupported查询是否支持镜像拍照功能。

媒体库

  • 新增支持通过photoPicker预览并替换相册中图片的能力
replacePhotoPickerPreview(originalUri: string, newUri: string, callback: AsyncCallback<void>): void

PickerController的接口。应用可通过该接口,将photoPicker中用户勾选的图片替换为应用后期编辑修改后的图片。

Logo

社区规范:仅讨论OpenHarmony相关问题。

更多推荐