diff --git a/core/java/android/hardware/camera2/legacy/RequestThreadManager.java b/core/java/android/hardware/camera2/legacy/RequestThreadManager.java index da62f5445daaf..e8f34cc0b593e 100644 --- a/core/java/android/hardware/camera2/legacy/RequestThreadManager.java +++ b/core/java/android/hardware/camera2/legacy/RequestThreadManager.java @@ -504,6 +504,15 @@ public class RequestThreadManager { previews.add(new Pair<>(p, previewSizeIter.next())); } mGLThreadManager.setConfigurationAndWait(previews, mCaptureCollector); + + for (Surface p : mPreviewOutputs) { + try { + LegacyCameraDevice.setSurfaceOrientation(p, facing, orientation); + } catch (LegacyExceptionUtils.BufferQueueAbandonedException e) { + Log.e(TAG, "Surface abandoned, skipping setSurfaceOrientation()", e); + } + } + mGLThreadManager.allowNewFrames(); mPreviewTexture = mGLThreadManager.getCurrentSurfaceTexture(); if (mPreviewTexture != null) {