Closed
Bug 1121769
Opened 9 years ago
Closed 9 years ago
[Camera] Pictures have the wrong size after switching from Camcorder after invoking the Task Manager
Categories
(Firefox OS Graveyard :: Gaia::Camera, defect)
Tracking
(blocking-b2g:2.2+, b2g-v2.1 unaffected, b2g-v2.2 verified, b2g-master verified)
Tracking | Status | |
---|---|---|
b2g-v2.1 | --- | unaffected |
b2g-v2.2 | --- | verified |
b2g-master | --- | verified |
People
(Reporter: pcheng, Assigned: mikeh)
References
Details
(Keywords: regression)
Attachments
(1 file, 2 obsolete files)
1.79 KB,
patch
|
aosmond
:
review+
bajaj
:
approval-mozilla-b2g37+
|
Details | Diff | Splinter Review |
Description: The camera takes pictures in 144x176 resolution after it was previously switched from Camcorder mode and returned from Task Manager. STR: 1) Launch Camera app 2) Switch to Camcorder mode 3) Long-press Home button to bring up Task Manager 4) Tap on the Camera screenshot to return to Camera app 5) Switch to normal camera mode and take some pictures Expected: Photos are taken correctly Actual: Photos are taken in mini sizes (144x176) instead of their normal 1536x2048 dimensions. Repro rate: 10/10 Video: https://www.youtube.com/watch?v=fge2mQt5mdY Attaching a logcat. Device: Flame 3.0 Master BuildID: 20150114010205 Gaia: e2a0f7c311119d4a8e160bdfb9e28a0e61a180fc Gecko: 63006936ab99 Gonk: a814b2e2dfdda7140cb3a357617dc4fbb1435e76 Version: 38.0a1 (3.0 Master) Firmware: V18D-1 User Agent: Mozilla/5.0 (Mobile; rv:38.0) Gecko/38.0 Firefox/38.0
Reporter | ||
Comment 1•9 years ago
|
||
Branch check: This issue reproduces on Flame 2.2. Following STR, camera takes pictures in wrong dimensions. Device: Flame (KK, full flash, 319MB mem) BuildID: 20150114002502 Gaia: 7c5b27cad370db377b18a742d3f3fdb0070e899f Gecko: 748b20315f75 Gonk: a814b2e2dfdda7140cb3a357617dc4fbb1435e76 Version: 37.0a2 (2.2) Firmware: V18D-1 User Agent: Mozilla/5.0 (Mobile; rv:37.0) Gecko/37.0 Firefox/37.0 ----- This issue does NOT reproduce on Flame 2.1. Following STR, camera takes pictures in correct dimensions. Device: Flame (KK, full flash, 319MB mem) BuildID: 20150114001300 Gaia: 6957ac8a322234ec99c8abb7cc18dc6a2e0176db Gecko: 6600eba54256 Gonk: a814b2e2dfdda7140cb3a357617dc4fbb1435e76 Version: 34.0 (2.1) Firmware: V18D-1 User Agent: Mozilla/5.0 (Mobile; rv:34.0) Gecko/34.0 Firefox/34.0
QA Whiteboard: [QAnalyst-Triage?]
status-b2g-v2.1:
--- → unaffected
status-b2g-v2.2:
--- → affected
status-b2g-master:
--- → affected
Flags: needinfo?(ktucker)
Keywords: regression
Comment 2•9 years ago
|
||
This could effect a lot of end user so nominating 2.2?
blocking-b2g: --- → 2.2?
QA Whiteboard: [QAnalyst-Triage?] → [QAnalyst-Triage+]
Flags: needinfo?(ktucker)
Keywords: regressionwindow-wanted
Reporter | ||
Updated•9 years ago
|
QA Whiteboard: [QAnalyst-Triage+]
QA Contact: pcheng
Reporter | ||
Comment 3•9 years ago
|
||
b2g-inbound regression window: Last Working Environmental Variables: Device: Flame BuildID: 20141217182050 Gaia: 7a865bd6163e9a0372861d27450b3434875ef5c1 Gecko: 655536bc9ccd Version: 37.0a1 (2.2 Master) Firmware: V18D-1 User Agent: Mozilla/5.0 (Mobile; rv:37.0) Gecko/37.0 Firefox/37.0 First Broken Environmental Variables: Device: Flame BuildID: 20141217184854 Gaia: 7a865bd6163e9a0372861d27450b3434875ef5c1 Gecko: bea91a0b4dfb Version: 37.0a1 (2.2 Master) Firmware: V18D-1 User Agent: Mozilla/5.0 (Mobile; rv:37.0) Gecko/37.0 Firefox/37.0 Gaia is the same so it's a Gecko issue. Gecko pushlog: http://hg.mozilla.org/integration/b2g-inbound/pushloghtml?fromchange=655536bc9ccd&tochange=bea91a0b4dfb Caused by patches to Bug 1104913.
QA Whiteboard: [QAnalyst-Triage?]
Component: Gaia::System::Window Mgmt → Gaia::Camera
Flags: needinfo?(ktucker)
Keywords: regressionwindow-wanted
Comment 4•9 years ago
|
||
Andrew, can you take a look at this issue please? Looks like this was caused by the work done on bug 1104913
QA Whiteboard: [QAnalyst-Triage?] → [QAnalyst-Triage+]
Flags: needinfo?(ktucker) → needinfo?(aosmond)
Updated•9 years ago
|
Flags: needinfo?(aosmond) → needinfo?(aosmond)
Comment 5•9 years ago
|
||
Blocking Reason: Regression/broken functionality
blocking-b2g: 2.2? → 2.2+
Flags: needinfo?(aosmond) → needinfo?(mhabicher)
Assignee | ||
Comment 6•9 years ago
|
||
Confirmed on http://hg.mozilla.org/integration/mozilla-inbound/rev/dbdbade50ffa (the last patch where the camera preview is working; see bug 1124139). /me takes.
Assignee: nobody → mhabicher
Status: NEW → ASSIGNED
Flags: needinfo?(mhabicher)
Assignee | ||
Updated•9 years ago
|
Summary: Camera takes pictures in wrong dimensions after switching from Camcorder and invoking Task Manager → [Camera] Pictures have the wrong size after switching from Camcorder after invoking the Task Manager
Assignee | ||
Comment 7•9 years ago
|
||
On flame: - default picture size: 176 x 144
Assignee | ||
Comment 8•9 years ago
|
||
After the mode change back to picture, it looks like something gets dropped: 01-21 13:18:51.281 4979 4979 I PRLog : -1225051820[b444a080]: void mozilla::nsDOMCameraControl::OnConfigurationChange(mozilla::nsDOMCameraControl::DOMCameraConfiguration*):1286 : this=b1fc20c0 01-21 13:18:51.281 4979 4979 I PRLog : -1225051820[b444a080]: DOM OnConfigurationChange: this=b1fc20c0 01-21 13:18:51.281 4979 4979 I PRLog : -1225051820[b444a080]: mode : picture 01-21 13:18:51.281 4979 4979 I PRLog : -1225051820[b444a080]: maximum focus areas : 1 01-21 13:18:51.281 4979 4979 I PRLog : -1225051820[b444a080]: maximum metering areas : 5 01-21 13:18:51.281 4979 4979 I PRLog : -1225051820[b444a080]: preview size (w x h) : 640 x 480 01-21 13:18:51.281 4979 4979 I PRLog : -1225051820[b444a080]: picture size (w x h) : 2592 x 1944 01-21 13:18:51.281 4979 4979 I PRLog : -1225051820[b444a080]: recorder profile : 720p 01-21 13:18:51.281 4979 4979 I PRLog : -1225051820[b444a080]: nsresult mozilla::nsGonkCameraControl::PushParameters():524 - dispatching to Camera Thread 01-21 13:18:51.281 4979 5004 I PRLog : -1216088904[b27dca00]: Pushing camera parameters 01-21 13:18:51.281 4979 4979 I PRLog : -1225051820[b444a080]: nsresult mozilla::nsGonkCameraControl::PushParameters():524 - dispatching to Camera Thread 01-21 13:18:51.281 4979 4979 I PRLog : -1225051820[b444a080]: void mozilla::nsDOMCameraControl::StopFaceDetection(mozilla::ErrorResult&):919 : this=b1fc20c0 01-21 13:18:51.281 205 5530 D QCameraParameters: int32_t qcamera::QCameraParameters::initBatchUpdate(void*):Initializing batch parameter set 01-21 13:18:51.281 205 5530 D QCameraParameters: int32_t qcamera::QCameraParameters::setPreviewSize(const qcamera::QCameraParameters&): Requested preview size 640 x 480 01-21 13:18:51.281 205 5530 D QCameraParameters: int32_t qcamera::QCameraParameters::setVideoSize(const qcamera::QCameraParameters&): Requested video size 1280 x 720 01-21 13:18:51.281 205 5530 D QCameraParameters: int32_t qcamera::QCameraParameters::setPictureSize(const qcamera::QCameraParameters&): Requested picture size 176 x 144
Assignee | ||
Comment 9•9 years ago
|
||
Once in this state, the disconnect persists: 01-21 13:18:53.371 4979 4979 I PRLog : -1225051820[b444a080]: already_AddRefed<mozilla::dom::Promise> mozilla::nsDOMCameraControl::TakePicture(const mozilla::dom::CameraPictureOptions&, mozilla::ErrorResult&):928 : this=b1fc20c0 01-21 13:18:53.371 4979 4979 I PRLog : -1225051820[b444a080]: Begin deferring camera configuration updates (nest level 1) 01-21 13:18:53.371 4979 4979 I PRLog : -1225051820[b444a080]: setting picture size to 2592x1944 01-21 13:18:53.371 4979 5004 I PRLog : -1216088904[b27dca00]: Requested picture size 2592x1944 unchanged 01-21 13:18:53.371 4979 4979 I PRLog : -1225051820[b444a080]: virtual int android::GonkCameraHardware::GetSensorOrientation(uint32_t) 01-21 13:18:53.371 4979 4979 I PRLog : -1225051820[b444a080]: Defering config update (nest level 1) 01-21 13:18:53.371 4979 4979 I PRLog : -1225051820[b444a080]: Defering config update (nest level 1) 01-21 13:18:53.371 4979 4979 I PRLog : -1225051820[b444a080]: setting picture date/time to 2015:01:21 13:18:53 01-21 13:18:53.371 4979 4979 I PRLog : -1225051820[b444a080]: Defering config update (nest level 1) 01-21 13:18:53.371 4979 4979 I PRLog : -1225051820[b444a080]: Defering config update (nest level 1) 01-21 13:18:53.371 4979 4979 I PRLog : -1225051820[b444a080]: End deferring camera configuration updates (nest level 1) 01-21 13:18:53.371 4979 4979 I PRLog : -1225051820[b444a080]: nsresult mozilla::nsGonkCameraControl::PushParameters():524 - dispatching to Camera Thread 01-21 13:18:53.371 4979 5004 I PRLog : -1216088904[b27dca00]: Pushing camera parameters 01-21 13:18:53.371 205 5530 D QCameraParameters: int32_t qcamera::QCameraParameters::initBatchUpdate(void*):Initializing batch parameter set 01-21 13:18:53.371 205 5530 D QCameraParameters: int32_t qcamera::QCameraParameters::setPreviewSize(const qcamera::QCameraParameters&): Requested preview size 640 x 480 01-21 13:18:53.371 205 5530 D QCameraParameters: int32_t qcamera::QCameraParameters::setVideoSize(const qcamera::QCameraParameters&): Requested video size 1280 x 720 01-21 13:18:53.371 205 5530 D QCameraParameters: int32_t qcamera::QCameraParameters::setPictureSize(const qcamera::QCameraParameters&): Requested picture size 176 x 144
Assignee | ||
Comment 10•9 years ago
|
||
Attachment #8549269 -
Attachment is obsolete: true
Attachment #8552689 -
Flags: review?(aosmond)
Comment 11•9 years ago
|
||
Comment on attachment 8552689 [details] [diff] [review] Keep camera driver in sync with Gecko, v1 Review of attachment 8552689 [details] [diff] [review]: ----------------------------------------------------------------- Looks good to me. Minor nit but r+ either way (since later we will probably want to rethink the exception for Set(CAMERA_PARAM_PICTURESIZE). ::: dom/camera/GonkCameraControl.cpp @@ +353,5 @@ > + mCurrentConfiguration.mMode = config.mMode; > + mCurrentConfiguration.mRecorderProfile = config.mRecorderProfile; > + > + if (config.mMode == kPictureMode) { > + mCurrentConfiguration.mPictureSize = config.mPictureSize; I don't think we need to re-cache the picture size at lines 357 and 361 because the ::Set call has an exception which intercepts it (that I had not realized or thought about when I did the original patch).
Attachment #8552689 -
Flags: review?(aosmond) → review+
Assignee | ||
Comment 12•9 years ago
|
||
Greatly simplified patch -- thanks, Andrew.
Attachment #8552689 -
Attachment is obsolete: true
Attachment #8553142 -
Flags: review?(aosmond)
Comment 13•9 years ago
|
||
Comment on attachment 8553142 [details] [diff] [review] Keep camera driver in sync with Gecko, v2 Review of attachment 8553142 [details] [diff] [review]: ----------------------------------------------------------------- LGTM.
Attachment #8553142 -
Flags: review?(aosmond) → review+
Assignee | ||
Comment 14•9 years ago
|
||
https://hg.mozilla.org/integration/b2g-inbound/rev/b2474bca8494
Comment 15•9 years ago
|
||
https://hg.mozilla.org/mozilla-central/rev/b2474bca8494
Status: ASSIGNED → RESOLVED
Closed: 9 years ago
Resolution: --- → FIXED
Target Milestone: --- → 2.2 S5 (6feb)
Comment 16•9 years ago
|
||
Please request b2g37 approval on this when you get a chance.
Flags: needinfo?(mhabicher)
Assignee | ||
Comment 17•9 years ago
|
||
Comment on attachment 8553142 [details] [diff] [review] Keep camera driver in sync with Gecko, v2 NOTE: Please see https://wiki.mozilla.org/Release_Management/B2G_Landing to better understand the B2G approval process and landings. [Approval Request Comment] Bug caused by (feature/regressing bug #): bug 1121769 User impact if declined: upon returning to the Camera app, taken pictures will unexpectedly be the wrong size Testing completed: manual testing on Flame Risk to taking this patch (and alternatives if risky): minimal String or UUID changes made by this patch: none
Flags: needinfo?(mhabicher)
Attachment #8553142 -
Flags: approval-mozilla-b2g37?
Updated•9 years ago
|
Attachment #8553142 -
Flags: approval-mozilla-b2g37? → approval-mozilla-b2g37+
Reporter | ||
Comment 20•9 years ago
|
||
This issue is verified fixed on Flame 3.0 master and Flame 2.2. Observed behavior: Camera takes pictures in expected sizes after following STR. Device: Flame (full flash, nightly build, 319MB mem) BuildID: 20150202154235 Gaia: 4171327fce4803c52b2fae8071b114a70a3a68a7 Gecko: 3bf7ed413e87 Gonk: e7c90613521145db090dd24147afd5ceb5703190 Version: 38.0a1 (3.0 Master) Firmware Version: v18D-1 User Agent: Mozilla/5.0 (Mobile; rv:38.0) Gecko/38.0 Firefox/38.0 Device: Flame (full flash, nightly build, 319MB mem) BuildID: 20150202002507 Gaia: d6141fa3208f224393269e17c39d1fe53b7e6a05 Gecko: be206fa2fb60 Gonk: e7c90613521145db090dd24147afd5ceb5703190 Version: 37.0a2 (2.2) Firmware Version: v18D-1 User Agent: Mozilla/5.0 (Mobile; rv:37.0) Gecko/37.0 Firefox/37.0
Status: RESOLVED → VERIFIED
Flags: needinfo?(ktucker)
Updated•9 years ago
|
Flags: needinfo?(ktucker)
You need to log in
before you can comment on or make changes to this bug.
Description
•