[camera] Taking photo with back camera inverts view

Bug #1169352 reported by Sergio Schvezov
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
camera-app
Fix Released
High
Günter Schwann

Bug Description

HARDWARE=manta
JENKINS_BUILD=80
UBUNTU=manhattan-quantal-armhf-20130415-0

Steps to reproduce:
- Open camera app
- Snap photo

Expected result:
- Rotation works

Actual result:
- In portrait rotation is correct
- In landscape rotation is inverted.

Tags: iso-testing

Related branches

Revision history for this message
Ricardo Salveti (rsalveti) wrote :

I can confirm that it inverts the preview after taking a picture.

Changed in phablet-tools:
status: New → Confirmed
importance: Undecided → High
affects: phablet-tools → touch-preview-images
Changed in touch-preview-images:
assignee: nobody → Günter Schwann (schwann)
Revision history for this message
Günter Schwann (schwann) wrote :

It works using the MWC demo build.
But is broken in the build #36 (which is the oldest one I found)

Changed in touch-preview-images:
status: Confirmed → In Progress
Revision history for this message
Günter Schwann (schwann) wrote :

On the Nexus 10, there is a crash on the android side.
When the camera backend gets restarted in that case (as workaround) the preview texture transformation matrix (set on android side) is flipped in Y direction.

Revision history for this message
Günter Schwann (schwann) wrote :

After the restart, logcat shows the following

E/SurfaceTexture( 1352): [unnamed-774-1] updateTexImage: error binding external texture image 0x83c35c (slot 2): 0x502
E/SurfaceTexture( 1352): [unnamed-774-1] updateTexImage: error binding external texture image 0x8a8404 (slot 3): 0x502
E/SurfaceTexture( 1352): [unnamed-774-1] updateTexImage: error binding external texture image 0x8a8094 (slot 4): 0x502
E/SurfaceTexture( 1352): [unnamed-774-1] updateTexImage: error binding external texture image 0x8b79dc (slot 5): 0x502
E/SurfaceTexture( 1352): [unnamed-774-1] updateTexImage: error binding external texture image 0x87d6c4 (slot 6): 0x502
E/SurfaceTexture( 1352): [unnamed-774-1] updateTexImage: error binding external texture image 0x8b7b04 (slot 7): 0x502
E/SurfaceTexture( 1352): [unnamed-774-1] updateTexImage: error binding external texture image 0x835e24 (slot 0): 0x502
E/SurfaceTexture( 1352): [unnamed-774-1] updateTexImage: error binding external texture image 0x82c57c (slot 1): 0x502
E/SurfaceTexture( 1352): [unnamed-774-1] updateTexImage: error binding external texture image 0x83c35c (slot 2): 0x502
...

Revision history for this message
Sergio Schvezov (sergiusens) wrote :

That's an interesting find, I do recall Jim making a fix to restart the whole thing as a workaround because of this crash now that you mention this.

Revision history for this message
Ubuntu QA Website (ubuntuqa) wrote :

This bug has been reported on the Ubuntu ISO testing tracker.

A list of all reports related to this bug can be found here:
http://iso.qa.ubuntu.com/qatracker/reports/bugs/1169352

tags: added: iso-testing
Revision history for this message
Sergio Schvezov (sergiusens) wrote :
Revision history for this message
Günter Schwann (schwann) wrote :

The crash is causes by a call to "releaseRecordingFrame()".
For the Nexus 10 in the the hardware/samsung_slsi/exynos5, the libcamera2 is used. Not the libcamera.
Android 4.2 was released with a new Camera Hardware Abstraction Layer (HAL) Camera 2.0.

The new Camera 2.0 API does not have the "releaseRecordingFrame()".

I'm now trying to change the android build to test that ...

affects: touch-preview-images → camera-app
Changed in camera-app:
status: In Progress → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.