1、YUV数据转换为图片JPG格式并且存储到本地
private void saveYUV2Bitmap() {
ByteArrayOutputStream stream = null;
try {
YuvImage yuvImage = new YuvImage(data, ImageFormat.NV21, PREVIEW_WIDTH1, PREVIEW_HEIGHT1,null);
if (yuvImage != null) {
stream = new ByteArrayOutputStream();
yuvImage.compressToJpeg(new Rect(0, 0, WIDTH, HEIGHT), 100, stream);
Bitmap bmp = BitmapFactory.decodeByteArray(stream.toByteArray(), 0, stream.size());
mPictureName = "/storage/sdcard0/DCIM/Picture/20200508115502.jpg";
File saveFile = new File(mPictureName);
try {
FileOutputStream fileOutputStream = new FileOutputStream(saveFile);
bmp.compress(Bitmap.CompressFormat.JPEG, 100, fileOutputStream);
fileOutputStream.flush();
fileOutputStream.close();
} catch (Exception e) {
e.printStackTrace();
}
}
} catch (Exception e) {
e.printStackTrace();
} finally {
if (stream != null) {
try {
stream.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}