summaryrefslogtreecommitdiffstats
path: root/src/com/android/camera/PhotoModule.java
diff options
context:
space:
mode:
authorSanjeev Garg <sangarg@codeaurora.org>2015-09-02 19:57:10 +0530
committerGerrit - the friendly Code Review server <code-review@localhost>2015-09-16 02:42:07 -0700
commite51e82617b631046af8e5f5035f53fc66dfb524d (patch)
treec06bb2ba6ef00213d113a56060b5cb68392db21a /src/com/android/camera/PhotoModule.java
parent465c11e451e18b7f3e8109fdbbc56b866f7f8a56 (diff)
downloadandroid_packages_apps_Snap-e51e82617b631046af8e5f5035f53fc66dfb524d.tar.gz
android_packages_apps_Snap-e51e82617b631046af8e5f5035f53fc66dfb524d.tar.bz2
android_packages_apps_Snap-e51e82617b631046af8e5f5035f53fc66dfb524d.zip
SnapdragonCamera: Adding support for any number of cameras in app.
At present the SnapdragonCamera App can support maximum of 2 cameras. Generalizing SnapdragonCamera App to support any number of cameras exposed to the application. Note - If number of cameras supported is greater than 2 then we need to add corresponding entries in media_profiles.xml so that recording can work fine on more than 2 cameras supported. Change-Id: Ic20667e29e0541d71c764bfd51a9c7a4d2ea83cd
Diffstat (limited to 'src/com/android/camera/PhotoModule.java')
-rw-r--r--src/com/android/camera/PhotoModule.java58
1 files changed, 34 insertions, 24 deletions
diff --git a/src/com/android/camera/PhotoModule.java b/src/com/android/camera/PhotoModule.java
index b7a38dd09..62b043d17 100644
--- a/src/com/android/camera/PhotoModule.java
+++ b/src/com/android/camera/PhotoModule.java
@@ -1865,34 +1865,38 @@ public class PhotoModule
mPreferenceGroup = settings.getPreferenceGroup(R.xml.camera_preferences);
int numOfCams = Camera.getNumberOfCameras();
- int backCamId = CameraHolder.instance().getBackCameraId();
- int frontCamId = CameraHolder.instance().getFrontCameraId();
- // We need to swap the list preference contents if back camera and front camera
- // IDs are not 0 and 1 respectively
- if ((numOfCams == 2) && ((backCamId != CameraInfo.CAMERA_FACING_BACK)
- || (frontCamId != CameraInfo.CAMERA_FACING_FRONT))) {
- Log.e(TAG,"loadCameraPreferences() updating camera_id pref");
- IconListPreference switchIconPref =
- (IconListPreference)mPreferenceGroup.findPreference(
- CameraSettings.KEY_CAMERA_ID);
+ Log.e(TAG,"loadCameraPreferences() updating camera_id pref");
- int[] iconIds = {R.drawable.ic_switch_front, R.drawable.ic_switch_back};
- switchIconPref.setIconIds(iconIds);
+ int[] iconIds = new int[numOfCams];
+ String[] entries = new String[numOfCams];
+ String[] labels = new String[numOfCams];
+ int[] largeIconIds = new int[numOfCams];
- String[] entries = {mActivity.getResources().getString(
- R.string.pref_camera_id_entry_front), mActivity.getResources().
- getString(R.string.pref_camera_id_entry_back)};
- switchIconPref.setEntries(entries);
+ for(int i=0;i<numOfCams;i++) {
+ CameraInfo info = CameraHolder.instance().getCameraInfo()[i];
+ if(info.facing == CameraInfo.CAMERA_FACING_BACK) {
+ iconIds[i] = R.drawable.ic_switch_back;
+ entries[i] = mActivity.getResources().getString(R.string.pref_camera_id_entry_back);
+ labels[i] = mActivity.getResources().getString(R.string.pref_camera_id_label_back);
+ largeIconIds[i] = R.drawable.ic_switch_back;
+ } else {
+ iconIds[i] = R.drawable.ic_switch_front;
+ entries[i] = mActivity.getResources().getString(R.string.pref_camera_id_entry_front);
+ labels[i] = mActivity.getResources().getString(R.string.pref_camera_id_label_front);
+ largeIconIds[i] = R.drawable.ic_switch_front;
+ }
+ }
- String[] labels = {mActivity.getResources().getString(
- R.string.pref_camera_id_label_front), mActivity.getResources().
- getString(R.string.pref_camera_id_label_back)};
- switchIconPref.setLabels(labels);
+ IconListPreference switchIconPref =
+ (IconListPreference)mPreferenceGroup.findPreference(
+ CameraSettings.KEY_CAMERA_ID);
+
+ switchIconPref.setIconIds(iconIds);
+ switchIconPref.setEntries(entries);
+ switchIconPref.setLabels(labels);
+ switchIconPref.setLargeIconIds(largeIconIds);
- int[] largeIconIds = {R.drawable.ic_switch_front, R.drawable.ic_switch_back};
- switchIconPref.setLargeIconIds(largeIconIds);
- }
}
@Override
@@ -3565,8 +3569,14 @@ public class PhotoModule
}
// Set JPEG quality.
- int jpegQuality = CameraProfile.getJpegEncodingQualityParameter(mCameraId,
+ int jpegQuality;
+ if(mCameraId>1) {
+ jpegQuality=95; //Temproray Solution for camera ids greater than 1. Proper fix TBD.
+ } else {
+ jpegQuality = CameraProfile.getJpegEncodingQualityParameter(mCameraId,
CameraProfile.QUALITY_HIGH);
+ }
+
mParameters.setJpegQuality(jpegQuality);
// For the following settings, we need to check if the settings are