Send onInitialized event only if device changed

This commit is contained in:
Marc Rousavy 2023-10-24 11:59:22 +02:00
parent de0d6cda5d
commit 0bc3ee12bf
No known key found for this signature in database
GPG Key ID: 8B9C709EA0B16A6D
3 changed files with 10 additions and 2 deletions

View File

@ -142,6 +142,11 @@ class CameraSession(private val context: Context, private val cameraManager: Cam
Log.i(TAG, "Successfully updated CameraSession Configuration! isActive: ${config.isActive}")
this.configuration = config
// Notify about Camera initialization
if (diff.deviceChanged) {
callback.onInitialized()
}
} catch (error: Throwable) {
Log.e(TAG, "Failed to configure CameraSession! Error: ${error.message}, Config-Diff: $diff", error)
callback.onError(error)
@ -351,7 +356,6 @@ class CameraSession(private val context: Context, private val cameraManager: Cam
}, CameraQueues.cameraQueue)
Log.i(TAG, "Successfully configured Session with ${outputs.size} outputs for Camera #${cameraDevice.id}!")
callback.onInitialized()
// Update Frame Processor and RecordingSession for newly changed output
updateVideoOutputs()

View File

@ -153,7 +153,6 @@ extension CameraSession {
// Done!
ReactLogger.log(level: .info, message: "Successfully configured all outputs!")
delegate?.onSessionInitialized()
}
// pragma MARK: Orientation

View File

@ -160,6 +160,11 @@ class CameraSession: NSObject, AVCaptureVideoDataOutputSampleBufferDelegate, AVC
// Update successful, set the new configuration!
self.configuration = config
// Notify about Camera initialization
if difference.inputChanged {
delegate?.onSessionInitialized()
}
} catch {
self.onConfigureError(error)
}