相机视频时,解析不了。
Closed this issue · 3 comments
zghnx commented
public void onPreview(final byte[] nv21, Camera camera) {
YuvImage yuvImage = new YuvImage(nv21, ImageFormat.NV21, camera.getParameters().getPreviewSize().width, camera.getParameters().getPreviewSize().height, null);
ByteArrayOutputStream stream = new ByteArrayOutputStream(nv21.length);
yuvImage.compressToJpeg(new Rect(0, 0, yuvImage.getWidth(), yuvImage.getHeight()), 90, stream);
Bitmap bitmap = BitmapFactory.decodeByteArray(stream.toByteArray(), 0, stream.size());
InputImage inputImage = InputImage.fromBitmap(bitmap, 0);
//InputImage inputImage = InputImage.fromMediaImage(imageProxy.getImage(), imageProxy.getImageInfo().getRotationDegrees());
// final Bitmap finalBitmap = bitmap;
barcodeScanner.process(inputImage)
.addOnSuccessListener(new OnSuccessListener<List<Barcode>>() {
@Override
public void onSuccess(@NonNull List<Barcode> barcodes) {
if (barcodes.size() == 0) {
return;
}
for (Barcode barcode : barcodes) {
String value = barcode.getRawValue();
Log.e("======", "value:" + value);
}
}
})
.addOnFailureListener(new OnFailureListener() {
@Override
public void onFailure(@NonNull Exception e) {
Log.e("======", "onFailure---:" + e.toString());
}
});
}
不知道为什么解析不了。
zghnx commented
问题找到了,是手机前置摄像头不支持,后置摄像头支持。怎么样解决手机前置摄像头不支持?
ITxiaoguang commented
正常来说 Bitmap 有数据就是可以解析的,你可以断点看一下Bitmap图片是否有二维码,有的话,是可以解析的.
前置摄像头应该是取不到数据造成的.
zghnx commented
正常来说 Bitmap 有数据就是可以解析的,你可以断点看一下Bitmap图片是否有二维码,有的话,是可以解析的. 前置摄像头应该是取不到数据造成的.
Bitmap有的。可能是没聚焦。解析不出来。