gpt4 book ai didi

Android byte[] 到 Camera.onPreviewFrame 中的图像

转载 作者:IT老高 更新时间:2023-10-28 23:28:32 30 4
gpt4 key购买 nike

当尝试使用 BitmapFactory.decodeByteArrayCamera.onPreviewFramebyte[] 转换为 Bitamp 时给出我一个错误 SkImageDecoder::Factory 返回 null

以下是我的代码:

public void onPreviewFrame(byte[] data, Camera camera) {
Bitmap bmp=BitmapFactory.decodeByteArray(data, 0, data.length);
}

最佳答案

这很难找到!但是从 API 8 开始,在 android.graphics 中有一个 YuvImage 类。它不是 Image 的后代,因此您可以将其保存为 Jpeg,但您可以将其保存到内存流中,然后根据需要加载到 Bitmap Image 中。

import android.graphics.YuvImage;

@Override
public void onPreviewFrame(byte[] data, Camera camera) {
try {
Camera.Parameters parameters = camera.getParameters();
Size size = parameters.getPreviewSize();
YuvImage image = new YuvImage(data, parameters.getPreviewFormat(),
size.width, size.height, null);
File file = new File(Environment.getExternalStorageDirectory()
.getPath() + "/out.jpg");
FileOutputStream filecon = new FileOutputStream(file);
image.compressToJpeg(
new Rect(0, 0, image.getWidth(), image.getHeight()), 90,
filecon);
} catch (FileNotFoundException e) {
Toast toast = Toast
.makeText(getBaseContext(), e.getMessage(), 1000);
toast.show();
}
}

关于Android byte[] 到 Camera.onPreviewFrame 中的图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5212531/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com