summaryrefslogtreecommitdiffstats
path: root/camera/exynos_camera.c
Commit message (Collapse)AuthorAgeFilesLines
* camera: Reduce preview resolution to speed up the preview a little bitreplicant-6.0-0001Wolfgang Wiedmeyer2017-01-041-4/+4
| | | | Signed-off-by: Wolfgang Wiedmeyer <wolfgit@wiedmeyer.de>
* camera: switch to CyanogenMod's version of the free software cameraWolfgang Wiedmeyer2016-03-181-0/+3887
| | | | | | | | | Replicant's version locks up, sometimes already after taking only one picture. CyanogenMod's camera seems more stable. Only the preview format was changed to RGB565. TODO: Incorporate fixes from both version. Signed-off-by: Wolfgang Wiedmeyer <wolfgit@wiedmeyer.de>
* remove CyanogenMod's version of the free software cameraWolfgang Wiedmeyer2015-12-221-3883/+0
| | | | | | | | | it does not make sense to have the Replicant and CyanogenMod version in there currently the Replicant version is in use also remove an unnecessary comment in common.mk Signed-off-by: Wolfgang Wiedmeyer <wolfgit@wiedmeyer.de>
* smdk4412-common: camera: don't propogate cancel autofocus in CAFDheeraj CVR2014-12-291-6/+6
| | | | | | | | Setting AUTO_FOCUS_OFF during CAF mode seems to be dangerous and hangs the sensor. Hence, we only propogate V4L2_CID_CAMERA_SET_AUTO_FOCUS if we have previously started the Autofocus (Manual/Touch). Change-Id: Ia081257c16f2b7a2e2d6a1e93e239179f39c3fec
* Video snapshot & OptimizationsDheeraj CVR2014-08-011-1168/+386
| | | | Change-Id: Ifb001b5854bb47c5af74a9b5d0e63b224aa901aa
* Revert "camera: Fix loss of focus mode between shots"Dheeraj CVR2014-05-011-3/+5
| | | | | | | | | | | This reverts commit 40279ba1fd2d4f02d889699df1eccf3d3a01df55. V4L2_CID_CAMERA_FOCUS_MODE has the side effect of resetting the sensor AF position. Hence, the focus is lost each time SetParameters is called and this happens during a snapshot resulting in out of focus pictures. Change-Id: Ia644b62e3752196c0637053150af7899155d6a47
* smdk4412-common: camera: Proper recording memory releasePaul Kocialkowski2014-03-241-0/+8
| | | | Change-Id: I4cb029f64564a6e5e41b36af6bdb3f35ac1fc464
* smdk4412-common: camera: release face detection memory when capture stopsDheeraj CVR2014-03-241-0/+10
| | | | Change-Id: I6724ce6dde3c4b6242a06b73808905a6de094d4a
* smdk4412-common: camera: Don't set focus to FOCUS_MODE_TOUCH after taking a ↵Javier Ferrer2014-03-231-2/+6
| | | | | | | | | | picture After picture has been taken in stock camera app, FocusAreas is resetted to the center of the preview screen, causing the HAL to detect the non (0,0,0,0,0) as a tap in the screen. Change-Id: Id41d108c6bb59a05a0a98efbaef51d14f50741fd
* smdk4412-common: camera: properly enable touch to focus modeDheeraj CVR2014-02-011-20/+25
| | | | | | | | | Touch to focus is not properly enforced unless the focus mode is set to FOCUS_MODE_TOUCH. https://github.com/CyanogenMod/android_kernel_samsung_smdk4412/blob/cm-11.0/drivers/media/video/s5c73m3.c#L1857 Change-Id: I67236ae7ae687fbc0b7450102d744472a81def99
* camera: Hold 25 msec between preview cycles on restartRicardo Cerqueira2014-01-271-0/+2
| | | | | | | | | If doing a preview restart with an active listener, give said listener a bit of time to clean up before starting up the preview again. This should be sufficient to prevent shutdown/start race conditions during externally triggered restarts. Change-Id: Id4a722c472eeffb50a332b0dabc29d9e23062883
* smdk4412-common: camera: implement CAMERA_MSG_FOCUS_MOVE to report CAFDheeraj CVR2014-01-121-9/+57
| | | | | | | | | | | Since we are querying the status of CAF in real time, implement CAMERA_MSG_FOCUS_MOVE to report the CAF status. Also monitor the state of AutoFocus and report success or failure only when AutoFocus has started. This prevents reporting false AutoFocus status which relates to the previous AutoFocus result. Change-Id: Icb151dca150f932b42b276c45ec392e3dae413cc
* Merge "smdk4412-common: camera: don't defer picture if CAF is in progress" ↵Daniel Hillenbrand2014-01-041-12/+5
|\ | | | | | | into cm-11.0
| * smdk4412-common: camera: don't defer picture if CAF is in progressDheeraj CVR2013-12-291-12/+5
| | | | | | | | | | | | | | | | | | | | | | CAF is considerably slower than Auto or Touch Focus and since we are deferring the picture while CAF is in progress, there are delays while taking the picture and these delays are sometimes huge. Disregard the CAF state since we could Touch to Focus if required. Change-Id: If981f6402cc97e0781060dc48fa7d8e44288168f
* | camera: Fix loss of focus mode between shotsRicardo Cerqueira2014-01-021-25/+21
|/ | | | | | | | | | | | exynos_camera->focus_mode can't be relied upon to verify the previous state, since a snapshot will reset the focus state. This was causing any mode besides auto-focus (enum 0) to fail after the first photo was taken, including the default continuous-picture. Always make sure the focus-mode is up to date when set_params is called Change-Id: I8e6f52093ad897bcf04bc5047bb1fcd4f109dc55
* smdk4412-common: camera: squashed updates from cm-10.2Dheeraj CVR2013-12-141-250/+349
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | smdk4412-common: camera: fix EXIF attributes for S5C73M3 sensor S5C73M3 sensor which is the back camera, doesn't return the EXIF attributes using V4L2 IOCTL. This sensor interleaves YUV and JPEG frames along with Metadata which contains the EXIF information. This patch does the following: Manually extract the EXIF information from the interleaved metadata and implement ISO, Flash, Exposure, Exposure Time and Exposure Bias EXIF attributes for S5C73M3. Fix incorrect Exposure EXIF attribute that was reporting as 1'. Change-Id: Id9faa64af498645099cccc9cbf28f2dbdfecd254 smdk4412-common: camera: fix scene mode snapshot capture crashes Few Scene Modes (like Night, High Sensitivity) if set as default, after the camera opens, require the scene mode to be set when the stream is turned on inorder to properly take effect. Not doing so will result in crashes while trying to capture the snapshot. Change-Id: I9e6b67c59699495da6922ac737232f58d98c2b40 smdk4412-common: camera: reorganize camera parameters Few Scene modes require Flash and few don't. However all of the scene modes require the focus to be AUTO. Reorganize the camera parameters to set the Flash and Focus modes based on the scene mode. Changes adapted from Exynos5 Camera HAL. Change-Id: If3ab62a1d8aecf84d2a04d1e899f71d4315a66ea Conflicts: camera/exynos_camera.c smdk4412-common: camera: several fixes for autofocus Setting the AutoFocus off using V4L2_CID_CAMERA_SET_AUTO_FOCUS will reset the AF position of the sensor and this was done whenever autofocus was completed. This totally defeated the purpose of touch to focus since the sensor AF position was being reset after focus and had to be refocussed while taking the snapshot. This also led to several issues with third party applications since this kind of focus behaviour was not intended. S5C73M3 Back camera Interleaves YUV and JPEG along with metadata. This metadata contains the AutoFocus result. Hence we could parse the autofocus result instead of using V4L2 IOCTL, which is more efficient. Also, the sensor exhibits issues when AutoExposure and AutoWhite Balance locks are used with Flash ON. Improper locking could lead to freezing of the sensor while taking a snapshot. Hence, only lock AEAWB when flash is OFF and unlock them after AutoFocus finishes. Change-Id: Ief28005dcacd0f8f04990ef8eafebff4a2f109d5 smdk4412-common: camera: enable ZSL mode on front camera We are querying FIMC2 for the capture output and hence we have no reason to restart the preview to have the preview resolution match the capture resolution, which is not how Zero Shutter Lag works. We could have different resolutions for the preview and capture, hence don't stop the preview for resizing. Change-Id: Iaf2b4d0c51dbedb9516b7c3cdde09aa18cd95f73 smdk4412-common: camera: fix incorrect jpeg thumbnail height Change-Id: I139823883d91ddaa48e2516511539ff5fe150e25 smdk4412-common: camera: fix heap corruption Change-Id: I0111615b9d4552a7880598a83bc98060fa900b13 smdk4412-common: camera: include support for face detection Change-Id: I1d176bdf17abdcf0c593fceb01808348b87b75ce
* exynos_camera: update sports scene namemcampbellsmith2013-12-061-2/+2
| | | | | | | The 'sports' scene mode has been renamed to 'action' scene mode to match the 4.4 camera configuration Change-Id: I1efcd57f137ee0d73f22ab20031832c7f283381c
* camera: Fix disabling locationRicardo Cerqueira2013-10-301-0/+9
| | | | | | | | | | | If Camera.removeGpsData() is invoked from the userland API, we must invalidate the previously stored GPS data to prevent it from being saved in EXIF. Fixes the invalid storing of location data after an explicit disable Fixes android.hardware.cts.CameraTest#testJpegExif Change-Id: I9618a27ab9def974bac1d69871c3454300fb4c29
* camera: Fix invalid parameter returnsRicardo Cerqueira2013-10-301-4/+22
| | | | | | | | | | | The camera API expects invalid parameters not to return silently; They should throw an exception, and set the bad parameter(s) back to the last known good value. Fixes android.hardware.cts.CameraTest#testImmediateZoom and android.hardware.cts.CameraTest#testInvalidParameters Change-Id: I6556369322b7560b0bb35fca57366b42579effbd
* camera: Fix various focus-related errorsRicardo Cerqueira2013-10-301-7/+36
| | | | | | | | | | | | * Validate that the focus region is within legal boundaries * Reset the region to sane values if bad ones are given * Set a default empty region * If auto focus exists, it must be the default Fixes android.hardware.cts.CameraTest#testFocusAreas and android.hardware.cts.CameraTest#testParameters Change-Id: I3aafcccc2c6081ba44edb3283a850c55178fa90a
* camera: Fix android.hardware.cts.CameraTest#testFaceDetectionRicardo Cerqueira2013-10-301-0/+7
| | | | | | junit.framework.AssertionFailedError: Should throw an exception if face detection is not supported. Change-Id: I2cf8d26e94c0943838db7300ab05b4c0172b15c1
* camera: Block out endlessly looping focus clauseRicardo Cerqueira2013-10-291-0/+2
| | | | | | | | | | | capture_auto_focus_result isn't updated from any realtime focus callback, so waiting for it to change in order to complete the capture introduces delay, and in some cases an infinite loop. Remove the focus state verification, at least until such a callback can be put in place. Change-Id: If4c6815563cb63009e717ee65a0a8fb816cc813e
* camera: Wait for continous focus to complete before taking a picturePaul Kocialkowski2013-10-081-0/+5
| | | | | Signed-off-by: Paul Kocialkowski <contact@paulk.fr> Change-Id: I2aef0e3e413c9a8708fe1c87860beb287c844a1c
* camera: Add AWB and AE lockJavier Ferrer2013-10-081-0/+70
| | | | | Signed-off-by: Paul Kocialkowski <contact@paulk.fr> Change-Id: Idea7b7af7eb7adb4e02e6f527dda96e78f3e0f16
* Revert "camera: Add AWB and AE lock"Paul Kocialkowski2013-10-081-64/+0
| | | | | | This reverts commit 7607d3d42484c80b5689e7cb0362bfbe40daf263. Change-Id: I6f222c23cff1526ec6c9d0b0ae874e5652d861cb
* camera: Add AWB and AE lockJavier Ferrer2013-10-051-0/+64
| | | | Change-Id: I5ac305414a4d1af61fe4434fc89e794121196bdf
* camera: add image-stabilization parameterJavier Ferrer2013-09-201-0/+32
| | | | | | Focal will find it and will enable it before taking shot, disabling it after the shot is taken. Change-Id: I476f2d13e6662f211d395d432c855d70ba53d61f
* camera: improve taking shot with focal on low light conditionsJavier Ferrer2013-09-121-1/+3
| | | | | | | I have taken borrowed the scene mode "high-sensitivity" for this purpose. Maybe can we find a better scene mode for it in the future. Change-Id: I3e7379a7b8e8e0f982f2dc125174dd30617d39ed
* camera: auto antibandingJavier Ferrer2013-09-091-2/+2
| | | | | | Add 60 Hz and auto antibanding, with "auto" as default. Change-Id: I460524f70afe0ac0aa0bf4c0be9a81acc4dbbb94
* camera: Fix camera crashing when bashing shutterXpLoDWilD2013-09-061-1/+7
| | | | | | | | | Prevents the picture thread from being restarted or freezing when it is already started, or when auto-focus is being done. Prevents gallery crash. Change-Id: Ib540f2a47423778b45dfc8df440e33b2ac254ae8
* smdk4412: add opensource camera halPaul Kocialkowski2013-09-011-0/+4318
Change-Id: Icb555cc6158247c32a6feb5d846bcf4d727749af