/dgCam

📸 Custom camera for Android created for testing, playing and learning

Primary LanguageJavaMIT LicenseMIT

dgCam

dgCam is a small custom camera app for Android that i had to do for one of the application that we develop at work. We needed more control over the generated photos. Sadly since Android is so fragmented and there is no standards in anything, we could not rely on the built in camera apps. Every manufacture of Android devices have a different approach to the camera and the worst part is: there is no guarantee that if you send your custom settings to the camera - the software will take them in consideration.

For example:

  1. Samsung device could care less about the resolution that we wanted - it always took the photos at the higher resolution.
  2. HTC devices would crop the photos. So if your device says that you have a a camera with a 5Mpx sensor, in reality the camera will produce a 4,4Mpx photo.

This is why i created the custom camera app. While developing i had to reinvent the wheal many times for different stuff since Google dose not provide basic functionality that Apple dose in its iOS. A good example is the accelerometer. In both system you can get the raw data, but Apple gives you something more. You can get the orientation of the device if this is all what you need.

Dowload the dgCam from the Android Market

If you would like to see how this app looks and works, you can dowload it from the Android Market at this URL: https://market.android.com/details?id=pl.gatti.dgcam

What can you find here

  1. How to create a custom camera.
  2. How to apply custom settings.
  3. How to add Exif data to a photo.
  4. How to calculate the orientation of the device based on Earth gravity.
  5. How to rotate a image on a buton based on the orientation of the device.
  6. How to create a layout where you can put elements on top of each other.

Many thx to:

  • Janusz Bossy, for helping me out when i was stuck in something! You are osom! :)

Contribution

  • Fork project
  • Add features
  • Add better comments
  • Write a better README file - sorry, english is not my main language.

The End

If you enjoyed this project, please consider giving it a 🌟. And check out my GitHub account, where you'll find additional resources you might find useful or interesting.

Sponsor 🎊

This project is brought to you by 0x4447 LLC, a software company specializing in building custom solutions on top of AWS. Follow this link to learn more: https://0x4447.com. Alternatively, send an email to hello@0x4447.email.