Title: [218246] trunk/Source/WebCore
Revision
218246
Author
[email protected]
Date
2017-06-14 00:04:06 -0700 (Wed, 14 Jun 2017)

Log Message

[MediaStream iOS] Back camera view rendered upside down when in portrait mode
https://bugs.webkit.org/show_bug.cgi?id=173346
<rdar://problem/32713675>

Reviewed by Youenn Fablet.

* platform/mediastream/mac/AVVideoCaptureSource.mm:
(WebCore::AVVideoCaptureSource::computeSampleRotation): Use different rotations for front and
back cameras when device is in portrait orientation.

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (218245 => 218246)


--- trunk/Source/WebCore/ChangeLog	2017-06-14 06:59:52 UTC (rev 218245)
+++ trunk/Source/WebCore/ChangeLog	2017-06-14 07:04:06 UTC (rev 218246)
@@ -1,3 +1,15 @@
+2017-06-14  Eric Carlson  <[email protected]>
+
+        [MediaStream iOS] Back camera view rendered upside down when in portrait mode
+        https://bugs.webkit.org/show_bug.cgi?id=173346
+        <rdar://problem/32713675>
+
+        Reviewed by Youenn Fablet.
+
+        * platform/mediastream/mac/AVVideoCaptureSource.mm:
+        (WebCore::AVVideoCaptureSource::computeSampleRotation): Use different rotations for front and
+        back cameras when device is in portrait orientation.
+
 2017-06-13  Chris Dumez  <[email protected]>
 
         Event handlers should not be called in frameless documents

Modified: trunk/Source/WebCore/platform/mediastream/mac/AVVideoCaptureSource.mm (218245 => 218246)


--- trunk/Source/WebCore/platform/mediastream/mac/AVVideoCaptureSource.mm	2017-06-14 06:59:52 UTC (rev 218245)
+++ trunk/Source/WebCore/platform/mediastream/mac/AVVideoCaptureSource.mm	2017-06-14 07:04:06 UTC (rev 218246)
@@ -496,6 +496,7 @@
 
 void AVVideoCaptureSource::computeSampleRotation()
 {
+    bool frontCamera = [device() position] == AVCaptureDevicePositionFront;
     switch (m_sensorOrientation - m_deviceOrientation) {
     case 0:
         m_sampleRotation = MediaSample::VideoRotation::None;
@@ -505,11 +506,11 @@
         m_sampleRotation = MediaSample::VideoRotation::UpsideDown;
         break;
     case 90:
-        m_sampleRotation = MediaSample::VideoRotation::Left;
+        m_sampleRotation = frontCamera ? MediaSample::VideoRotation::Left : MediaSample::VideoRotation::Right;
         break;
     case -90:
     case -270:
-        m_sampleRotation = MediaSample::VideoRotation::Right;
+        m_sampleRotation = frontCamera ? MediaSample::VideoRotation::Right : MediaSample::VideoRotation::Left;
         break;
     default:
         ASSERT_NOT_REACHED();
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to