summaryrefslogtreecommitdiffstats
path: root/services/camera
Commit message (Collapse)AuthorAgeFilesLines
* DO NOT MERGE: Camera: Adjust pointers to ANW buffers to avoid infoleakEino-Ville Talvala2016-06-231-0/+8
| | | | | | | | Subtract address of a random static object from pointers being routed through app process. Bug: 28466701 Change-Id: Idcbfe81e9507433769672f3dc6d67db5eeed4e04
* Camera3Device: Validate template IDChien-Yu Chen2016-03-251-0/+8
| | | | | | | | Validate template ID before creating a default request. Bug: 26866110 Bug: 27568958 Change-Id: Ifda457024f1d5c2b1382f189c1a8d5fda852d30d
* Camera: Disallow dumping clients directlyEino-Ville Talvala2016-01-2210-6/+37
| | | | | | | | Camera service dumps should only be initiated through ICameraService::dump. Bug: 26265403 Change-Id: If3ca4718ed74bf33ad8a416192689203029e2803
* DO NOT MERGE: libcameraservice: Fix nullptr crash when no client.Tom Keel2015-10-211-2/+4
| | | | | | | | | | | | | This change prevents a crash in the camera service when the camera HAL notifies the service about the absence of a removable camera and there happens to be no client connected to the service. It checks that the pointer returned from clientToDisconnect.get() is non-null before trying to dereference it (as is done in existing code immediately below this change). Bug: 25165323 Change-Id: I8055654bac980542e63ea7f52bf897eaafbc09bc Signed-off-by: Tom Keel <thomas.keel@intel.com>
* libcameraservice: Fix ALOG prints in FlashLight.Ranjith Kagathi Ananda2015-10-161-4/+8
| | | | | | | | | Add missing __FUNCTION__ arguments into log statements. Ack by: Dilip Gopalakrishna Bug: 25023187 Change-Id: I0256bad626d490fb9360a73c104afaad7a012a97
* Camera: frameworks: Add NULL check for callbackRanjith Kagathi Ananda2015-10-161-1/+5
| | | | | | | | | --Added NULL check for mRemoteCallback Ack by: Susmitha Gummalla Bug: 25023187 Change-Id: Ib88a128a52e81b8ec1052e3222b6d8b9e494afcc
* Merge "Camera: setup vendor tags before get_camera_info" into mnc-dr-devYin-Chia Yeh2015-10-151-6/+7
|\
| * Camera: setup vendor tags before get_camera_infoYin-Chia Yeh2015-10-141-6/+7
| | | | | | | | | | | | | | So HAL can use vendor tags on first get_camera_info call. Bug: 24913201 Change-Id: I73f17de87e3712a27f9cee366995df27a740f5cb
* | Merge "Camera: Add video recording stop sound" into mnc-dr-devChien-Yu Chen2015-10-144-8/+10
|\ \
| * | Camera: Add video recording stop soundChien-Yu Chen2015-10-144-8/+10
| |/ | | | | | | | | | | | | Add video recording stop sound to match MediaActionSound. Bug: 24745252 Change-Id: I84b69757c7e0a98abfaafcce5f41dd45fd41cf74
* | DO NOT MERGE: Fix setTorchMode support for the old HAL versionOleksiy Avramchenko2015-10-141-0/+1
|/ | | | | | | | | | CameraHardwareInterfaceFlashControl class calls disconnectCameraDevice when torch is disabled. This closes connection to the camera module, but mDevice instance is kept and variable is non-NULL which will prevent connection next time torch is going to be enabled. Bug: 24909924 Change-Id: Icb1ffb07f05256afd92821f0f4908cda5332c05b
* Camera3Device: Change HFR request thread priority to 1Chien-Yu Chen2015-10-011-1/+1
| | | | | | | | | Based on periods of the request thread and audio threads with SCHED_FIFO policy, 1 is a more reasonable priority for HFR request thread. Bug: 24427480 Change-Id: I91f0066a0e114fc83abcc6a604ecbaa72c6a34e8
* Camera3Device: Bookkeeping reprocess shutters separatelyChien-Yu Chen2015-09-302-12/+27
| | | | | | | | Bookkeeping reprocess shutters separately so regular and reprocess shutters together don't need to come in order. Bug: 24497512 Change-Id: I4aaf22045131e9e2e26bf163f7df9ff4c5cd6259
* CameraService: Use SCHED_FIFO for request queue thread in HFREino-Ville Talvala2015-09-263-1/+19
| | | | | | | | | | - Move SchedulingPolicyService from audioservice to mediautils - When starting up a high speed stream config, set request queue thread to SCHED_FIFO using SchedulingPolicyService Bug: 24227252 Change-Id: I224b59142bd111caf563779f55cddd62385b9bac
* Merge "Camera: API1 shim: select better default FPS range" into mnc-dr-devYin-Chia Yeh2015-09-151-2/+2
|\
| * Camera: API1 shim: select better default FPS rangeYin-Chia Yeh2015-09-111-2/+2
| | | | | | | | | | Bug: 23992350 Change-Id: Ie86b24d9e5ea753c6dfc2e5526d371b339be96a1
* | Merge "Camera3Device: Signal buffer returned after it failed" into mnc-dr-devChien-Yu Chen2015-09-121-1/+4
|\ \
| * | Camera3Device: Signal buffer returned after it failedChien-Yu Chen2015-09-111-1/+4
| |/ | | | | | | | | | | | | | | Signal buffer returned even after it failed so the thread waiting for it can wake up sooner. Bug: 23981045 Change-Id: Iccbcc7ece2e0f6204da9c54f2bdd96ff6843a8f5
* | Reduce DUMP permission denial output to one line.dcashman2015-09-111-1/+1
|/ | | | | Bug: 23940813 Change-Id: I0060dbaff5cd0c3d028ac5cd7aba7da3f0371150
* CameraService: Add more systracing, fix module init orderEino-Ville Talvala2015-09-092-14/+84
| | | | | | | | | | | | Improve debugging of performance of concurrent calls to the service. - Add ATRACE calls to camera service entry points - Add ATRACE calls for camera HAL module calls - Ensure that camera module init method is called before all others Bug: 23718257 Bug: 23933447 Change-Id: I2a025866ab39eda3962877120cab13a063c7727e
* Merge "CameraService: Link to client binder death at end of connect" into ↵Eino-Ville Talvala2015-09-052-8/+11
|\ | | | | | | mnc-dr-dev
| * CameraService: Link to client binder death at end of connectEino-Ville Talvala2015-09-042-8/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If, within a binder Looper thread, a Binder object death notifier is registered, and then a nested Binder transaction is begun, that transaction may process a death notification callback for the just-registered object, if it was dead at the time of registration. This can lead to an unexpected nested call into the service, and cause deadlock. To avoid this, move the death notifier registration to the end of handling the connect transaction. Also remove one extra bit of disconnect logging. Bug: 23525545 Change-Id: If01cbaf42704f55134118afefc9a8f7bdb014e09
* | Merge "Camera3Device: Clean up next request batch variable" into mnc-dr-devChien-Yu Chen2015-09-052-52/+41
|\ \ | |/ |/|
| * Camera3Device: Clean up next request batch variableChien-Yu Chen2015-09-042-52/+41
| | | | | | | | | | | | | | | | Make the Vector of next requests a RequestThread member variable to avoid memory allocation in every threadloop. Bug: 23360060 Change-Id: I4f33e5c49f0f4deb1f9f45bada0909da748849e4
* | Merge "Camera3Device: Support batch requests" into mnc-dr-devChien-Yu Chen2015-09-048-199/+387
|\ \ | |/
| * Camera3Device: Support batch requestsChien-Yu Chen2015-09-038-199/+387
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Refactor request threadLoop to three parts: waiting for next batch of requests, preparing HAL requests and output buffers for next batch of requests, and submitting the batch of requests to HAL. Set the batch size to the size of the request list if it's a video recording request in a high speed video configuration. Add a flush lock so that HAL's flush() won't be called while submitting a batch of requests. Bug: 23360060 Change-Id: Icd395b1f955a9b336eec6fa5aff6b17741ce08c7
* | CameraService: Treat TOP_SLEEPING same as TOP for priority.Eino-Ville Talvala2015-09-032-0/+7
|/ | | | | | | | | | | | | | | When arbitrating between camera clients, treat processes in the TOP_SLEEPING state with the same high priority as processes in the TOP state. This resolves race conditions during lock screen handoffs between clients such as face unlock (a bound foreground process) and a secure camera app (the topmost activity, but transitioning from TOP_SLEEPING to TOP asynchronously from the activity lifecycle callbacks). Bug: 23731720 Change-Id: I92c3f8f561c7725627826c0ba3dc926e99af746c
* am fe751bea: Camera: Fix flashlight deadlockChien-Yu Chen2015-09-022-3/+5
|\ | | | | | | | | * commit 'fe751bea0d3eedd6e817aebf4e457425b82e7117': Camera: Fix flashlight deadlock
| * Camera: Fix flashlight deadlockChien-Yu Chen2015-09-012-3/+5
| | | | | | | | | | | | | | | | Use a dedicated mutex for torch UID map so it won't cause a deadlock after flashlight app gets killed while the torch is on. Bug: 23722318 Change-Id: I228377aa0412052d56b6b948361d9abaecbbc686
* | Camera3Device: Don't hold mutex during HAL device close.Eino-Ville Talvala2015-08-281-6/+14
| | | | | | | | | | | | | | | | | | The HAL device shutdown will likely need to wait on various events and queues to drain, and holding the mutex will prevent, for example, error notifications from being processed. This can lead to deadlocks. Bug: 23501571 Change-Id: I873ac23ef30545adf533e7839445448573ab5048
* | CameraService: Notify camera service proxy of device statusEino-Ville Talvala2015-08-218-6/+74
| | | | | | | | | | | | | | | | Send the camera proxy service in system server updates to camera device state: opened/closed/active/idle. Bug: 23393557 Change-Id: Id7c70f134821efa34af8f6e7b4caa4c2ab128ebc
* | Merge "Add experimental camera session prepare API." into mnc-dr-devRuben Brunk2015-08-1710-13/+103
|\ \ | |/ |/|
| * Add experimental camera session prepare API.Ruben Brunk2015-08-1410-13/+103
| | | | | | | | | | Bug: 18949148 Change-Id: I8f73e68ea2e3acc60d98954106f364d13f439a82
* | Camera: Add camera type to ICameraService.getNumberOfCameras.Eino-Ville Talvala2015-08-142-14/+96
| | | | | | | | | | | | | | | | | | Also determine the number of 'normal' cameras present on camera service startup, and ensure that all normal cameras have IDs lower than the 'strange' cameras. Bug: 23194168 Change-Id: I1f7b14825cb52707de698a955f85da1eaa932663
* | Merge "Fix deadlock conditions in Camera3Device." into mnc-devRuben Brunk2015-08-132-20/+54
|\ \ | |/ |/|
| * Fix deadlock conditions in Camera3Device.Ruben Brunk2015-08-122-20/+54
| | | | | | | | | | | | | | | | | | | | | | | | | | Potential deadlock conditions this addresses, include: - Not waking up waiting threads for several situations where the status had been updated. - Not waking up all waiting thread when status had been updated (only one thread was awoken due to use of signal). - Threads clear status transitions before other waiting threads have a chance to examine them. Bug: 22448586 Change-Id: I53ba669d333a83d2bfa1ca3170d34acc6d8fe6e3
* | Merge "Camera3Device: Relax InFlightMap size check" into mnc-devChien-Yu Chen2015-08-132-2/+8
|\ \ | |/ |/|
| * Camera3Device: Relax InFlightMap size checkChien-Yu Chen2015-08-122-2/+8
| | | | | | | | | | | | | | | | Relax InFlightMap size check for high speed configurations to allow more pending capture requests. Bug: 23162274 Change-Id: I955fe9a0754f0daed001f4a2b34ccb50f2465a11
* | Camera: Allocate correctly-sized buffers for DEPTH_POINT_CLOUDEino-Ville Talvala2015-08-112-7/+31
|/ | | | | Bug: 20537722 Change-Id: I9fa2fcdcfd41cd3370732c70414914993d3dc94e
* Merge "Fix UAF error in CameraModule." into mnc-devRuben Brunk2015-07-181-2/+3
|\
| * Fix UAF error in CameraModule.Ruben Brunk2015-07-171-2/+3
| | | | | | | | | | Bug: 22542551 Change-Id: I2fe5791a6554a8e2f7fd94593d552d8af18257db
* | Merge "Camera2Client: handle slower jpeg stream sensor" into mnc-devYin-Chia Yeh2015-07-175-18/+154
|\ \
| * | Camera2Client: handle slower jpeg stream sensorYin-Chia Yeh2015-07-165-18/+154
| |/ | | | | | | | | | | | | | | | | | | | | If largest jpeg stream cannot sustain 30 FPS, don't create jpeg stream until takePicture is called and remove it after still capture is done. Also, disable video snapshot for such sensors so video snapshot won't slow down video recording. Bug: 22231605 Change-Id: I2b34d2537c224694ae10f2006b5a46be45a1b1a6
* | Camera: Add hidden experimental tearDown method.Eino-Ville Talvala2015-07-1610-1/+164
|/ | | | | Bug: 18949148 Change-Id: Ie86ec7d1ec3db54e1154563b2339a208a935f849
* Merge "camera2: Fix native binder interface and add tests." into mnc-devRuben Brunk2015-07-071-1/+1
|\
| * camera2: Fix native binder interface and add tests.Ruben Brunk2015-07-061-1/+1
| | | | | | | | | | | | | | | | | | - Add CameraBinderTests for limited coverage of native camera2 binder interfaces for the camera service. - Fix several bugs in the native binder interfaces. Bug: 18468810 Change-Id: Iab2d81a5cacd20daf7454aeeed033cc13d88452c
* | CameraModule: fix getCameraInfo()Chien-Yu Chen2015-07-062-6/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | Remove mCameraCharacteristicsMap. CameraModule kept a CameraMetadata in mCameraCharacteristicsMap and kept its camera_metadata in mCameraInfoMap. When CameraMetadata gets moved in mCameraCharacteristicsMap, it may clone a new camera_metadata and free the old one. So the original camera_metadata stored in mCameraCharacteristicsMap becomes invalid. Bug: 22171288 Change-Id: Ia8e99fe42989946bc952ad23abb296aeac60da83
* | Camera3-Device: Fix AE lock availableChien-Yu Chen2015-06-302-16/+16
| | | | | | | | | | | | | | | | | | Pass whether AE lock is available when creating the request thread because when the request thread was created, its parent's info was not set yet. Bug: 20494782 Change-Id: I11ed3f99c473955c437e81f3e1d704c15a9ca1a4
* | Merge "Camera3: Support AE precapture trigger CANCEL" into mnc-devChien-Yu Chen2015-06-242-31/+124
|\ \ | |/ |/|
| * Camera3: Support AE precapture trigger CANCELChien-Yu Chen2015-06-242-31/+124
| | | | | | | | | | | | | | | | Support AE precapture trigger CANCEL for devices <= API version 3.2. Bug: 20494782 Change-Id: I6003ba8057ca4ec9e8dfda47b8411ae6be913d22