diff --git a/package/android/src/main/java/com/mrousavy/camera/core/CameraSession.kt b/package/android/src/main/java/com/mrousavy/camera/core/CameraSession.kt index 58509e8..8cb3288 100644 --- a/package/android/src/main/java/com/mrousavy/camera/core/CameraSession.kt +++ b/package/android/src/main/java/com/mrousavy/camera/core/CameraSession.kt @@ -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() diff --git a/package/ios/Core/CameraSession+Configuration.swift b/package/ios/Core/CameraSession+Configuration.swift index 1f43d7d..c207a8d 100644 --- a/package/ios/Core/CameraSession+Configuration.swift +++ b/package/ios/Core/CameraSession+Configuration.swift @@ -153,7 +153,6 @@ extension CameraSession { // Done! ReactLogger.log(level: .info, message: "Successfully configured all outputs!") - delegate?.onSessionInitialized() } // pragma MARK: Orientation diff --git a/package/ios/Core/CameraSession.swift b/package/ios/Core/CameraSession.swift index aa93bfb..ced606e 100644 --- a/package/ios/Core/CameraSession.swift +++ b/package/ios/Core/CameraSession.swift @@ -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) }