[V4][Android] Orientation prop landscape-left and landscape-right seems to produce inverted images 🐛
What's happening?
Hello!
In my recent try to update to the latest v4.0.1. My device have the captured image flipped for landscape-left and landscape-right orientation modes.
Note: I am not rotating the UI, the UI is locked in portrait. The four buttons above my app change the orientation props. Note2: I don't reproduce in the example app. Because the orientation prop is fixed to portrait.
https://github.com/mrousavy/react-native-vision-camera/assets/91324462/105d58ce-3e76-4ba4-aba8-8040c837f560
Reproduceable Code
import { useEffect, useRef, useState } from 'react';
import { Button, Image, ScrollView, StyleSheet, Text, View } from 'react-native';
import { Camera, Orientation, useCameraDevice } from 'react-native-vision-camera';
type PhotoModel = {
uri: string;
visionCameraWidth: number;
visionCameraHeight: number;
imageWidth: number;
imageheight: number;
};
export default App = () => {
const [init, setInit] = useState(false);
useEffect(() => {
(async () => {
const newCameraPermission = await Camera.requestCameraPermission();
setInit(true);
})();
}, []);
const device = useCameraDevice('back');
const cameraRef = useRef<Camera>(null);
const [orientation, setOrientation] = useState<Orientation>('portrait');
const [images, setImages] = useState<PhotoModel[]>([]);
if (!init) {
return <></>;
}
if (device == null) return <></>;
return (
<View style={StyleSheet.absoluteFill}>
<Camera
ref={cameraRef}
style={StyleSheet.absoluteFill}
device={device}
isActive={true}
photo={true}
orientation={orientation}
/>
<Button
title="Take photo"
onPress={async () => {
const photoResult = await cameraRef.current?.takePhoto({});
if (photoResult) {
Image.getSize('file:///' + photoResult?.path, (w, h) => {
setImages((prev) => {
return [
...prev,
{
uri: 'file:///' + photoResult.path,
visionCameraWidth: photoResult.width,
visionCameraHeight: photoResult.height,
imageWidth: w,
imageheight: h,
},
];
});
});
}
}}
/>
<Button
title="Focus"
onPress={async () => {
const photoResult = await cameraRef.current?.focus({ x: 0, y: 0 });
}}
/>
<View style={{ backgroundColor: 'red', height: 30 }}>
<View style={{ flex: 1, flexDirection: 'row' }}>
<Button
title="LandLeft"
onPress={() => {
setOrientation('landscape-left');
}}
/>
<Button
title="LandRight"
onPress={() => {
setOrientation('landscape-right');
}}
/>
<Button
title="Port"
onPress={() => {
setOrientation('portrait');
}}
/>
<Button
title="PortDown"
onPress={() => {
setOrientation('portrait-upside-down');
}}
/>
</View>
</View>
<ScrollView
style={{
position: 'absolute',
bottom: 0,
left: 0,
right: 0,
height: 200,
backgroundColor: 'black',
}}
horizontal={true}
>
{images.map((image, index) => {
return (
<View key={index} style={{ flex: 1 }}>
<Image
style={{ flex: 1 }}
source={{
uri: image.uri,
}}
height={200}
width={200}
/>
<Text
style={{
position: 'absolute',
bottom: 0,
left: 0,
right: 0,
height: 20,
color: 'red',
}}
>
VC: {image.visionCameraWidth}x{image.visionCameraHeight}. RN:{' '}
{image.imageWidth}x{image.imageheight}
</Text>
</View>
);
})}
</ScrollView>
</View>
);
};
Relevant log output
2024-04-25 17:37:07.096 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:07.112 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:07.129 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:07.146 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:07.163 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:07.179 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:07.196 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:07.213 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:07.229 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:07.246 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:07.263 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:07.280 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:07.296 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:07.313 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:07.329 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:07.346 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:07.363 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:07.554 18515-25595 CameraView com.rnvc I invokeOnAverageFpsChanged(0.0)
2024-04-25 17:37:08.554 18515-25595 CameraView com.rnvc I invokeOnAverageFpsChanged(0.0)
2024-04-25 17:37:09.555 18515-25595 CameraView com.rnvc I invokeOnAverageFpsChanged(0.0)
2024-04-25 17:37:10.555 18515-25595 CameraView com.rnvc I invokeOnAverageFpsChanged(0.0)
2024-04-25 17:37:11.554 18515-25595 CameraView com.rnvc I invokeOnAverageFpsChanged(0.0)
2024-04-25 17:37:12.554 18515-25595 CameraView com.rnvc I invokeOnAverageFpsChanged(0.0)
2024-04-25 17:37:13.555 18515-25595 CameraView com.rnvc I invokeOnAverageFpsChanged(0.0)
2024-04-25 17:37:14.556 18515-25595 CameraView com.rnvc I invokeOnAverageFpsChanged(0.0)
2024-04-25 17:37:15.556 18515-25595 CameraView com.rnvc I invokeOnAverageFpsChanged(0.0)
2024-04-25 17:37:16.556 18515-25595 CameraView com.rnvc I invokeOnAverageFpsChanged(0.0)
2024-04-25 17:37:17.556 18515-25595 CameraView com.rnvc I invokeOnAverageFpsChanged(0.0)
2024-04-25 17:37:18.557 18515-25595 CameraView com.rnvc I invokeOnAverageFpsChanged(0.0)
2024-04-25 17:37:19.556 18515-25595 CameraView com.rnvc I invokeOnAverageFpsChanged(0.0)
2024-04-25 17:37:20.557 18515-25595 CameraView com.rnvc I invokeOnAverageFpsChanged(0.0)
2024-04-25 17:37:21.557 18515-25595 CameraView com.rnvc I invokeOnAverageFpsChanged(0.0)
2024-04-25 17:37:22.557 18515-25595 CameraView com.rnvc I invokeOnAverageFpsChanged(0.0)
2024-04-25 17:37:23.558 18515-25595 CameraView com.rnvc I invokeOnAverageFpsChanged(0.0)
2024-04-25 17:37:24.559 18515-25595 CameraView com.rnvc I invokeOnAverageFpsChanged(0.0)
2024-04-25 17:37:25.559 18515-25595 CameraView com.rnvc I invokeOnAverageFpsChanged(0.0)
2024-04-25 17:37:26.558 18515-25595 CameraView com.rnvc I invokeOnAverageFpsChanged(0.0)
2024-04-25 17:37:27.559 18515-25595 CameraView com.rnvc I invokeOnAverageFpsChanged(0.0)
2024-04-25 17:37:28.559 18515-25595 CameraView com.rnvc I invokeOnAverageFpsChanged(0.0)
2024-04-25 17:37:29.560 18515-25595 CameraView com.rnvc I invokeOnAverageFpsChanged(0.0)
2024-04-25 17:37:30.561 18515-25595 CameraView com.rnvc I invokeOnAverageFpsChanged(0.0)
2024-04-25 17:37:31.562 18515-25595 CameraView com.rnvc I invokeOnAverageFpsChanged(0.0)
2024-04-25 17:37:32.561 18515-25595 CameraView com.rnvc I invokeOnAverageFpsChanged(0.0)
2024-04-25 17:37:33.561 18515-25595 CameraView com.rnvc I invokeOnAverageFpsChanged(0.0)
2024-04-25 17:37:34.563 18515-25595 CameraView com.rnvc I invokeOnAverageFpsChanged(0.0)
2024-04-25 17:37:34.692 18515-18515 ViewRootIm...nActivity] com.rnvc I ViewPostIme pointer 0
2024-04-25 17:37:34.725 18515-18515 ViewRootIm...nActivity] com.rnvc I ViewPostIme pointer 1
2024-04-25 17:37:34.774 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:34.788 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:34.802 18515-18515 CameraView com.rnvc I Updating CameraSession...
2024-04-25 17:37:34.803 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:34.804 18515-18515 CameraSession com.rnvc I configure { ... }: Waiting for lock...
2024-04-25 17:37:34.804 18515-18515 CameraSession com.rnvc I Nothing changed, aborting configure { ... }
2024-04-25 17:37:34.821 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:34.838 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:34.855 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:34.872 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:34.888 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:34.905 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:34.922 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:34.939 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:34.955 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:34.972 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:34.989 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:35.005 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:35.022 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:35.039 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:35.055 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:35.072 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:35.089 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:35.106 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:35.122 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:35.139 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:35.156 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:35.171 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:35.563 18515-25595 CameraView com.rnvc I invokeOnAverageFpsChanged(0.0)
2024-04-25 17:37:36.562 18515-25595 CameraView com.rnvc I invokeOnAverageFpsChanged(0.0)
2024-04-25 17:37:37.562 18515-25595 CameraView com.rnvc I invokeOnAverageFpsChanged(0.0)
2024-04-25 17:37:38.093 18515-18515 ViewRootIm...nActivity] com.rnvc I ViewPostIme pointer 0
2024-04-25 17:37:38.120 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:38.130 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:38.139 18515-18515 ViewRootIm...nActivity] com.rnvc I ViewPostIme pointer 1
2024-04-25 17:37:38.148 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:38.158 18515-18515 CameraView com.rnvc D Finding view 7...
2024-04-25 17:37:38.159 18515-18515 CameraView com.rnvc D Found view 7!
2024-04-25 17:37:38.160 18515-25573 CameraView.takePhoto com.rnvc I Taking photo... Options: {}
2024-04-25 17:37:38.162 18515-25571 UseCaseAttachState com.rnvc D Active and attached use case: [androidx.camera.core.ImageCapture-92c8645b-d6f5-4cf1-9ffc-983c56701873136296374, androidx.camera.core.Preview-b93df1a8-de19-4add-841e-ab5ab742755786324049] for camera: 0
2024-04-25 17:37:38.163 18515-25573 CameraSession com.rnvc I Ringer mode is silent (1), disabling shutter sound...
2024-04-25 17:37:38.163 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:38.164 18515-25571 CaptureSession com.rnvc D Attempting to submit CaptureRequest after setting
2024-04-25 17:37:38.164 18515-25571 CaptureSession com.rnvc D Issuing request for session.
2024-04-25 17:37:38.164 18515-25571 Camera2Cap...estBuilder com.rnvc D createCaptureRequest
2024-04-25 17:37:38.168 18515-18515 ImageCapture com.rnvc D takePictureInternal
2024-04-25 17:37:38.169 18515-18515 CameraOrientationUtil com.rnvc D getRelativeImageRotation: destRotationDegrees=90, sourceRotationDegrees=90, isOppositeFacing=true, result=0
2024-04-25 17:37:38.170 18515-18515 TakePictureManager com.rnvc D Issue the next TakePictureRequest.
2024-04-25 17:37:38.181 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:38.197 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:38.214 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:38.233 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:38.248 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:38.264 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:38.281 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:38.298 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:38.315 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:38.331 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:38.348 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:38.365 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:38.381 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:38.398 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:38.415 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:38.431 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:38.448 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:38.457 18515-25572 Camera2CameraImpl com.rnvc D {Camera@ab341b3[id=0]} Issue capture request
2024-04-25 17:37:38.457 18515-25572 CaptureSession com.rnvc D Issuing capture request.
2024-04-25 17:37:38.459 18515-25572 Camera2Cap...estBuilder com.rnvc D createReprocessCaptureRequest
2024-04-25 17:37:38.465 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:38.482 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:38.499 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:38.517 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:38.562 18515-25595 CameraView com.rnvc I invokeOnAverageFpsChanged(0.0)
2024-04-25 17:37:38.695 18515-18515 CameraView com.rnvc I invokeOnShutter(PHOTO)
2024-04-25 17:37:38.721 18515-18515 TakePictureManager com.rnvc D Issue the next TakePictureRequest.
2024-04-25 17:37:38.721 18515-18515 TakePictureManager com.rnvc D No new request.
2024-04-25 17:37:38.897 18515-25562 CameraView.takePhoto com.rnvc I Successfully captured 4032 x 3024 photo!
2024-04-25 17:37:39.349 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:39.517 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:39.534 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:39.550 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:39.562 18515-25595 CameraView com.rnvc I invokeOnAverageFpsChanged(0.0)
2024-04-25 17:37:39.566 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:39.582 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:39.599 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:39.615 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:39.633 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:39.649 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:39.666 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:39.682 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:39.700 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:39.717 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:39.733 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:39.750 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:39.766 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:39.784 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:39.800 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:39.816 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:40.562 18515-25595 CameraView com.rnvc I invokeOnAverageFpsChanged(0.0)
2024-04-25 17:37:41.563 18515-25595 CameraView com.rnvc I invokeOnAverageFpsChanged(0.0)
2024-04-25 17:37:42.563 18515-25595 CameraView com.rnvc I invokeOnAverageFpsChanged(0.0)
2024-04-25 17:37:43.564 18515-25595 CameraView com.rnvc I invokeOnAverageFpsChanged(0.0)
2024-04-25 17:37:44.563 18515-25595 CameraView com.rnvc I invokeOnAverageFpsChanged(0.0)
2024-04-25 17:37:45.563 18515-25595 CameraView com.rnvc I invokeOnAverageFpsChanged(0.0)
2024-04-25 17:37:46.398 18515-18515 ViewRootIm...nActivity] com.rnvc I ViewPostIme pointer 0
2024-04-25 17:37:46.425 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:46.436 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:46.453 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:46.469 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:46.481 18515-18515 ViewRootIm...nActivity] com.rnvc I ViewPostIme pointer 1
2024-04-25 17:37:46.486 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:46.503 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:46.518 18515-18515 CameraView com.rnvc I Updating CameraSession...
2024-04-25 17:37:46.520 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:46.521 18515-18515 CameraSession com.rnvc I configure { ... }: Waiting for lock...
2024-04-25 17:37:46.521 18515-18515 CameraSession com.rnvc I Nothing changed, aborting configure { ... }
2024-04-25 17:37:46.536 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:46.553 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:46.563 18515-25595 CameraView com.rnvc I invokeOnAverageFpsChanged(0.0)
2024-04-25 17:37:46.569 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:46.586 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:46.603 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:46.620 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:46.637 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:46.654 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:46.670 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:46.687 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:46.704 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:46.720 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:46.737 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:46.754 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:46.770 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:46.787 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:46.804 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:46.819 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:47.564 18515-25595 CameraView com.rnvc I invokeOnAverageFpsChanged(0.0)
2024-04-25 17:37:48.370 18515-18515 ViewRootIm...nActivity] com.rnvc I ViewPostIme pointer 0
2024-04-25 17:37:48.394 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:48.408 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:48.425 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:48.437 18515-18515 ViewRootIm...nActivity] com.rnvc I ViewPostIme pointer 1
2024-04-25 17:37:48.441 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:48.448 18515-18515 CameraView com.rnvc D Finding view 7...
2024-04-25 17:37:48.449 18515-18515 CameraView com.rnvc D Found view 7!
2024-04-25 17:37:48.449 18515-25562 CameraView.takePhoto com.rnvc I Taking photo... Options: {}
2024-04-25 17:37:48.451 18515-25570 UseCaseAttachState com.rnvc D Active and attached use case: [androidx.camera.core.ImageCapture-92c8645b-d6f5-4cf1-9ffc-983c56701873136296374, androidx.camera.core.Preview-b93df1a8-de19-4add-841e-ab5ab742755786324049] for camera: 0
2024-04-25 17:37:48.453 18515-25562 CameraSession com.rnvc I Ringer mode is silent (1), disabling shutter sound...
2024-04-25 17:37:48.453 18515-25570 CaptureSession com.rnvc D Attempting to submit CaptureRequest after setting
2024-04-25 17:37:48.453 18515-25570 CaptureSession com.rnvc D Issuing request for session.
2024-04-25 17:37:48.453 18515-25570 Camera2Cap...estBuilder com.rnvc D createCaptureRequest
2024-04-25 17:37:48.455 18515-18515 ImageCapture com.rnvc D takePictureInternal
2024-04-25 17:37:48.458 18515-18515 CameraOrientationUtil com.rnvc D getRelativeImageRotation: destRotationDegrees=270, sourceRotationDegrees=90, isOppositeFacing=true, result=180
2024-04-25 17:37:48.458 18515-18515 TakePictureManager com.rnvc D Issue the next TakePictureRequest.
2024-04-25 17:37:48.458 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:48.462 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:48.475 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:48.491 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:48.508 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:48.525 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:48.543 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:48.558 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:48.564 18515-25595 CameraView com.rnvc I invokeOnAverageFpsChanged(0.0)
2024-04-25 17:37:48.575 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:48.592 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:48.609 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:48.625 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:48.642 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:48.659 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:48.676 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:48.693 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:48.709 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:48.726 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:48.743 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:48.746 18515-25570 Camera2CameraImpl com.rnvc D {Camera@ab341b3[id=0]} Issue capture request
2024-04-25 17:37:48.746 18515-25570 CaptureSession com.rnvc D Issuing capture request.
2024-04-25 17:37:48.748 18515-25570 Camera2Cap...estBuilder com.rnvc D createReprocessCaptureRequest
2024-04-25 17:37:48.759 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:48.776 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:48.789 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:48.960 18515-18515 CameraView com.rnvc I invokeOnShutter(PHOTO)
2024-04-25 17:37:48.980 18515-18515 TakePictureManager com.rnvc D Issue the next TakePictureRequest.
2024-04-25 17:37:48.980 18515-18515 TakePictureManager com.rnvc D No new request.
2024-04-25 17:37:49.151 18515-25573 CameraView.takePhoto com.rnvc I Successfully captured 4032 x 3024 photo!
2024-04-25 17:37:49.564 18515-25595 CameraView com.rnvc I invokeOnAverageFpsChanged(0.0)
2024-04-25 17:37:50.320 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:50.527 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:50.544 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:50.562 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:50.565 18515-25595 CameraView com.rnvc I invokeOnAverageFpsChanged(0.0)
2024-04-25 17:37:50.577 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:50.596 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:50.612 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:50.628 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:50.645 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:50.662 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:50.678 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:50.695 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:50.712 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:50.728 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:50.744 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:50.761 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:50.779 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:50.796 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:50.811 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:50.829 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:51.565 18515-25595 CameraView com.rnvc I invokeOnAverageFpsChanged(0.0)
2024-04-25 17:37:52.157 18515-18515 ViewRootIm...nActivity] com.rnvc I ViewPostIme pointer 0
2024-04-25 17:37:52.254 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:52.267 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:52.284 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:52.302 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:52.313 18515-18515 ViewRootIm...nActivity] com.rnvc I ViewPostIme pointer 1
2024-04-25 17:37:52.318 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:52.337 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:52.349 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:52.365 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:52.383 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:52.400 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:52.416 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:52.433 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:52.450 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:52.466 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:52.483 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:52.499 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:52.517 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:52.533 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:52.550 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:52.566 18515-25595 CameraView com.rnvc I invokeOnAverageFpsChanged(0.0)
2024-04-25 17:37:52.567 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:52.584 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:52.600 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:52.617 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:52.633 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:52.652 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:52.667 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:52.685 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:52.700 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:52.720 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:52.734 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:52.752 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:52.767 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:52.784 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:52.801 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:52.819 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:52.834 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:52.852 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:52.870 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:52.885 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:52.901 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:52.920 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:52.935 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:52.953 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:52.968 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:52.985 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:53.216 18515-18515 ViewRootIm...nActivity] com.rnvc I ViewPostIme pointer 0
2024-04-25 17:37:53.287 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:53.303 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:53.320 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:53.335 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:53.353 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:53.359 18515-18515 ViewRootIm...nActivity] com.rnvc I ViewPostIme pointer 1
2024-04-25 17:37:53.369 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:53.386 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:53.402 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:53.420 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:53.436 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:53.453 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:53.469 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:53.486 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:53.503 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:53.519 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:53.536 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:53.555 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:53.567 18515-25595 CameraView com.rnvc I invokeOnAverageFpsChanged(0.0)
2024-04-25 17:37:53.569 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:53.588 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:53.603 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:53.621 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:53.637 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:53.651 18515-18515 ViewRootIm...nActivity] com.rnvc I ViewPostIme pointer 0
2024-04-25 17:37:53.656 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:53.671 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:53.689 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:53.705 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:53.721 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:53.739 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:53.755 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:53.771 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:53.784 18515-18515 ViewRootIm...nActivity] com.rnvc I ViewPostIme pointer 1
2024-04-25 17:37:53.788 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:53.804 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:53.821 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:53.837 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:53.853 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:53.871 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:53.888 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:53.904 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:53.922 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:53.937 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:53.956 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:53.971 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:53.988 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:54.005 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:54.021 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:54.038 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:54.055 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:54.072 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:54.088 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:54.105 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:54.121 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:54.138 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:54.155 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:54.170 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:54.188 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:54.204 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:54.221 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:54.240 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:54.256 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:54.271 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:54.288 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:54.305 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:54.322 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:54.338 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:54.355 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:54.371 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:54.388 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:54.404 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:54.422 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:54.438 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:54.455 18515-25530 OpenGLRenderer com.rnvc D mPreviousPosition == bounds[l=-212.00 t=72.00 r=1292.00 b=2076.00]
2024-04-25 17:37:54.566 18515-25595 CameraView com.rnvc I invokeOnAverageFpsChanged(0.0)
2024-04-25 17:37:55.567 18515-25595 CameraView com.rnvc I invokeOnAverageFpsChanged(0.0)
2024-04-25 17:37:56.567 18515-25595 CameraView com.rnvc I invokeOnAverageFpsChanged(0.0)
Camera Device
{
"formats": [],
"sensorOrientation": "landscape-left",
"hardwareLevel": "full",
"maxZoom": 8,
"minZoom": 1,
"maxExposure": 20,
"supportsLowLightBoost": false,
"neutralZoom": 1,
"physicalDevices": [
"wide-angle-camera"
],
"supportsFocus": true,
"supportsRawCapture": false,
"isMultiCam": false,
"minFocusDistance": 10,
"minExposure": -20,
"name": "0 (BACK) androidx.camera.camera2",
"hasFlash": true,
"hasTorch": true,
"position": "back",
"id": "0"
}
Device
Galaxy S9 - SM-G960F (Android 10, One UI 2.5)
VisionCamera Version
4.0.1
Can you reproduce this issue in the VisionCamera Example app?
No, I cannot reproduce the issue in the Example app
Additional information
- [ ] I am using Expo
- [ ] I have enabled Frame Processors (react-native-worklets-core)
- [X] I have read the Troubleshooting Guide
- [X] I agree to follow this project's Code of Conduct
- [X] I searched for similar issues in this repository and found none.
I am seeing the same behavior. Going from v2 to v4, I had to reverse landscape-left and landscape-right orientations on Android to yield the correct output.
Yea, maybe I messed something up. Landscape left means the home-button is on the left side, which clearly is correct in this video - but the image is inverted... I am probably doing something wrong here then.