summaryrefslogtreecommitdiffstats
path: root/src/com/android/camera/SettingsManager.java
diff options
context:
space:
mode:
authorJay Wang <jaywang@codeaurora.org>2016-09-02 15:17:27 -0700
committerJay Wang <jaywang@codeaurora.org>2016-09-27 10:35:50 -0700
commita0277902bc24ab9c14bbf227e95d18e486b2310b (patch)
tree022524826c8f3568620068cebd604f31ae7f3111 /src/com/android/camera/SettingsManager.java
parent94df9e6541dd5b303477e7cf0709efccfa4af4b7 (diff)
downloadandroid_packages_apps_Snap-a0277902bc24ab9c14bbf227e95d18e486b2310b.tar.gz
android_packages_apps_Snap-a0277902bc24ab9c14bbf227e95d18e486b2310b.tar.bz2
android_packages_apps_Snap-a0277902bc24ab9c14bbf227e95d18e486b2310b.zip
SnapdragonCamera: Filter video size based on supported camcorder profile
Supported video size needs to be finalized by checking the supported camcorder profile. CRs-Fixed: 1066540 Change-Id: I131779263cfee229aa82a97453d7ba0402031717
Diffstat (limited to 'src/com/android/camera/SettingsManager.java')
-rw-r--r--src/com/android/camera/SettingsManager.java16
1 files changed, 14 insertions, 2 deletions
diff --git a/src/com/android/camera/SettingsManager.java b/src/com/android/camera/SettingsManager.java
index e2057660c..0c5f2edb2 100644
--- a/src/com/android/camera/SettingsManager.java
+++ b/src/com/android/camera/SettingsManager.java
@@ -39,6 +39,7 @@ import android.hardware.camera2.CameraManager;
import android.hardware.camera2.CameraMetadata;
import android.hardware.camera2.params.StreamConfigurationMap;
import android.media.MediaRecorder;
+import android.media.CamcorderProfile;
import android.util.Log;
import android.util.Range;
import android.util.Rational;
@@ -895,7 +896,13 @@ public class SettingsManager implements ListMenu.SettingsListener {
Size[] sizes = map.getOutputSizes(MediaRecorder.class);
List<String> res = new ArrayList<>();
for (int i = 0; i < sizes.length; i++) {
- res.add(sizes[i].toString());
+ if (CameraSettings.VIDEO_QUALITY_TABLE.containsKey(sizes[i].toString())) {
+ int profile = CameraSettings.VIDEO_QUALITY_TABLE.get(sizes[i].toString());
+
+ if (CamcorderProfile.hasProfile(cameraId, profile)) {
+ res.add(sizes[i].toString());
+ }
+ }
}
return res;
}
@@ -907,7 +914,12 @@ public class SettingsManager implements ListMenu.SettingsListener {
List<String> res = new ArrayList<>();
for (int i = 0; i < sizes.length; i++) {
if(sizes[i].getWidth() <= maxWidth && sizes[i].getHeight() <= maxHeight) {
- res.add(sizes[i].toString());
+ if (CameraSettings.VIDEO_QUALITY_TABLE.containsKey(sizes[i].toString())) {
+ int profile = CameraSettings.VIDEO_QUALITY_TABLE.get(sizes[i].toString());
+ if (CamcorderProfile.hasProfile(cameraId, profile)) {
+ res.add(sizes[i].toString());
+ }
+ }
}
}
return res;