Hey Kaiilang,
1. Do you maybe also have a Kotlin example for that?
2. Please have a look at the ImageAnalysis.png or planeProxy_0 (y-plane) - the image of the keyboard is mirrored on the y axis (see keyboard characters N,J,Z, R) - the planeProxy_0 is the direct dump of the ByteBuffer in imageProxy.planes, therefore this does not happen because of a wrong conversion method. setTargetRotation is set and it also works on other Devices.
3. Only the first 0x140 (=320) Bytes are set in the u and v buffer, this is exactly the rowStride. Therefore I only get u and v for 1 row instead of 240 - the image is 640x480 therefore the size of u and v should be 320x240 (1/4) - please see the buffer dumps planeProxy_1 and planeProxy_2
I also tried the rgba 8888 output format by adding .setOutputImageFormat(ImageAnalysis.OUTPUT_IMAGE_FORMAT_RGBA_8888) to the ImageAnalysis.Builder which also returns a green mirrored image. I attached it below if you want to also have a look.
Thanks for your help!
Regards, Roman