Closed Bug 987102 Opened 10 years ago Closed 6 years ago

[Camera] Helix fails to record video in 480p or 720p

Categories

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

x86
Gonk (Firefox OS)
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED WONTFIX

People

(Reporter: wilsonpage, Unassigned)

References

Details

We're exposing higher resolution video profiles 480p and 720p, but Helix errors when trying to record at these levels, despite exposing them as supported recorder profiles in `mozCamera.capabilities.recorderProfiles`.

STEPS:

1. In apps/camera/js/config/app.js show recorder profiles in settings menu by uncommenting `videoRecorderProfiles*` from `settingsMenu` and uncomment '720p' and '450p' in recorderProfilesBack `options`.
2. Launch camera app
3. Set video resolution to 720p or 480p via settings menu
4. Start recording
5. Observe recording error overlay.
6. Change to video resolution to 'CIF' via settings menu
7. Observe video records successfully
Wilson, can get capture/attach a logcat? I'm guessing we'll see the same pmem/gralloc failures from the other bug.

mwu, do you know how much pmem we're configuring on our devices? I seem to recall (way back when) that we pruned some of the higher-resolution recording modes from Unagi because of insufficient pmem, which was limited by a configuration choice we had made to give more regular memory to Gecko.
Flags: needinfo?(mwu)
bug 900327 could be related...?
(In reply to Wilson Page [:wilsonpage] from comment #2)
>
> bug 900327 could be related...?

Yes, it does. Maybe ping Lecky in the other bug to see if there's any news?
(In reply to Mike Habicher [:mikeh] from comment #1)
> mwu, do you know how much pmem we're configuring on our devices? I seem to
> recall (way back when) that we pruned some of the higher-resolution
> recording modes from Unagi because of insufficient pmem, which was limited
> by a configuration choice we had made to give more regular memory to Gecko.


I don't know how it's configured, but you can check your pmem configuration if you have a device:

adb shell cat /sys/kernel/pmem_regions/pmem*/size

Unfortunately I don't have a device so I can't check it. I believe pmem_adsp is the one you should be looking at for camera issues.
Flags: needinfo?(mwu)
bug 987058 just landed on 'master' which means that video recording will be broken on Helix devices. This is because, we now select the highest quality recorder profile by default; on the Helix this is 720p.

Two options:

1. We leave it up to partners to use a build time configuration for Helix devices that excludes the 480p and 720p profiles from the recorderProfile options.
2. We fix Helix devices at the Gecko level to not expose 480p or 720p options via `camera.capabilities.recorderProfiles`

Passing to mikeh to decide :)
Flags: needinfo?(mhabicher)
STEPS (updated):

1. Launch camara app on Helix device
2. Switch to 'video' mode
3. Attempt to record a video
4. Observe video record error overlay
Blocks: 983405
blocking-b2g: --- → 1.4?
We do not support those resolutions on helix today (removing 1.4?) ...

Wilson what does the video record overlay error message say?
blocking-b2g: 1.4? → ---
blocking-b2g: --- → backlog
(In reply to Wilson Page [:wilsonpage] from comment #5)
> bug 987058 just landed on 'master' which means that video recording will be
> broken on Helix devices. This is because, we now select the highest quality
> recorder profile by default; on the Helix this is 720p.
> 
> Two options:
> 
> 1. We leave it up to partners to use a build time configuration for Helix
> devices that excludes the 480p and 720p profiles from the recorderProfile
> options.
> 2. We fix Helix devices at the Gecko level to not expose 480p or 720p
> options via `camera.capabilities.recorderProfiles`
> 
> Passing to mikeh to decide :)

I think this will be up to the partners.

mwu, is it possible to change the pmem allocation on Helix/other devices, to try higher resolution recordings?
blocking-b2g: backlog → ---
Flags: needinfo?(mhabicher) → needinfo?(mwu)
Yup - there are command line parameters that let you control pmem allocation. pmem_adsp_size is probably what you need. You'll need to repack the boot image with the kernel command line you want.
Flags: needinfo?(mwu)
Firefox OS is not being worked on
Status: NEW → RESOLVED
Closed: 6 years ago
Resolution: --- → WONTFIX
You need to log in before you can comment on or make changes to this bug.