Merge "Adding boolean to determine whether a surface is MultiResolution" into tm-qpr-dev am: 70c12a09b5
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/22102275 Change-Id: I8ffc96a19e2d8127bcb98705e2119bea7560b6ad Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
@@ -36,4 +36,5 @@ parcelable CameraOutputConfig
|
|||||||
int surfaceGroupId;
|
int surfaceGroupId;
|
||||||
String physicalCameraId;
|
String physicalCameraId;
|
||||||
List<CameraOutputConfig> sharedSurfaceConfigs;
|
List<CameraOutputConfig> sharedSurfaceConfigs;
|
||||||
|
boolean isMultiResolutionOutput;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -228,6 +228,9 @@ public final class CameraAdvancedExtensionSessionImpl extends CameraExtensionSes
|
|||||||
OutputConfiguration cameraOutput = new OutputConfiguration(output.surfaceGroupId,
|
OutputConfiguration cameraOutput = new OutputConfiguration(output.surfaceGroupId,
|
||||||
outputSurface);
|
outputSurface);
|
||||||
|
|
||||||
|
if (output.isMultiResolutionOutput) {
|
||||||
|
cameraOutput.setMultiResolutionOutput();
|
||||||
|
}
|
||||||
if ((output.sharedSurfaceConfigs != null) && !output.sharedSurfaceConfigs.isEmpty()) {
|
if ((output.sharedSurfaceConfigs != null) && !output.sharedSurfaceConfigs.isEmpty()) {
|
||||||
cameraOutput.enableSurfaceSharing();
|
cameraOutput.enableSurfaceSharing();
|
||||||
for (CameraOutputConfig sharedOutputConfig : output.sharedSurfaceConfigs) {
|
for (CameraOutputConfig sharedOutputConfig : output.sharedSurfaceConfigs) {
|
||||||
|
|||||||
@@ -421,7 +421,7 @@ public final class OutputConfiguration implements Parcelable {
|
|||||||
* call, or no non-negative group ID has been set.
|
* call, or no non-negative group ID has been set.
|
||||||
* @hide
|
* @hide
|
||||||
*/
|
*/
|
||||||
void setMultiResolutionOutput() {
|
public void setMultiResolutionOutput() {
|
||||||
if (mIsShared) {
|
if (mIsShared) {
|
||||||
throw new IllegalStateException("Multi-resolution output flag must not be set for " +
|
throw new IllegalStateException("Multi-resolution output flag must not be set for " +
|
||||||
"configuration with surface sharing");
|
"configuration with surface sharing");
|
||||||
|
|||||||
@@ -19,7 +19,6 @@ import android.app.Service;
|
|||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.content.Intent;
|
import android.content.Intent;
|
||||||
import android.content.pm.PackageManager;
|
import android.content.pm.PackageManager;
|
||||||
import android.graphics.Camera;
|
|
||||||
import android.graphics.GraphicBuffer;
|
import android.graphics.GraphicBuffer;
|
||||||
import android.graphics.Rect;
|
import android.graphics.Rect;
|
||||||
import android.hardware.HardwareBuffer;
|
import android.hardware.HardwareBuffer;
|
||||||
@@ -1855,6 +1854,7 @@ public class CameraExtensionsProxyService extends Service {
|
|||||||
ret.outputId.id = output.getId();
|
ret.outputId.id = output.getId();
|
||||||
ret.physicalCameraId = output.getPhysicalCameraId();
|
ret.physicalCameraId = output.getPhysicalCameraId();
|
||||||
ret.surfaceGroupId = output.getSurfaceGroupId();
|
ret.surfaceGroupId = output.getSurfaceGroupId();
|
||||||
|
ret.isMultiResolutionOutput = false;
|
||||||
if (output instanceof SurfaceOutputConfigImpl) {
|
if (output instanceof SurfaceOutputConfigImpl) {
|
||||||
SurfaceOutputConfigImpl surfaceConfig = (SurfaceOutputConfigImpl) output;
|
SurfaceOutputConfigImpl surfaceConfig = (SurfaceOutputConfigImpl) output;
|
||||||
ret.type = CameraOutputConfig.TYPE_SURFACE;
|
ret.type = CameraOutputConfig.TYPE_SURFACE;
|
||||||
@@ -1874,6 +1874,7 @@ public class CameraExtensionsProxyService extends Service {
|
|||||||
ret.type = CameraOutputConfig.TYPE_MULTIRES_IMAGEREADER;
|
ret.type = CameraOutputConfig.TYPE_MULTIRES_IMAGEREADER;
|
||||||
ret.imageFormat = multiResReaderConfig.getImageFormat();
|
ret.imageFormat = multiResReaderConfig.getImageFormat();
|
||||||
ret.capacity = multiResReaderConfig.getMaxImages();
|
ret.capacity = multiResReaderConfig.getMaxImages();
|
||||||
|
ret.isMultiResolutionOutput = true;
|
||||||
} else {
|
} else {
|
||||||
throw new IllegalStateException("Unknown output config type!");
|
throw new IllegalStateException("Unknown output config type!");
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user