what-the-bank/sources/com/google/android/gms/vision/Frame.java

159 lines
4.5 KiB
Java
Raw Permalink Normal View History

2024-07-27 18:17:47 +07:00
package com.google.android.gms.vision;
import android.graphics.Bitmap;
import android.graphics.Color;
import java.nio.ByteBuffer;
/* loaded from: classes2.dex */
public class Frame {
public static final int ROTATION_0 = 0;
public static final int ROTATION_180 = 2;
public static final int ROTATION_270 = 3;
public static final int ROTATION_90 = 1;
private Metadata zzap;
private ByteBuffer zzaq;
private Bitmap zzar;
/* loaded from: classes2.dex */
public static class Builder {
private Frame zzas = new Frame();
public Builder setBitmap(Bitmap bitmap) {
int width = bitmap.getWidth();
int height = bitmap.getHeight();
this.zzas.zzar = bitmap;
Metadata metadata = this.zzas.getMetadata();
metadata.width = width;
metadata.height = height;
return this;
}
public Builder setImageData(ByteBuffer byteBuffer, int i, int i2, int i3) {
if (byteBuffer == null) {
throw new IllegalArgumentException("Null image data supplied.");
}
if (byteBuffer.capacity() < i * i2) {
throw new IllegalArgumentException("Invalid image data size.");
}
if (i3 != 16 && i3 != 17 && i3 != 842094169) {
StringBuilder sb = new StringBuilder(37);
sb.append("Unsupported image format: ");
sb.append(i3);
throw new IllegalArgumentException(sb.toString());
}
this.zzas.zzaq = byteBuffer;
Metadata metadata = this.zzas.getMetadata();
metadata.width = i;
metadata.height = i2;
metadata.format = i3;
return this;
}
public Builder setId(int i) {
this.zzas.getMetadata().id = i;
return this;
}
public Builder setTimestampMillis(long j) {
this.zzas.getMetadata().zzat = j;
return this;
}
public Builder setRotation(int i) {
this.zzas.getMetadata().rotation = i;
return this;
}
public Frame build() {
if (this.zzas.zzaq == null && this.zzas.zzar == null) {
throw new IllegalStateException("Missing image data. Call either setBitmap or setImageData to specify the image");
}
return this.zzas;
}
}
/* loaded from: classes2.dex */
public static class Metadata {
private int format = -1;
private int height;
private int id;
private int rotation;
private int width;
private long zzat;
public Metadata() {
}
public Metadata(Metadata metadata) {
this.width = metadata.getWidth();
this.height = metadata.getHeight();
this.id = metadata.getId();
this.zzat = metadata.getTimestampMillis();
this.rotation = metadata.getRotation();
}
public final void zzd() {
if (this.rotation % 2 != 0) {
int i = this.width;
this.width = this.height;
this.height = i;
}
this.rotation = 0;
}
public int getWidth() {
return this.width;
}
public long getTimestampMillis() {
return this.zzat;
}
public int getRotation() {
return this.rotation;
}
public int getId() {
return this.id;
}
public int getHeight() {
return this.height;
}
public int getFormat() {
return this.format;
}
}
public ByteBuffer getGrayscaleImageData() {
Bitmap bitmap = this.zzar;
if (bitmap == null) {
return this.zzaq;
}
int width = bitmap.getWidth();
int height = this.zzar.getHeight();
int i = width * height;
this.zzar.getPixels(new int[i], 0, width, 0, 0, width, height);
byte[] bArr = new byte[i];
for (int i2 = 0; i2 < i; i2++) {
bArr[i2] = (byte) ((Color.red(r9[i2]) * 0.299f) + (Color.green(r9[i2]) * 0.587f) + (Color.blue(r9[i2]) * 0.114f));
}
return ByteBuffer.wrap(bArr);
}
private Frame() {
this.zzap = new Metadata();
this.zzaq = null;
this.zzar = null;
}
public Metadata getMetadata() {
return this.zzap;
}
public Bitmap getBitmap() {
return this.zzar;
}
}