Enable Camera2 API: The Camera2 API was introduced in Android 5.0 Lollipop to provide advanced camera capabilities and greater control over camera hardware. However, some Android devices have camera2api module is disabled on your device by default. Enabling the Camera2 API allows apps to access features like RAW image capture, manual exposure controls, enhanced JPEG quality, and more.
In this comprehensive guide, we will cover everything you need to know about the Camera2 API and how to enable it on both rooted and non-rooted Android devices in 2023.
What is the Camera2 API?
The Camera2 API (also known as camera HAL3) is a replacement for the older Camera API in Android. It provides an interface for apps to access advanced camera capabilities and directly control camera hardware like sensors, lenses, flash, etc.
Some key features of the Camera2 API include:
- Manual sensor controls – Control camera sensor settings like exposure time, ISO, and frame duration manually. This allows you to capture photos and videos with full control over the imaging pipeline.
- RAW image capture – Capture uncompressed RAW image data directly from the camera sensor. RAW images allow for greater flexibility in editing.
- Manual focus and exposure controls – Separate focus and exposure controls give you DSLR-like control over focusing and exposure metering. You can control focus modes like auto, macro, continuous, and more.
- High-efficiency JPEG capture – Improved JPEG encoding provides better image quality and reduced file size compared to the older Camera API.
- Improved burst performance – Take rapid sequences of full-resolution photos using high-speed burst modes. Burst performance is 3-5x faster compared to the older Camera API.
- Face detection – Face detection capabilities include support for focus, metering, and flash on detected faces.
- Optical stabilization – Control over optical image stabilization (OIS) allows capturing blur-free images and videos.
- Depth mapping – Specialized mono or stereo cameras can be used to create depth maps for synthetic bokeh effects.
- Camera extension support – Ability to connect specialized external camera hardware like lenses, sensors, or filters.
By enabling camera2 API, apps can take advantage of these powerful features to provide next-generation camera experiences.
Why Enable Camera2 API?
Here are some of the key benefits you get after enabling camera2 API on your Android device:
- Use professional manual camera apps that offer DSLR-like controls over focus, exposure, ISO, shutter speed, white balance, etc. This allows the capturing of high-quality photos and videos.
- Take pictures in RAW image format and have greater flexibility when editing photos. RAW images contain uncompressed sensor data that can be modified in advance without loss of quality.
- Improved low-light performance with manual ISO and exposure controls. You can capture bright low-noise images even in dim lighting.
- Shoot high-resolution burst mode photos with zero shutter lag. Burst modes are 3-5x faster compared to the regular camera app.
- Maintain full control while recording high-bitrate 4K, 8K, or slow-motion videos. Manually control focus, exposure, frame rate, and other parameters.
- Use specialty camera apps that take advantage of the Camera2 API to create 3D depth maps, light field captures, and synthetic bokeh effects.
- Extend camera capabilities by connecting external hardware like lenses, filters, and sensors using the Camera2 extension mechanism.
So if you want to shoot professional quality photos/videos, use manual camera controls, capture in RAW, or use specialty camera apps – you’ll need to enable the Camera2 API.
How to Check Camera2 API Status
Before proceeding with enabling camera2 API, you should first check whether it is already enabled or disabled on your device.
Here are a few easy ways to check the status of camera2 API on your Android device:
Using the Droid Info App
One of the simplest ways is to use the Droid Info app available on the Play Store.
After installing just open the app and go to the Camera2 API section to check if it is enabled or not. The app also shows a detailed list of camera capabilities.
Using AIDA64 App
Another great app to check for camera2 API status is AIDA64. This advanced system information app provides detailed hardware and software details about Android devices.
Launch the app and go to the Camera section. Here you can view the status of camera2 API – enabled or disabled.
Using DevCheck Hardware Info App
You can also use the DevCheck app to view camera capabilities including camera2 API status.
Open the app and go to Camera -> Camera API 2 section. Here you can see whether the camera2 API module is enabled or disabled.
If you have a rooted Android device, you can also check the camera2 API status using Logcat. Here are the steps:
- Install any terminal emulator app on your device like Termux.
- Launch the terminal app and enter the command:
logcat | grep "Camera HAL"
3. Check the log output. If you see
camera2 API is enabled it means the API is enabled. If you see
camera2 API is disabled then it is disabled.
This allows checking the camera2 API status directly from the Android system logs.
Using Manual Camera Apps
You can also install any manual camera app like Open Camera, ProCam X, or AoV Camera. If advanced manual controls don’t show up in the app, it likely means the camera2 API is disabled.
So those are some easy ways to check whether camera2 API is enabled or disabled on your Android device.
Enable Camera2 API on Rooted Devices
If your device is rooted, you can enable camera2 API by making a simple change in the build. prop file. Here is the complete step-by-step process:
Step 1. Install a File Editor App
First, you need a root-enabled file manager or text editor app to modify system files on your rooted Android device. Some good options are:
Install any one of these apps on your device if not already available. Make sure to grant root access when prompted.
Step 2. Enable USB Debugging
Go to Settings -> About Phone and tap the “Build number” entry 7 times to enable Developer options.
Next, go to Settings -> System -> Developer options and enable the USB debugging option. This allows granting permissions through ADB.
Step 3. Connect Device to PC
Connect your Android device to the computer using a USB cable. This will establish ADB access to the device.
Step 4. Open Build. prop
Launch the file manager or text editor app you installed in Step 1.
Navigate to the
/system folder and open the
build.prop file located there. If a root access prompt appears, grant permission.
Step 5. Add a Line to Enable Camera2 API
Add the following line at the end of the build. prop file:
This will forcibly enable the camera2 API.
Step 6. Save Changes and Reboot
Save the changes in the build. prop and close the text editor.
Now simply reboot your Android device.
Once the device is back on, the camera2 API will now be enabled. You can verify it using any of the apps discussed before.
And that’s it! With those few simple steps, you can easily force enable camera2 API on a rooted Android device. You can now install advanced manual camera apps to take advantage of the powerful camera2 features.
Enable Camera2 API Without Root
If your device is not rooted, don’t worry – you can still enable camera2 API without root access. However, the process is more complex involving editing the APK of a system app.
Here are the steps to enable camera2 API on non-rooted Android devices:
Step 1. Enable USB Debugging
Go to Settings -> About Phone and tap the “Build number” entry 7 times to enable Developer options. Next, enable USB debugging in Settings -> System -> Developer options.
Step 2. Connect to PC and Open ADB
Connect your device to your PC using a USB cable. This will establish ADB access.
Now open a command prompt or terminal on your computer and run the command:
This will check that the device is properly connected.
Step 3. Pull Required System APK
We need to first pull a system APK called
HiddenCameraService.apk that is available on Sony devices.
Run this command to pull the APK:
adb pull /system/app/HiddenCameraService/HiddenCameraService.apk
This will extract the APK from the device and save it on your PC.
Step 4. Decompile APK
Next, we need to decompile the APK into Smali code. You can use APKTool for this:
apktool d HiddenCameraService.apk
This will decompress the APK into a folder named
HiddenCameraService. Navigate inside this folder.
Step 5. Edit Smali Code
Go inside the
smali folder and open the file
com.sonymobile.android.hiddencameraservice.HiddenCameraService.smali in a text editor.
Look for a line containing
const/4 v2, 0x0 and change it to:
const/4 v2, 0x1
This sets the flag to enable camera2 API.
Step 6. Recompile APK
Save changes and close the file. Now recompile the edited APK using:
apktool b HiddenCameraService -o Modified.apk
This will create a new APK named
Modified.apk with camera2 API enabled.
Step 7. Install Edited APK
Connect your phone back to your PC and install the edited APK by running:
adb install -r Modified.apk
Accept any permission prompts on your device. This will install the modded APK enabling camera2 API.
Step 8. Reboot Device
Finally, reboot your Android device. After restarting, camera2 API will now be enabled. Verify it using the methods discussed before.
And that’s how you can enable camera2 API on non-rooted devices! It does involve more complex APK modding steps but gets the job done without root.
Camera2 API – Frequently Asked Questions
Here are some common questions about Camera2 API that you may have:
What devices support Camera2 API?
Most modern Android devices running Android 5.0 Lollipop or higher support Camera2 API. However, OEMs can choose to disable it out of the box. So you may need to enable it manually even if your device is capable.
Will all camera apps work after enabling it?
The default camera app will work normally. However, to take advantage of manual controls and advanced features, you need to install a compatible manual camera app like Open Camera, ProShot, A Better Camera, etc.
Is there any risk or side effects of enabling Camera2 API?
There are no major risks involved. In rare cases, some camera apps may crash or get unstable after enabling the camera2 API. But overall it is safe to enable.
Do I need to root my phone to enable Camera2 API?
No, root access is NOT mandatory. Camera2 API can be enabled without rooting by using the APK modding method. But having roots makes the process much simpler.
Will enabling camera2 API void my device warranty?
Simply enabling camera2 API will NOT void your device’s warranty in most cases. However, rooting the device to enable it can potentially void the warranty depending on OEM policy.
Can I undo the enabling of Camera2 API?
Yes, you can always disable camera2 API anytime by restoring the original build. prop or APK. Just follow the same instructions in reverse.
Will Camera2 API improve image quality?
Directly enabling camera2 API will not affect image quality. To take advantage of Camera2 capabilities like RAW, manual controls, etc you will need to use compatible apps.
How can I tell if camera2 API is enabled successfully?
After enabling the camera2 API, verify it using any of the status-checking apps or methods discussed earlier in this article. The manual camera app working properly is also a good indicator.
Why do some devices not enable Camera2 API out of the box?
OEMs often disable advanced features like camera2 API for stability or compatibility reasons across all of their device models. But higher-end devices are more likely to have it enabled by default.
And that concludes some of the frequently asked questions about Camera2 API.
The Camera2 API unlocks the complete potential of camera hardware on Android devices. With OEMs often disabling it, the ability to manually enable camera2 API lets you take full control of your phone’s cameras.
Enabling Camera2 API lets you shoot professional-grade photos and videos using advanced manual camera applications. Features like RAW capture, manual ISO, focus, and exposure controls truly elevate mobile photography.
While the process differs between rooted and non-rooted devices, it is now possible to force enable camera2 API on any modern Android phone running Lollipop or up.
So go ahead – enable camera2 API and explore the possibilities it unlocks for capturing stunning, pro-level imagery on your smartphone. Just follow the simple methods discussed in this guide based on whether your device is rooted or not.
Mustafa Al Mahmud is the founder and owner of Gizmo Concept, a leading technology news and review site. With over 10 years of experience in the tech industry, Mustafa started Gizmo Concept in 2017 to provide honest, in-depth analysis and insights on the latest gadgets, apps, and tech trends. A self-proclaimed “tech geek,” Mustafa first developed a passion for technology as a computer science student at the Hi-Tech Institute of Engineering & Technology. After graduation, he worked at several top tech firms leading product development teams and honing his skills as both an engineer and innovator. However, he always dreamed of having his own platform to share his perspectives on the tech world. With the launch of Gizmo Concept, Mustafa has built an engaged community of tech enthusiasts who look to the site for trusted, informed takes on everything from smartphones to smart homes. Under his leadership, Gizmo Concept has become a top destination for tech reviews, news, and expert commentary. Outside of running Gizmo Concept, Mustafa is an avid traveler who enjoys experiencing new cultures and tech scenes worldwide. He also serves as a tech advisor and angel investor for several startups. Mustafa holds a B.S. in Computer Science from HIET.