diff options
Diffstat (limited to 'domain/camera')
4 files changed, 57 insertions, 30 deletions
diff --git a/domain/camera/Android.bp b/domain/camera/Android.bp new file mode 100644 index 0000000..b22d7e4 --- /dev/null +++ b/domain/camera/Android.bp @@ -0,0 +1,25 @@ +package { + default_applicable_licenses: [ + "Android-Apache-2.0", + ], +} + +android_library { + name: "jetpack-camera-app_domain_camera", + srcs: ["src/main/**/*.kt"], + static_libs: [ + "androidx.concurrent_concurrent-futures-ktx", + "hilt_android", + "androidx.camera_camera-core", + "androidx.camera_camera-viewfinder", + "androidx.camera_camera-camera2", + "androidx.camera_camera-lifecycle", + "androidx.camera_camera-extensions", + "jetpack-camera-app_data_settings", + "jetpack-camera-app_core_common", + ], + sdk_version: "34", + min_sdk_version: "21", + manifest:"src/main/AndroidManifest.xml" +} + diff --git a/domain/camera/src/main/AndroidManifest.xml b/domain/camera/src/main/AndroidManifest.xml index 1e7c244..2aa7dee 100644 --- a/domain/camera/src/main/AndroidManifest.xml +++ b/domain/camera/src/main/AndroidManifest.xml @@ -14,6 +14,7 @@ ~ See the License for the specific language governing permissions and ~ limitations under the License. --> -<manifest xmlns:android="http://schemas.android.com/apk/res/android"> +<manifest xmlns:android="http://schemas.android.com/apk/res/android" + package="com.google.jetpackcamera.domain.camera"> -</manifest>
\ No newline at end of file +</manifest> diff --git a/domain/camera/src/main/java/com/google/jetpackcamera/domain/camera/CameraXCameraUseCase.kt b/domain/camera/src/main/java/com/google/jetpackcamera/domain/camera/CameraXCameraUseCase.kt index 556e778..e04bdd9 100644 --- a/domain/camera/src/main/java/com/google/jetpackcamera/domain/camera/CameraXCameraUseCase.kt +++ b/domain/camera/src/main/java/com/google/jetpackcamera/domain/camera/CameraXCameraUseCase.kt @@ -33,10 +33,10 @@ import androidx.camera.core.UseCaseGroup import androidx.camera.core.ViewPort import androidx.camera.core.ZoomState import androidx.camera.lifecycle.ProcessCameraProvider -import androidx.camera.video.MediaStoreOutputOptions -import androidx.camera.video.Recorder -import androidx.camera.video.Recording -import androidx.camera.video.VideoCapture +//import androidx.camera.video.MediaStoreOutputOptions +//import androidx.camera.video.Recorder +//import androidx.camera.video.Recording +//import androidx.camera.video.VideoCapture import androidx.concurrent.futures.await import androidx.core.content.ContextCompat import com.google.jetpackcamera.domain.camera.CameraUseCase.Companion.INVALID_ZOOM_SCALE @@ -71,11 +71,11 @@ constructor( // TODO apply flash from settings private val imageCaptureUseCase = ImageCapture.Builder().build() - private val recorder = Recorder.Builder().setExecutor( - defaultDispatcher.asExecutor() - ).build() - private val videoCaptureUseCase = VideoCapture.withOutput(recorder) - private var recording: Recording? = null +// private val recorder = Recorder.Builder().setExecutor( +// defaultDispatcher.asExecutor() +// ).build() +// private val videoCaptureUseCase = VideoCapture.withOutput(recorder) +// private var recording: Recording? = null private lateinit var previewUseCase: Preview private lateinit var useCaseGroup: UseCaseGroup @@ -161,27 +161,27 @@ constructor( ContentValues().apply { put(MediaStore.Video.Media.DISPLAY_NAME, name) } - val mediaStoreOutput = - MediaStoreOutputOptions.Builder( - application.contentResolver, - MediaStore.Video.Media.EXTERNAL_CONTENT_URI - ) - .setContentValues(contentValues) - .build() - - recording = - videoCaptureUseCase.output - .prepareRecording(application, mediaStoreOutput) - .start(ContextCompat.getMainExecutor(application)) { videoRecordEvent -> - run { - Log.d(TAG, videoRecordEvent.toString()) - } - } +// val mediaStoreOutput = +// MediaStoreOutputOptions.Builder( +// application.contentResolver, +// MediaStore.Video.Media.EXTERNAL_CONTENT_URI +// ) +// .setContentValues(contentValues) +// .build() + +// recording = +// videoCaptureUseCase.output +// .prepareRecording(application, mediaStoreOutput) +// .start(ContextCompat.getMainExecutor(application)) { videoRecordEvent -> +// run { +// Log.d(TAG, videoRecordEvent.toString()) +// } +// } } override fun stopVideoRecording() { Log.d(TAG, "stopRecording") - recording?.stop() +// recording?.stop() } override fun setZoomScale(scale: Float): Float { @@ -267,7 +267,7 @@ constructor( ) .addUseCase(previewUseCase) .addUseCase(imageCaptureUseCase) - .addUseCase(videoCaptureUseCase) +// .addUseCase(videoCaptureUseCase) if (captureMode == CaptureMode.SINGLE_STREAM) { useCaseGroupBuilder.addEffect(SingleSurfaceForcingEffect()) @@ -320,3 +320,4 @@ constructor( else -> throw IllegalArgumentException("Invalid lens facing type: $lensFacing") } } + diff --git a/domain/camera/src/main/java/com/google/jetpackcamera/domain/camera/CoroutineCameraProvider.kt b/domain/camera/src/main/java/com/google/jetpackcamera/domain/camera/CoroutineCameraProvider.kt index a056ec0..e55ae35 100644 --- a/domain/camera/src/main/java/com/google/jetpackcamera/domain/camera/CoroutineCameraProvider.kt +++ b/domain/camera/src/main/java/com/google/jetpackcamera/domain/camera/CoroutineCameraProvider.kt @@ -71,5 +71,5 @@ private class CoroutineLifecycleOwner(coroutineContext: CoroutineContext) : } } - override fun getLifecycle() = lifecycleRegistry + override public val lifecycle: Lifecycle = lifecycleRegistry } |