diff options
author | Uma Mehta <umamehta@codeaurora.org> | 2016-07-04 10:55:04 +0530 |
---|---|---|
committer | Gerrit - the friendly Code Review server <code-review@localhost> | 2016-07-06 23:35:25 -0700 |
commit | eb2e874fbb1b28249b604fc150cfaa4bfb2cb315 (patch) | |
tree | b571172bfe46af88d1fc9aa456d3aa5c43eacf7d /src/com/android/camera/VideoModule.java | |
parent | de98a47425d6f9b1ee017829f99d61ad0620266f (diff) | |
download | android_packages_apps_Snap-eb2e874fbb1b28249b604fc150cfaa4bfb2cb315.tar.gz android_packages_apps_Snap-eb2e874fbb1b28249b604fc150cfaa4bfb2cb315.tar.bz2 android_packages_apps_Snap-eb2e874fbb1b28249b604fc150cfaa4bfb2cb315.zip |
SnapdragonCamera: Use resume/start based on the SDK version
For camcorder to resume after pause use mediarecorder's resume()
API in N and later versions and for the rest of older versions
call start() API
Change-Id: I01e761215c31e03c87b98149f13cd5c3f2482d05
Diffstat (limited to 'src/com/android/camera/VideoModule.java')
-rwxr-xr-x[-rw-r--r--] | src/com/android/camera/VideoModule.java | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/src/com/android/camera/VideoModule.java b/src/com/android/camera/VideoModule.java index 9cb48eb0f..9e3c47cb9 100644..100755 --- a/src/com/android/camera/VideoModule.java +++ b/src/com/android/camera/VideoModule.java @@ -79,6 +79,7 @@ import java.util.Date; import java.util.Iterator; import java.util.List; import java.util.HashMap; +import java.lang.reflect.Method; public class VideoModule implements CameraModule, VideoController, @@ -103,6 +104,9 @@ public class VideoModule implements CameraModule, private static final long SHUTTER_BUTTON_TIMEOUT = 0L; // 0ms + public static final boolean HAS_RESUME_SUPPORTED = + Build.VERSION.SDK_INT > Build.VERSION_CODES.M; + /** * An unpublished intent flag requesting to start recording straight away * and return as soon as recording is stopped. @@ -1930,7 +1934,16 @@ public class VideoModule implements CameraModule, mMediaRecorderPausing = false; mRecordingStartTime = SystemClock.uptimeMillis(); updateRecordingTime(); - mMediaRecorder.start(); + if (!HAS_RESUME_SUPPORTED){ + mMediaRecorder.start(); + } else { + try { + Method resumeRec = Class.forName("android.media.MediaRecorder").getMethod("resume"); + resumeRec.invoke(mMediaRecorder); + } catch (Exception e) { + Log.v(TAG, "resume method not implemented"); + } + } } private boolean stopVideoRecording() { |