HarmonyOS 鸿蒙Next中AREngine如何获取高清图像
HarmonyOS 鸿蒙Next中AREngine如何获取高清图像 在鸿蒙4.x的ARengine中可以通过ARFrame获取高清图像
Image image = mArFrame.acquirePreviewImage(); //获取高清相片
实际调用的是ndk侧的
public Image acquirePreviewImage() {
long var1 = this.mSession.mNativeHandle;
long var3 = this.mNativeHandle;
var1 = this.nativeAcquirePreviewImage(var1, var3);
return new ARImage(var1);
}
通过这个方法可以得到1440*1080大小的图片
但是升级到鸿蒙5.1后(5.0.5(17)),ARengine中没有这个方法了,只有
AREngine_ARStatus HMS_AREngine_ARFrame_AcquireCameraImage(const AREngine_ARSession *session,
const AREngine_ARFrame *frame, AREngine_ARImage **outImage);
得到的图片只有640*480,具体结果如下:
imageData: 394976533248, imageLength 307200, imageStride 640, imageWidth 640, imageHeight 480 format 2 timeStamp 177440137523000 imagePlaneCount 3 imagePixStride 1
请问在最新纯血鸿蒙中如何得到的高清的图片?
更多关于HarmonyOS 鸿蒙Next中AREngine如何获取高清图像的实战教程也可以访问 https://www.itying.com/category-93-b0.html
在HarmonyOS鸿蒙Next中,使用AREngine获取高清图像需调用getCameraImage
方法。该方法返回当前相机帧的Image
对象,包含YUV格式数据。通过设置相机配置参数,可调整图像分辨率和帧率以获取高清输出。具体实现需结合ARFrame
对象实时获取图像数据。
更多关于HarmonyOS 鸿蒙Next中AREngine如何获取高清图像的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
在HarmonyOS Next中,AREngine的高清图像获取方式已更新。建议使用ARFrame.acquireCameraImage()
方法,并通过配置会话参数来提升图像分辨率。在初始化ARSession时,设置ARConfigBase.CameraConfig
中的图像尺寸参数,选择设备支持的高分辨率模式(如1080p或更高)。具体实现需参考当前版本的NDK文档,确认可用配置选项及对应的分辨率输出。由于API调整,原有方法可能不再适用,请根据设备硬件能力调整参数以获取更高质量的图像。