From 99d023c3663b4711cbbf6b313cf88a59f2422d73 Mon Sep 17 00:00:00 2001 From: Suneet Agrawal Date: Mon, 15 Jul 2019 17:45:01 +0700 Subject: [PATCH] updated review comments for video recording callback --- .../cameraview/engine/MockCameraEngine.java | 2 +- .../cameraview/video/VideoRecorderTest.java | 6 ++---- .../com/otaliastudios/cameraview/CameraListener.java | 7 +++---- .../java/com/otaliastudios/cameraview/CameraView.java | 6 +++--- .../cameraview/engine/Camera1Engine.java | 5 ----- .../cameraview/engine/Camera2Engine.java | 5 ----- .../otaliastudios/cameraview/engine/CameraEngine.java | 11 ++++++++++- .../cameraview/video/FullVideoRecorder.java | 2 +- .../cameraview/video/SnapshotVideoRecorder.java | 2 +- .../otaliastudios/cameraview/video/VideoRecorder.java | 6 +++--- demo/release/output.json | 1 + docs/_posts/2018-12-20-camera-events.md | 2 ++ 12 files changed, 27 insertions(+), 28 deletions(-) create mode 100644 demo/release/output.json diff --git a/cameraview/src/androidTest/java/com/otaliastudios/cameraview/engine/MockCameraEngine.java b/cameraview/src/androidTest/java/com/otaliastudios/cameraview/engine/MockCameraEngine.java index 735ff80f..770d4b95 100644 --- a/cameraview/src/androidTest/java/com/otaliastudios/cameraview/engine/MockCameraEngine.java +++ b/cameraview/src/androidTest/java/com/otaliastudios/cameraview/engine/MockCameraEngine.java @@ -179,7 +179,7 @@ public class MockCameraEngine extends CameraEngine { } @Override - public void onActualVideoRecordingStarted() { + public void onVideoRecordingStart() { } } diff --git a/cameraview/src/androidTest/java/com/otaliastudios/cameraview/video/VideoRecorderTest.java b/cameraview/src/androidTest/java/com/otaliastudios/cameraview/video/VideoRecorderTest.java index 3ef47499..c8300f0c 100644 --- a/cameraview/src/androidTest/java/com/otaliastudios/cameraview/video/VideoRecorderTest.java +++ b/cameraview/src/androidTest/java/com/otaliastudios/cameraview/video/VideoRecorderTest.java @@ -2,9 +2,7 @@ package com.otaliastudios.cameraview.video; import com.otaliastudios.cameraview.BaseTest; -import com.otaliastudios.cameraview.PictureResult; import com.otaliastudios.cameraview.VideoResult; -import com.otaliastudios.cameraview.video.VideoRecorder; import androidx.test.ext.junit.runners.AndroidJUnit4; import androidx.test.filters.SmallTest; @@ -29,7 +27,7 @@ public class VideoRecorderTest extends BaseTest { VideoRecorder.VideoResultListener listener = Mockito.mock(VideoRecorder.VideoResultListener.class); VideoRecorder recorder = new VideoRecorder(listener) { @Override - protected void onStart() { dispatchActualVideoRecordingStarted(); } + protected void onStart() { dispatchVideoRecordingStart(); } @Override protected void onStop() { @@ -38,7 +36,7 @@ public class VideoRecorderTest extends BaseTest { }; recorder.start(result); Mockito.verify(listener,Mockito.times(1) ) - .onActualVideoRecordingStarted(); + .onVideoRecordingStart(); recorder.stop(); Mockito.verify(listener, Mockito.times(1)) .onVideoResult(result, null); diff --git a/cameraview/src/main/java/com/otaliastudios/cameraview/CameraListener.java b/cameraview/src/main/java/com/otaliastudios/cameraview/CameraListener.java index e15a8d08..ab4ec2ce 100644 --- a/cameraview/src/main/java/com/otaliastudios/cameraview/CameraListener.java +++ b/cameraview/src/main/java/com/otaliastudios/cameraview/CameraListener.java @@ -130,12 +130,11 @@ public abstract class CameraListener { /** * Notifies that the actual video recording has started - * When we request for video recording, it doesn't start the recording the immediately. - * Instead it checks for hardware availability first and later on available, - * it sets all the config and then start the actual recording. + * This is the time when actual frames recording starts. + * This can be used to show some indicator while the actual video recording. */ @UiThread - public void onActualVideoRecordingStarted() { + public void onVideoRecordingStart() { } diff --git a/cameraview/src/main/java/com/otaliastudios/cameraview/CameraView.java b/cameraview/src/main/java/com/otaliastudios/cameraview/CameraView.java index 1f4e3bd5..f364bff2 100644 --- a/cameraview/src/main/java/com/otaliastudios/cameraview/CameraView.java +++ b/cameraview/src/main/java/com/otaliastudios/cameraview/CameraView.java @@ -2064,13 +2064,13 @@ public class CameraView extends FrameLayout implements LifecycleObserver { } @Override - public void onActualVideoRecordingStarted() { - mLogger.i("onActualVideoRecordingStarted", "onActualVideoRecordingStarted"); + public void onVideoRecordingStart() { + mLogger.i("onVideoRecordingStart", "onVideoRecordingStart"); mUiHandler.post(new Runnable() { @Override public void run() { for (CameraListener listener : mListeners) { - listener.onActualVideoRecordingStarted(); + listener.onVideoRecordingStart(); } } }); diff --git a/cameraview/src/main/java/com/otaliastudios/cameraview/engine/Camera1Engine.java b/cameraview/src/main/java/com/otaliastudios/cameraview/engine/Camera1Engine.java index 9d910fd6..0efad6b2 100644 --- a/cameraview/src/main/java/com/otaliastudios/cameraview/engine/Camera1Engine.java +++ b/cameraview/src/main/java/com/otaliastudios/cameraview/engine/Camera1Engine.java @@ -375,11 +375,6 @@ public class Camera1Engine extends CameraEngine implements } } - @Override - public void onActualVideoRecordingStarted() { - mCallback.onActualVideoRecordingStarted(); - } - //endregion //region Parameters diff --git a/cameraview/src/main/java/com/otaliastudios/cameraview/engine/Camera2Engine.java b/cameraview/src/main/java/com/otaliastudios/cameraview/engine/Camera2Engine.java index 4653748e..306954a3 100644 --- a/cameraview/src/main/java/com/otaliastudios/cameraview/engine/Camera2Engine.java +++ b/cameraview/src/main/java/com/otaliastudios/cameraview/engine/Camera2Engine.java @@ -726,11 +726,6 @@ public class Camera2Engine extends CameraEngine implements ImageReader.OnImageAv } } - @Override - public void onActualVideoRecordingStarted() { - mCallback.onActualVideoRecordingStarted(); - } - //endregion //region Parameters diff --git a/cameraview/src/main/java/com/otaliastudios/cameraview/engine/CameraEngine.java b/cameraview/src/main/java/com/otaliastudios/cameraview/engine/CameraEngine.java index 48606262..04ca01a0 100644 --- a/cameraview/src/main/java/com/otaliastudios/cameraview/engine/CameraEngine.java +++ b/cameraview/src/main/java/com/otaliastudios/cameraview/engine/CameraEngine.java @@ -134,7 +134,7 @@ public abstract class CameraEngine implements void dispatchOnExposureCorrectionChanged(float newValue, @NonNull float[] bounds, @Nullable PointF[] fingers); void dispatchFrame(Frame frame); void dispatchError(CameraException exception); - void onActualVideoRecordingStarted(); + void onVideoRecordingStart(); } private static final String TAG = CameraEngine.class.getSimpleName(); @@ -1383,4 +1383,13 @@ public abstract class CameraEngine implements } //endregion + + //region callbacks + + @Override + public void onVideoRecordingStart() { + mCallback.onVideoRecordingStart(); + } + + //endregion } diff --git a/cameraview/src/main/java/com/otaliastudios/cameraview/video/FullVideoRecorder.java b/cameraview/src/main/java/com/otaliastudios/cameraview/video/FullVideoRecorder.java index fc253c56..77fd4e19 100644 --- a/cameraview/src/main/java/com/otaliastudios/cameraview/video/FullVideoRecorder.java +++ b/cameraview/src/main/java/com/otaliastudios/cameraview/video/FullVideoRecorder.java @@ -130,7 +130,7 @@ public abstract class FullVideoRecorder extends VideoRecorder { try { mMediaRecorder.start(); - dispatchActualVideoRecordingStarted(); + dispatchVideoRecordingStart(); } catch (Exception e) { LOG.w("start:", "Error while starting media recorder.", e); mResult = null; diff --git a/cameraview/src/main/java/com/otaliastudios/cameraview/video/SnapshotVideoRecorder.java b/cameraview/src/main/java/com/otaliastudios/cameraview/video/SnapshotVideoRecorder.java index 10f05994..83eab2dd 100644 --- a/cameraview/src/main/java/com/otaliastudios/cameraview/video/SnapshotVideoRecorder.java +++ b/cameraview/src/main/java/com/otaliastudios/cameraview/video/SnapshotVideoRecorder.java @@ -60,7 +60,7 @@ public class SnapshotVideoRecorder extends VideoRecorder implements RendererFram mPreview.addRendererFrameCallback(this); mFlipped = mEngine.getAngles().flip(Reference.SENSOR, Reference.VIEW); mDesiredState = STATE_RECORDING; - dispatchActualVideoRecordingStarted(); + dispatchVideoRecordingStart(); } @Override diff --git a/cameraview/src/main/java/com/otaliastudios/cameraview/video/VideoRecorder.java b/cameraview/src/main/java/com/otaliastudios/cameraview/video/VideoRecorder.java index 79f4db38..37c61be6 100644 --- a/cameraview/src/main/java/com/otaliastudios/cameraview/video/VideoRecorder.java +++ b/cameraview/src/main/java/com/otaliastudios/cameraview/video/VideoRecorder.java @@ -28,7 +28,7 @@ public abstract class VideoRecorder { /** * The callback for the actual video recording starting. */ - void onActualVideoRecordingStarted(); + void onVideoRecordingStart(); } @VisibleForTesting(otherwise = VisibleForTesting.PROTECTED) VideoResult.Stub mResult; @@ -96,9 +96,9 @@ public abstract class VideoRecorder { */ @SuppressWarnings("WeakerAccess") @CallSuper - protected void dispatchActualVideoRecordingStarted(){ + protected void dispatchVideoRecordingStart(){ if(mListener != null){ - mListener.onActualVideoRecordingStarted(); + mListener.onVideoRecordingStart(); } } } diff --git a/demo/release/output.json b/demo/release/output.json new file mode 100644 index 00000000..509b1ed8 --- /dev/null +++ b/demo/release/output.json @@ -0,0 +1 @@ +[{"outputType":{"type":"APK"},"apkData":{"type":"MAIN","splits":[],"versionCode":1,"versionName":"1.0","enabled":true,"outputFile":"demo-release.apk","fullName":"release","baseName":"release"},"path":"demo-release.apk","properties":{}}] \ No newline at end of file diff --git a/docs/_posts/2018-12-20-camera-events.md b/docs/_posts/2018-12-20-camera-events.md index f0ec6147..0f83728f 100644 --- a/docs/_posts/2018-12-20-camera-events.md +++ b/docs/_posts/2018-12-20-camera-events.md @@ -37,6 +37,8 @@ camera.addCameraListener(new CameraListener() { public void onZoomChanged(float newValue, float[] bounds, PointF[] fingers) {} public void onExposureCorrectionChanged(float newValue, float[] bounds, PointF[] fingers) {} + + public void onVideoRecordingStart() {} }); ```