- Notifications
You must be signed in to change notification settings - Fork45
FreeDcam is a CameraApp for Android >4.0(ics) wich try to enable stuff that is forgotten by the manufacturs
License
KillerInk/FreeDcam
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
- Build
- Supported Apis
- Projects used by FreeDcam
- Q&A
- Hidden Oem Settings
- Camera Ui Icon
- Camera1 Dng Supported Devices
- How to create a Custom Matrix
- How to create a ToneMapProfile
- MSM Camera Blobs Logging for Devs
- License
To build use latestAndroid Studio
Special Thanks @Dave Coffin for dcraw and the bayer extracting to 16bit
Q: I'm able to choose camera2 api, but many things are missing. Why?
A: because its not fully supported by your device. such devices are called legacy devices. they support just basic image capture and recording features.Q Why can't i open raw/bayer files?
A Because its the pure data. the decoder cant read it because it does not know how to open it.
To tell the decoder how the data is stored, the dng container is needed.
In that case send us the raw/bayer file and it will work soon.Q Why my Device dont show an highspeed video profile, i know it support it
A Its because the Oem's did not add it as MediaProfile and freedcam support it only for most snapdragon socs
- In that case open the VideoProfileEditor inside FreeDcamSetting.
- As sample for 720p highspeed select first the 720p profile.
- Rename it to 720Hfr or what ever you want.
- Change Framerate to 120
- Select Highspeed
- Save the Profile and close the VideoProfileEditor.
- Q Why cant i decompile apps build with nougat sdk
A They changed the dex header version. Use a hexeditor to change the version from 37 to 35 and dex2jar works
Huawei Code:
*#*#2846579#*#*
List is not up to date
KK = Kitkat,L = Lollipop , M = Marshmallow
Device | Dng | MF | Shutter | Iso |
---|---|---|---|---|
Alcatel 985n | ![]() | ![]() | ![]() | ![]() |
Alcatel Idol3/small | ![]() | ![]() | ![]() | ![]() |
Aquaris E5 | ![]() | ![]() | ![]() | ![]() |
Aquaris M5 | ![]() | ![]() | ![]() | ![]() |
Blackberry Priv | ![]() | ![]() | ![]() | ![]() |
Elephone P9000 | ![]() | ![]() | ![]() | ![]() |
FowardArt | ![]() | ![]() | ![]() | ![]() |
Gione E7 | ![]() | ![]() | ![]() | ![]() |
Htc Desire500 | ![]() | ![]() | ![]() | ![]() |
Htc M8/9 | ![]() | ![]() | ![]() | ![]() |
Htc One A9 | ![]() | ![]() | ![]() | ![]() |
Htc One E8 | ![]() | ![]() | ![]() | ![]() |
Htc One SV | ![]() | ![]() | ![]() | ![]() |
Htc One XL | ![]() | ![]() | ![]() | ![]() |
Huawei GX8 | ![]() | ![]() | ![]() | ![]() |
Huawei Honor 5X | ![]() | ![]() | ![]() | ![]() |
I Mobile IStylteQ6 | ![]() | ![]() | ![]() | ![]() |
Jiayu S3 | ![]() | ![]() | ![]() | ![]() |
Lenovo K4 Note | ![]() | ![]() | ![]() | ![]() |
Lenovo K50 | ![]() | ![]() | ![]() | ![]() |
Lenovo K910 | ![]() | ![]() | ![]() | ![]() |
Lenovo K920 | ![]() | ![]() | ![]() | ![]() |
Lenovo VibeP1 | ![]() | ![]() | ![]() | ![]() |
Lenovo VibeShot Z90 | ![]() | ![]() | ![]() | ![]() |
Lumigon T3 | ![]() | ![]() | ![]() | ![]() |
LG G2 | ![]() | ![]() | ![]() | ![]() |
LG G2pro | ![]() | ![]() | ![]() | ![]() |
LG G3 | ![]() | KK=![]() ![]() ![]() | ![]() | ![]() |
LG G4 | ![]() | ![]() | ![]() | ![]() |
Meizu M1 Metal | ![]() | ![]() | ![]() | ![]() |
Meizu M2 Note | ![]() | ![]() | ![]() | ![]() |
Meizu MX4/5 | ![]() | ![]() | ![]() | ![]() |
Mlais M52 Red Note | ![]() | ![]() | ![]() | ![]() |
Moto X 2015 | ![]() | ![]() | ![]() | ![]() |
Moto X Style Pure Play | ![]() | ![]() | ![]() | ![]() |
MyPhone Infinity 2S | ![]() | ![]() | ![]() | ![]() |
OnePlus One | ![]() | ![]() | ![]() | ![]() |
OnePlus Two | ![]() | ![]() | ![]() | ![]() |
Prestigio Multipad Color | ![]() | ![]() | ![]() | ![]() |
Retro | ![]() | ![]() | ![]() | ![]() |
Sony C4 | ![]() | ![]() | ![]() | ![]() |
Sony C5 | ![]() | ![]() | ![]() | ![]() |
Sony M4 | ![]() | ![]() | ![]() | ![]() |
Sony M5 | ![]() | ![]() | ![]() | ![]() |
Sony XperiaL | ![]() | ![]() | ![]() | ![]() |
THL5000 | ![]() | ![]() | ![]() | ![]() |
Umi Rome X | ![]() | ![]() | ![]() | ![]() |
Vivo Xplay | ![]() | ![]() | ![]() | ![]() |
WileyFox Swift | ![]() | ![]() | ![]() | ![]() |
Xiaomi Mi A1 | ![]() | ![]() | ![]() | ![]() |
Xiaomi Mi3 | ![]() | ![]() | ![]() | ![]() |
Xiaomi Mi3w | ![]() | ![]() | ![]() | ![]() |
Xiaomi Mi4c | ![]() | ![]() | ![]() | ![]() |
Xiaomi Mi4w | ![]() | ![]() | ![]() | ![]() |
Xiaomi Mi 5 | ![]() | ![]() | ![]() | ![]() |
Xiaomi Mi Max | ![]() | ![]() | ![]() | ![]() |
Xiaomi Mi Note Pro | ![]() | ![]() | ![]() | ![]() |
Xiaomi Redmi Note | ![]() | ![]() | ![]() | ![]() |
Xiaomi Redmi Note 2 | ![]() | ![]() | ![]() | ![]() |
Xiaomi Redmi Note 3 (Snap/MTK) | ![]() | ![]() | ![]() | ![]() |
Xolo Omega5 | ![]() | ![]() | ![]() | ![]() |
Yu Yureka | ![]() | ![]() | ![]() | ![]() |
Zoppo 8Speed | ![]() | ![]() | ![]() | ![]() |
First you need aColorchecker Passport without it, its useless to continue
Set it somewhere in the Scene and capture a Dng from it.
When done you needAdobes Dng Profile Editor
Load there the Dng and choose Chart tab and place the dots to the edges of the chart.
Then clickCreate Color Table. Now you can tune the matrixes. When done save the dcp profile into camera raw appData folder.
C:\Users\UserName\AppData\Roaming\Adobe\CameraRaw\CameraProfiles.
Then open the Dng into CameraRaw and go to tabCamera Calibration.
Select there the created dcp profile and click onSave Image... and save the Dng with the choosen profile, do not open the image!
Open the saved Dng now into exiftools or a simliar tool, wich can read metadata, and copy out the matrixes into a txt file in the bottom order.
<matrixes> <matrix name="G4"> <color1>1.15625, -0.2890625, -0.3203125, -0.53125, 1.5625f, 0.0625, -0.078125, 0.28125, 0.5625</color1> <color2>0.5859375, 0.0546875, -0.125, -0.6484375, 1.5546875, 0.0546875, -0.2421875, 0.5625, 0.390625</color2> <neutral>0.53125, 1, 0.640625</neutral> <forward1>0.820300, -0.218800, 0.359400, 0.343800, 0.570300,0.093800, 0.015600, -0.726600, 1.539100</forward1> <forward2>0.679700, -0.078100, 0.359400, 0.210900, 0.703100,0.085900, -0.046900, -0.828100, 1.695300</forward2> <reduction1>0.9921875, 0, 0, 0, 1, 0, 0, 0, 1.015625</reduction1> <reduction2>0.9921875, 0, 0, 0, 1, 0, 0, 0, 1.015625</reduction2> <noise>0.8853462669953089, 0, 0.8853462669953089f, 0, 0.8853462669953089f,0</noise> </matrix> </matrixes>
Can get used to apply custom profiles direct to a dng.
data can get created with various tools.
like from a dcp with dcamprof or dcptools.
or extracted from a existing dng with exiftools.
tonemapprofiles.xml
<tonemapprofiles><!-- thats the first profile --> <tonemapprofile name="linear"> <tonecurve>0,0,0.25,0.25,0.5,0.5,0.75,0.75,1,1</tonecurve> use "," to split. ignores whitespace and line breaks, <baselineexposure>0.35</baselineexposure> set to avoid the hidden exposure <huesatmapdims>90 25 1</huesatmapdims> should only contain whitespaces for splitting no line breaks! <huesatmapdata1>0 0 .... 1 1</huesatmapdata1> should only contain whitespaces for splitting no line breaks! </tonemapprofile> <!-- next profile --> <tonemapprofile name="srgb"> <tonecurve>0,0,......,1,1</tonecurve> </tonemapprofile> <tonemapprofile name="iso100"> <baselineexposure>-0.35</baselineexposure> </tonemapprofile></tonemapprofiles>
Copy that file now on your phones internalSD/DCIM/FreeDcam/config/matrixes.xml and you can select it inside Freedcam.
Its gets then applied to each new dng
Create File in /data/misc/camera/camera_dbg.txt
Valid values:
none - no logging
error - error message logging only, default
high - log high priority messages and up
warn - log warnings and higher
low - verbose logging
debug - debug logging level
cam_dbglevel=debug mct_dbglevel=debug sensor_dbglevel=debug iface_dbglevel=debug isp_dbglevel=debug stats_dbglevel=debug pproc_dbglevel=debug imglib_dbglevel=debug cpp_dbglevel=debug hal_dbglevel=debug jpeg_dbglevel=debug c2d_dbglevel=debug
Permission #chmod 770
persist.camera.global.debug 4
persist.camera.debug.logfile 1
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License along
with this program; if not, write to the Free Software Foundation, Inc.,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
About
FreeDcam is a CameraApp for Android >4.0(ics) wich try to enable stuff that is forgotten by the manufacturs