in on previewframe Я получаю байт [] в ImageFormat.RGB_565. Теперь я хотел бы преобразовать этот байт [] в int [], чтобы я мог выполнять некоторые манипуляции с пикселями.onpreviewframe byte [] to int []
Как я мог это сделать?
пс. до сих пор я делаю это так, но это кажется очень неоптимизированным:
public void onPreviewFrame(byte[] data, Camera camera) { ...
ByteBuffer bf = ByteBuffer.wrap(data);
mBitmap = Bitmap.createBitmap(mWidth, mHeight, Bitmap.Config.RGB_565);
mBitmap.copyPixelsFromBuffer(bf);
, а затем я делаю это действительно получает пикселы в междах []:
int bitmapArray[] = new int[originalWidth * originalHeight];
mBitmap.getPixels(bitmapArray, 0, originalWidth, 0, 0,
originalWidth, originalHeight);
}
Это кажется разумным. Вы можете попробовать преобразовать его вручную по пикселям, но это может быть не быстрее. –