Closed Bug 1000567 Opened 11 years ago Closed 11 years ago

[B2G][Camera][Open_C][1.4] Camera launches as a black screen

Categories

(Firefox OS Graveyard :: Gaia::Camera, defect)

ARM
Gonk (Firefox OS)
defect
Not set
normal

Tracking

(blocking-b2g:1.4+, b2g-v1.4 affected)

RESOLVED DUPLICATE of bug 985481
2.0 S1 (9may)
blocking-b2g 1.4+
Tracking Status
b2g-v1.4 --- affected

People

(Reporter: nkot, Assigned: mikeh)

References

Details

(Keywords: smoketest)

Attachments

(3 files, 5 obsolete files)

Description:
Camera launches as a black screen. Camera icons are shown, the user is unable to take pictures or videos.

Repro Steps:
1) Updated to Open_C Build ID: 20140423000203
2) Open the Camera App

Actual:
Screen appears black and the user is unable to take pictures

Expected:
User's environment should display on the screen and they should be able to take pictures 

Environmental  Variables:
BuildID: 20140423000203
Gaia: b6a41ee9e2934fe9692da6fb1cb310cb759e9870
Gecko: 2d1b4d36eef9
Version: 30.0a2
Base: P821A10-ENG_20140410

Repro frequency: 100%


Notes:
Camera works fine on Open_C base or Open_C master build. This bug is only for aurora (1.4)
blocking-b2g: --- → 1.4?
Keywords: regression
blocking-b2g: 1.4? → 1.4+
Whiteboard: [CR 651554]
As a first pass, can we get a logcat of this issue happening?
Flags: needinfo?(nkot)
1. We need a logcat
2. We need to know if this reproduces on Buri & Flame
Keywords: qawanted
Keywords: qaurgent
Attached file logcat (obsolete) —
- providing logcat
- the issue does reproduce om Buri
- don't have working Flame to test
Flags: needinfo?(nkot)
disregard comment 3, this is a logcat to bug 1000961, will provide correct logcat here in a min
Attachment #8411981 - Attachment is obsolete: true
Attached file logcat (obsolete) —
OK, this is correct response to comment 2

1. logcat provided
2. the issues does NOT reproduce on Buri 
3. don't have working Flame to test
Removing qawanted & qaurgent per comment 5.
Keywords: qaurgent, qawanted
Is this broken on the first 1.4 build available for Open C?
Keywords: qawanted
(In reply to Jason Smith [:jsmith] from comment #7)
> Is this broken on the first 1.4 build available for Open C?

It is broken on the first 1.4 pvt build available. I got Flame device and will retest this on Flame shortly.

First Open_C pvt build info:
BuildID: 20140421160203
Gaia: 26432916d10434103a822f17be4624a342cadfba
Gecko: 211431128e5b
Version: 30.0a2
Base: P821A10-ENG_20140410
Keywords: qawanted
Leaving qawanted to get testing results for the Flame.
Keywords: qawanted
Attached file logcat.txt (obsolete) —
logcat from an variant=eng build on open c (gecko/gaia) flash.

It's black on Open C; it works fine on flame.  Note : The flame has a flash; I don't think that's the cause of the camera not working for 1.4 though...

I noticed in my logcat : 04-24 04:59:50.810: I/CameraClient(288): Destroying camera 0

I think nkot was right in filing a separate bug.
I'm not sure if we can still flash flame gecko/gaia on top of a open C base build... it seems like there might be some other configuration changes that we have to worry about after all.  Maybe the settings.js file might be different for the camera on the gaia level.

djf pointed me to some config files for camera just recently, and I think this might explain why the device thinks there's two cameras and a flash.

gaia/apps/camera/js/config/settings.js
Flags: needinfo?(mwu)
Flags: needinfo?(dflanagan)
Keywords: qawanted
All the critical information for camera operation *needs* to be inside the camera HAL, not settings.js. If it's not working, it's likely a bug.
Flags: needinfo?(mwu)
Probably a clue as to what's going on:

04-24 04:59:50.790: D/QCameraParameters(288): int32_t qcamera::QCameraParameters::initDefaultParameters(): supported preview sizes: 1600x1200,1280x720,864x480,800x480,768x432,720x480,640x480,576x432,480x320,384x288,352x288,320x240,240x160,176x144
04-24 04:59:50.790: D/QCameraParameters(288): int32_t qcamera::QCameraParameters::initDefaultParameters(): supported video sizes: 1280x720,864x480,800x480,720x480,640x480,480x320,352x288,320x240,176x144
04-24 04:59:50.790: D/QCameraParameters(288): int32_t qcamera::QCameraParameters::initDefaultParameters(): supported pic sizes: 1600x1200,1280x768,1280x720,1024x768,800x600,800x480,720x480,640x480,352x288,320x240,176x144
  ...
04-24 04:59:50.800: E/QCameraParameters(288): Invalid video size requested: 1600x1200
See Also: → 987068
The camera app will request the biggest video size that the hardware says it supports. If the camera hardware is lying to us and saying it supports 1600x1200 and then throwing an error when we ask to use that mode, that is probably the problem.

We could probably work around this awkwardly in Gaia, but since no one who works on the Gaia camera app has a device, it will be difficult.  

Fixing this in gonk is probably the right thing to do.

But at the same time, adding some sanity checking in the Gaia app might also be a good idea. Even if this device did support 1600x1200 videos, we almost certainly shouldn't be requesting a resolution that high as the default value.  So setting a reasonable maximum video size is probably something we should do anyway and might enable us to work around this.

Diego: are you able to find an Open C in the SF office to work on this?
Flags: needinfo?(dflanagan) → needinfo?(dmarcos)
(In reply to David Flanagan [:djf] from comment #14)
> The camera app will request the biggest video size that the hardware says it
> supports. If the camera hardware is lying to us and saying it supports
> 1600x1200 and then throwing an error when we ask to use that mode, that is
> probably the problem.
> 

According to the logcat, we're requesting a video size that isn't in the video size list, so it seems like it's a problem on our side.
In the past, our devices didn't report video sizes separate from preview sizes, so there are a few places in Gecko that resort to only using the latter.

This needs to be cleaned up. Having an Open C to test against would be very handy.
This is what I see. My Open C actually launches camera. It's when switching to video and back to photo when I get the black screen. 

The error callback of mozCamera.setConfiguration is called and the error message is "FAILURE" (not very informative). Set configuration is called with {"mode":"picture","previewSize":{"height":288,"width":352},"recorderProfile":"cif"}. Below the part of the output with my own logging added:

QCameraParameters(  281): int32_t qcamera::QCameraParameters::initBatchUpdate(void*):Initializing batch parameter set
D/QCameraParameters(  281): virtual int32_t qcamera::QCameraReprocScaleParam::setValidatePicSize(int&, int&): mPicSizeFromAPK- with=2048, height=1536, mPicSizeSetted- with =1600, height=1200.
D/QCameraParameters(  281): virtual int32_t qcamera::QCameraReprocScaleParam::setValidatePicSize(int&, int&): X. mIsUnderScaling=1, width=1600, height=1200.
D/QCameraParameters(  281): Param m_bNoDisplayMode = 0
E/QCameraParameters(  281): Invalid flash value: undefined
I/QCameraParameters(  281): int32_t qcamera::QCameraParameters::setLiveSnapshotSize(const qcamera::QCameraParameters&): live snapshot size 352 x 288
D/QCameraParameters(  281): int32_t qcamera::QCameraParameters::AddSetParmEntryToBatch(void*, cam_intf_parm_type_t, uint32_t, void*): num_entry: 1, paramType: 118, paramLength: 4, aligned_size_req: 20
E/GeckoConsole(11121): Content JS LOG at app://camera.gaiamobile.org/js/main.js:3462 in Camera.prototype.configure/error: CONFIGURATION ERROR MESSAGE: FAILURE CONFIGURATION OPTIONS: {"mode":"picture","previewSize":{"height":288,"width":352},"recorderProfile":"cif"}
E/GeckoConsole(11121): Content JS LOG at app://camera.gaiamobile.org/js/main.js:3463 in Camera.prototype.configure/error: Error configuring camera
Flags: needinfo?(mhabicher)
Attached file cameraLog.txt (obsolete) —
Attaching complete log
Flags: needinfo?(dmarcos)
For the log i comment 17/18 I used my open C with:

Gaia      730670951e40b2317a167fcd07c398bb662d6e87
Gecko     e7082d69f66900d218608db380c3c60e1b1b531e
BuildID   20140424110747
Version   31.0a1
ro.build.version.incremental=eng.cuizhaohui.20140410.144352
Additional piece of info. It seems that my device has a gecko from a base image (produced by ZTE). With base images the camera starts and the screen goes black when switching from video to photo modes.

The camera starts on black preview on Mozilla generated PVT builds.
Keywords: regression
Supported video size patch is available: Bug 985481
As a baseline:
- gecko: b2g-inbound:2fce5442af8f
- gaia: master:d63efe7af7e7a336a28c19d9e52b0d66c4491d7d

...works properly, though after switching back to picture from video mode, the bottom of the viewfinder is "noisy". I have a screen shot and will attach it to a new bug. Will try to reproduce with aurora/1.4.
Flags: needinfo?(mhabicher)
Sorry, in comment 22, that should be:
- gecko: master:ad7bf3267ca083374fec2d1a3507b44a986c9afb
- gecko: aurora:4974d9da2f7d
- gaia: v1.4:commit d23e479e8a4ce0bc620acb2d7e2f82801aa4d0ea
(In reply to Mike Habicher [:mikeh] from comment #24)
> Created attachment 8413953 [details]
> logcat from start-up crash, aurora build
> 
> - gecko: aurora:4974d9da2f7d
> - gaia: v1.4:commit d23e479e8a4ce0bc620acb2d7e2f82801aa4d0ea

Mike

Can you please assign the issue to yourself, if it can be reproduced that is?
(In reply to Preeti Raghunath(:Preeti) from comment #25)
> 
> Mike
> 
> Can you please assign the issue to yourself, if it can be reproduced that is?

I will as soon as I can get a reliable 1.4 build. Per comment 25, my Open_C no longer boots, so I'm blocked.
Mike will investigate -- he is currently battling with a non-functional build that keeps rebooting when he flashes it on the open C device that got shipped to him
Assignee: nobody → mhabicher
Do you reproduce this on the QRD reference device?
Flags: needinfo?(bhargavg1)
(In reply to Jason Smith [:jsmith] from comment #28)
> Do you reproduce this on the QRD reference device?

when checked on the following build,

Gecko: 1ed84a66c469c1dc980924235a23f8b039797757
Gaia: 4eb2393e6a5174e6c732167866aded046c49ed97

Dont see any black screen while opening camera app

Onhly see an issue when switching the cameras, will raise a separate bug for that
Flags: needinfo?(bhargavg1)
Whiteboard: [CR 651554]
With OpenC, I don't see this issue running:
- gecko: aurora:ba2dde89f614
- gaia: v1.4:d23e479e8a4ce0bc620acb2d7e2f82801aa4d0ea

Camera viewfinder works as expected in both picture and video modes.
Did aurora switch over today?

Using the v1.4; it's still on gecko 30.0  I build my own gaia on top of the v1.4 gecko from the pvtbuild server, and I still see this issue...

Gaia      e66d30c262402bf14fbcbccc4aff44e7a09687fd
Gecko     https://hg.mozilla.org/releases/mozilla-b2g30_v1_4/rev/32da83ceb532
BuildID   20140429000201
Version   30.0
ro.build.version.incremental=eng.cuizhaohui.20140410.144352
ro.build.date=Thu Apr 10 14:45:37 CST 2014
Naoki, you're right--the problem still exists.
- gecko: b2g30_v1_4:2d7d38389526
- gaia: v1.4:d23e479e8a4ce0bc620acb2d7e2f82801aa4d0ea
Same gaia, with:
- gecko: b2g-inbound:c5d205aa662c
Attachment #8412002 - Attachment is obsolete: true
Attachment #8412187 - Attachment is obsolete: true
Attachment #8412897 - Attachment is obsolete: true
Attachment #8415335 - Attachment is obsolete: true
Depends on: 985481
Confirmed that the patch in 985481 fixes this issue.
Status: NEW → RESOLVED
Closed: 11 years ago
Resolution: --- → DUPLICATE
No longer depends on: 985481
Target Milestone: --- → 2.0 S1 (9may)
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: