1 Commits

Author SHA1 Message Date
Rui Rodrigues
031aa9d43a remove package from AndroidManifest.xml and update java version to 17 2024-08-21 17:02:04 +01:00
3 changed files with 3 additions and 37 deletions

View File

@@ -133,8 +133,8 @@ android {
} }
compileOptions { compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8 sourceCompatibility JavaVersion.VERSION_17
targetCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_17
} }
externalNativeBuild { externalNativeBuild {

View File

@@ -1,4 +1,3 @@
<manifest xmlns:android="http://schemas.android.com/apk/res/android" <manifest xmlns:android="http://schemas.android.com/apk/res/android">
package="com.mrousavy.camera">
</manifest> </manifest>

View File

@@ -18,8 +18,6 @@ extension CameraSession {
filePath: String, filePath: String,
onVideoRecorded: @escaping (_ video: Video) -> Void, onVideoRecorded: @escaping (_ video: Video) -> Void,
onError: @escaping (_ error: CameraError) -> Void) { onError: @escaping (_ error: CameraError) -> Void) {
lockCurrentExposure(for: captureSession)
// Run on Camera Queue // Run on Camera Queue
CameraQueues.cameraQueue.async { CameraQueues.cameraQueue.async {
let start = DispatchTime.now() let start = DispatchTime.now()
@@ -193,35 +191,4 @@ extension CameraSession {
} }
} }
} }
func lockCurrentExposure(for session: AVCaptureSession) {
guard let captureDevice = AVCaptureDevice.default(for: .video) else {
print("No capture device available")
return
}
do {
// Lock the device for configuration
try captureDevice.lockForConfiguration()
// Get the current exposure duration and ISO
let currentExposureDuration = captureDevice.exposureDuration
let currentISO = captureDevice.iso
// Check if the device supports custom exposure settings
if captureDevice.isExposureModeSupported(.custom) {
// Lock the current exposure and ISO by setting custom exposure mode
captureDevice.setExposureModeCustom(duration: currentExposureDuration, iso: currentISO, completionHandler: nil)
ReactLogger.log(level: .info, message: "Exposure and ISO locked at current values")
} else {
ReactLogger.log(level: .info, message:"Custom exposure mode not supported")
}
// Unlock the device after configuration
captureDevice.unlockForConfiguration()
} catch {
ReactLogger.log(level: .warning, message:"Error locking exposure: \(error)")
}
}
} }