FORUMS
Remove All Ads from XDA

 View Poll Results: Are you rooted?

Yes
 
345 Vote(s)
71.73%
No
 
136 Vote(s)
28.27%

[APP] [MOD] [v3.2] Camera X - Burst, 240FPS Slow-Motion, EIS & More

340 posts
Thanks Meter: 771
 
By ViRb3, Senior Member on 27th December 2015, 07:31 AM
Post Reply Email Thread
I came across a thread that claimed it's possible to enable EIS (Electronic Image Stabilization) on Nexus 5X through a build.prop line. I was skeptical at first, but when I tried it for myself, it really worked! I immediately thought about the other features our device was mysteriously missing, but are available on the Nexus 6P, which has the same camera. The same day I opened up 5 desktops on my Windows laptop, launched my magic tools and denied sleep for a few days.

Today, I am proud to present Camera X!

Features:
  1. This is a Google Camera mod
  2. Burst mode
    To enable, simply disable 'Smart Burst' from the camera app settings.
  3. Smart Burst mode
  4. 240fps slow-motion*
  5. Video EIS**

How to enable EIS? **
EIS (electronic image stabilization) is triggered in the camera driver library and is impossible to alter without root access (source code of EIS check, found in 'camera.msm8992.so').

If you are a root user, you can:
  • Edit your 'build.prop' file (using root file manager or Build Prop Editor app from PlayStore) and add these two lines:
    Code:
    persist.camera.eis.enable=1
    persist.camera.is_mode=4
  • Use the following flashable ZIP. Thank you synesthete for your work!
You will see 'Camera Settings > Resolution & Quality > Enable video stabilization' after a phone reboot.

NOTE: EIS does not work with 4K video due to hardware limitations!

NOTE: persist lines will have an effect even if you remove them, so set them back to '0' if you want to disable them!

What's IS mode?
Code:
       //IS type will be 0 unless EIS is supported. If EIS is supported
        //it could either be 1 or 4 depending on the stream and video size
        if (setEis) {
            if (!m_bEisSupportedSize) {
                is_type = IS_TYPE_DIS;
            } else {
                is_type = IS_TYPE_EIS_2_0;
            }
            mStreamConfigInfo.is_type = is_type;
        } else {
            mStreamConfigInfo.is_type = IS_TYPE_NONE;
        }

Story behind Camera X:
I have a Nexus 5X. I began by modding Google Camera to think that it's running on a Nexus 6P. Surprisingly, this enabled Burst Mode!
I started digging in. After 2-3 days of sleepless analysis I found where all features reside and how to enable them. I am constantly trying new tweaks and updating my mod accordingly if something is useful.

Why didn't Google enable these features by default? *
While 240fps works, you will notice that the quality is very low compared to the Nexus 6P, especially in low light. This is due to the processing limitations our device has. The bit rate cannot be increased any more than this (at least software-wise).

Download:
Click me (Google Drive)

Note: In order to avoid having to remove the original camera app, my mod has the package name com.google.android.GoogleCameraX and app name Camera X.
The Following 159 Users Say Thank You to ViRb3 For This Useful Post: [ View ] Gift ViRb3 Ad-Free
 
 
27th December 2015, 07:32 AM |#2  
ViRb3's Avatar
OP Senior Member
Thanks Meter: 771
 
More
Changelog:

30 Apr 2016 -1
  • Fixed HDR+ not working
30 Apr 2016
  • Updated mod to Google Camera v3.2.042:
    Android N support, UI improvements, faster camera, experimental RAW support, ZSL support
  • Re-implemented mod with new, more stable methods
  • CameraX version system now matches official Google Camera versions
27 Dec 2015 - Renamed app name and package name to avoid having to uninstall the original app (no root required anymore)
27 Dec 2015 - Initial release
The Following 18 Users Say Thank You to ViRb3 For This Useful Post: [ View ] Gift ViRb3 Ad-Free
27th December 2015, 07:32 AM |#3  
ViRb3's Avatar
OP Senior Member
Thanks Meter: 771
 
More
Tunables:

Device-specific Native Memory Override in MB

Nexus 5 - 525
Nexus 6 - 580
Nexus 6P - 420
Nexus 5X - 370

Blacklisted Preview Resolutions - Back Camera

Nexus 5X - "1440x1080,1920x1080"

Blacklisted Preview Resolutions - Front Camera

Nexus 5X - "1440x1080,1920x1080"

Max. Allowed Image Reader Count

Default - 15
Samsung Galaxy S6 - 9
Nexus 6 - 9
Nexus 6P - 9
Nexus 5X - 3

//result + 6

Max. HDR+ Burst Frame Count

Default - 8
Nexus 5X - 5
Nexus 6P - 7

Re-processing Image Reader/Writer Count

Default - 1
Nexus 6X - 1
Nexus 6P - 3

Low Resolution Crop Rectangle

//custom calculation for Nexus 6P
The Following 11 Users Say Thank You to ViRb3 For This Useful Post: [ View ] Gift ViRb3 Ad-Free
27th December 2015, 07:32 AM |#4  
ViRb3's Avatar
OP Senior Member
Thanks Meter: 771
 
More
Reserved for miracles
The Following 5 Users Say Thank You to ViRb3 For This Useful Post: [ View ] Gift ViRb3 Ad-Free
27th December 2015, 09:14 AM |#5  
qtipbailey's Avatar
Member
Flag Atlanta
Thanks Meter: 52
 
More
Quote:
Originally Posted by ViRb3


Note: Uninstall any previous versions of the Google Camera app, since the one I have modified has a different signature and will be unable to install on top of the original one.

Pardon me for asking, but you say no root required and yet your instructions require uninstalling a system app?
The Following 2 Users Say Thank You to qtipbailey For This Useful Post: [ View ] Gift qtipbailey Ad-Free
27th December 2015, 10:12 AM |#6  
Member
Thanks Meter: 5
 
More
workin very good for me
Quote:
Originally Posted by qtipbailey

Pardon me for asking, but you say no root required and yet your instructions require uninstalling a system app?

workin very good for me,bat you must have root to do it
27th December 2015, 06:23 PM |#7  
Senior Member
Thanks Meter: 158
 
More
Wow, it works and it works fine.. I recorded some 240fps videos, no problem! No crashes or FC!

Maybe, we can enable a way (using custom kernels) to make all the cores work at full speed when Camera app is running!

Thanks!!!

BTW can you somehow change the name of the app? Maybe "Camera 6P", that way people wouldn't need to uninstall Camera app (which requires root I think...)
27th December 2015, 06:49 PM |#8  
Senior Member
Thanks Meter: 15
 
More
Is there a way to add 4 burst shot without a modded apk?
I was hoping for a simple solution like how adding eis was just a build.prop addition.
27th December 2015, 07:24 PM |#9  
ViRb3's Avatar
OP Senior Member
Thanks Meter: 771
 
More
Quote:
Originally Posted by qtipbailey

Pardon me for asking, but you say no root required and yet your instructions require uninstalling a system app?

I just realized this as I was going to bed yesterday. I use a custom ROM here and Google Camera is not a system app. I can easily change the package name (and icon), but I am not exactly sure how happy Google would be with that. Any law-knowledgeable person can enlighten me, please?

Quote:
Originally Posted by peikojose

Maybe, we can enable a way (using custom kernels) to make all the cores work at full speed when Camera app is running

I believe that the interactive governor already does that. One thing we can absolutely do, however, is overclock the CPU for the camera. I will investigate on that, thanks for the suggestion.

Quote:
Originally Posted by dLeTe

Is there a way to add 4 burst shot without a modded apk?
I was hoping for a simple solution like how adding eis was just a build.prop addition.

It *might* be just possible. As far as I could see the build.prop line for EIS is not checked from within Google Camera, therefore there should be another package responsible for that. The existence of a line for burst mode could be very possible. I will look around for that soon.
The Following User Says Thank You to ViRb3 For This Useful Post: [ View ] Gift ViRb3 Ad-Free
27th December 2015, 08:46 PM |#10  
Senior Member
Thanks Meter: 43
 
More
Glad to report back that I haven't found any issues so far. I turned off smart burst and tried it out, and I could only store maybe 19 shots with the shutter held down, doesn't bother me much as I don't know what the actual limit of non hdr photos are for burst. I was wondering if there was any way of increasing 240fps bit rate. The fact that 240fps works is already a miracle.
27th December 2015, 09:45 PM |#11  
Junior Member
Thanks Meter: 3
 
More
I did some research about this before hand and the snapdragon 808 and 810 share the same throughput so the only thing stopping the 5x from having the same 19Mbps bitrate is probably the CPU and maybe the lack of additional ram might have something to do with it. In either case the best option in my opinion would be a custom kernel working in conjunction with the camera app.

---------- Post added at 09:45 PM ---------- Previous post was at 09:41 PM ----------

You could also message Gandalf on how he implemented EIS into omnirom. Not sure if he implemented it the same way you did.
The Following User Says Thank You to X7-Ghost For This Useful Post: [ View ] Gift X7-Ghost Ad-Free
Post Reply Subscribe to Thread

Tags
240, burst, camera, eis, mod

Guest Quick Reply (no urls or BBcode)
Message:
Previous Thread Next Thread
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes