summaryrefslogtreecommitdiffstats
path: root/services/camera/libcameraservice
Commit message (Collapse)AuthorAgeFilesLines
...
* | | Merge "cameraservice: decrease zsl metadata queue size by 1" into lmp-devYin-Chia Yeh2014-08-271-2/+6
|\ \ \
| * | | cameraservice: decrease zsl metadata queue size by 1Yin-Chia Yeh2014-08-271-2/+6
| | |/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | Zsl buffer needs to be longer than metadata queue to ensure that oldest metadata can always find a match in buffer queue. Since we don't want to add memory overhead, decrease metadata queue size by one serves the same purpose. bug 17264283 Change-Id: Ic53441cc29c98e57d3345f5845d92839d0ce6faf
* | | Merge "Camera API1: Fix ZSLProcessor3 deadlock" into lmp-devZhijun He2014-08-271-1/+3
|\ \ \ | |_|/ |/| |
| * | Camera API1: Fix ZSLProcessor3 deadlockZhijun He2014-08-271-1/+3
| |/ | | | | | | | | | | | | | | | | | | | | ZSLProcessor3 shouldn't acquire mInputMutex in onBufferReleased call for output buffers, because the caller (Camera3Stream::returnBuffer) holds the camera3 stream lock already. This could cause deadlock for ZSL reprocess request as it holds the ZSLProcessor3 input lock and try to acquire camera3 stream lock to submit the request. Bug: 17299038 Change-Id: I6a7bf8ebd7c2064852358c655f3a3e9a67769213
* | CameraService: Correct API2 error handlingEino-Ville Talvala2014-08-275-82/+260
|/ | | | | | | | | | | | | | - Add more error codes to the binder camera2 callbacks - Translate HAL errors to callback errors - When flushing, report failures for queued requests - Treat stream config failure as nonfatal - Send request errors when buffers aren't available for captures Bug: 15524101 Bug: 14448494 Bug: 11272459 Bug: 17160301 Change-Id: I81aa54e805a9cce1cb8a6a9374549daa7666deb2
* Camera API1: remove unnecessary buffer count checkZhijun He2014-08-221-9/+0
| | | | | | | | | | This check doesn't work with ZSL use case. Since the ZSL is both an input and output stream, When an input buffer is acquired, checking the handout buffer count for that stream could trigger false alarm when all the output buffers are sent to hal, instead, we should wait for an output buffer to return. Bug: 17188380 Change-Id: I7eb166eb49d2f063189d993195ef389d2cf4f2b4
* Merge "Camera: fix triggerId logic" into lmp-devYin-Chia Yeh2014-08-222-2/+13
|\
| * Camera: fix triggerId logicYin-Chia Yeh2014-08-212-2/+13
| | | | | | | | | | | | | | | | | | Fix missing triggerId introduced by previous cleanup change. bug 17108154 bug 17053130 Change-Id: Ifda55d5fbe992d98f335a8427aa256d78a856586
* | Merge "camera: Configure streams immediately when API2 does configuration" ↵Igor Murashkin2014-08-216-3/+49
|\ \ | | | | | | | | | into lmp-dev
| * | camera: Configure streams immediately when API2 does configurationIgor Murashkin2014-08-206-3/+49
| | | | | | | | | | | | | | | | | | | | | | | | | | | This makes the configuration more eager (no more waiting until the first request) and also allows any errors to immediately be sent back to the client. Bug: 16629195 Change-Id: I0c365bc8f760466916dcc089217a43c43f9f4c9d
* | | Merge "camera: zsl: remove AF check if no focser presents" into lmp-devYin-Chia Yeh2014-08-212-15/+26
|\ \ \ | |/ / |/| |
| * | camera: zsl: remove AF check if no focser presentsYin-Chia Yeh2014-08-212-15/+26
| |/ | | | | | | | | | | | | | | | | If there is no focuser, don't check AF state while picking ZSL candidate frames. bug 17164077 Change-Id: Ib56e260249dcfb1b3bafea22abeb3abeae4e2c1a
* | camera: hal3: Remove register_stream setprop checkIgor Murashkin2014-08-191-12/+1
| | | | | | | | | | | | | | camera3_device_t::register_stream must always be NULL in HAL3.2+ cameras Bug: 13914251 Change-Id: I116ee71135a827c8b4db61cd91f56ba56da3f0ef
* | camera: Allow shutter sounds to be disabled from camera2 apiIgor Murashkin2014-08-196-32/+61
|/ | | | | | | | | | | When using the connectLegacy binder interface (available only through an @hide java api), then consider the camera to be in the camera2 api legacy mode. In legacy mode, allow disabling the shutter sound unconditionally. Bug: 17109582 Change-Id: Ieb3fc61ff111d792cc657c018e278349c25472cf
* Merge "cameraservice: update supportedFocusModes for api1" into lmp-devYin-Chia Yeh2014-08-191-2/+11
|\
| * cameraservice: update supportedFocusModes for api1Yin-Chia Yeh2014-08-141-2/+11
| | | | | | | | | | | | | | | | Do not list infinity focus mode if the focuser is not calibrated. bug 13933979 Change-Id: I677ed22305703ac09eeaf986f5bc2a680cececd8
* | camera: Fix setParameters for Preview FPS single/range valuesIgor Murashkin2014-08-182-44/+121
|/ | | | | | | | | | | | | As a workaround, duplicate CameraParameters into CameraParameters2 to prevent ABI break for some camera HALs that directly link into CameraParameters. CameraParameters2 implements the real fixes needed in the framework, while CameraParameters is left in to satisfy older camera HALs. Bug: 12609188 Bug: 16654949 Change-Id: I82ea6f5de2183dd046d4bf5683600c97f37ab4da
* Merge "Camera API1: Ignore the video size change during recording" into lmp-devZhijun He2014-08-121-14/+19
|\
| * Camera API1: Ignore the video size change during recordingZhijun He2014-08-111-14/+19
| | | | | | | | | | | | | | Ignore the video size parameter change when recording is active. Bug: 16524513 Change-Id: I55b7c961c06199764486f48bc2187838c2279606
* | Merge "camera: Allow Camera#getParameters to be called by mediaserver ↵Igor Murashkin2014-08-112-2/+4
|\ \ | | | | | | | | | anytime" into lmp-dev
| * | camera: Allow Camera#getParameters to be called by mediaserver anytimeIgor Murashkin2014-08-072-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | This fixes a crash if the camera was locked by the media recorder and another process tried to get the legacy parameters (for the camera characteristics). Bug: 16695955 Change-Id: I945a16a686a6987150c8754b5296353e76e5afa0
* | | Camera2/3: Cleanup the jpeg buffer size calcaulation logicZhijun He2014-08-1111-56/+45
| |/ |/| | | | | | | | | | | | | | | - Only one place calculating the jpeg size-the device layer, Camera2Device and Camera3Device. - Remove size argument for CameraDeviceBase and cleanup related code. Bug: 14327010 Change-Id: I45d2ab4859ee0cc9273e579254f0569108c748f1
* | Camera: Need consider AF state for ZSL buffer selectionZhijun He2014-08-061-0/+16
|/ | | | | Bug: 16569983 Change-Id: I65e604e382ac0b98777155ad480ec3f6071e1a76
* cameraservice: disallow zsl/recording coexistentceYin-Chia Yeh2014-08-051-1/+33
| | | | | | | Make sure ZSL and recording stream does not exist at the same time. Change-Id: I19e28dedd9dd5cc5118449860b612a5c950fdaec
* CameraService: Replace deprecated native_window methodsEino-Ville Talvala2014-07-282-17/+30
| | | | Change-Id: I3be5a720ac8b488d1e507c606a9146480faeef63
* CameraService: Clean up availability listeners and HAL error codesEino-Ville Talvala2014-07-286-61/+68
| | | | | | | | | | | - Refactor where availability listeners are called to centralize behavior, ensuring that all client creation/destruction invokes the listeners - Clean up some of the client hierarchy - Filter error codes from key HAL calls to ensure proper reporting Bug: 16514157 Bug: 16483222 Change-Id: I59875a865b6a508b47423946c78862da8df34cd1
* Camera3: tear down Camera3 streams when they are deleted.Zhijun He2014-07-245-2/+21
| | | | | | | | | Also override the disconnectLocked method in Camera3ZslStream to make sure the Camera3ZslStream specific buffer queue is cleaned up properly. Also revert 0be123df1897fd3fe1b7ba30f24d8ae4c91b4dc7, as it was not the right fix. Change-Id: I89bdcb2e206379ae1f2602421e7fdbcde9a31399
* Merge "Camera3: only append partial result to partial result collection" ↵Zhijun He2014-07-221-2/+3
|\ | | | | | | into lmp-dev
| * Camera3: only append partial result to partial result collectionZhijun He2014-07-221-2/+3
| | | | | | | | | | | | Otherwise, the metadata entries will be duplicated. Change-Id: If0cd96e09960fdf746a70913d380e9036745a944
* | camera: clear ZSLQueue when switching modesRuchit Sharma2014-07-221-0/+1
| | | | | | | | | | | | | | not clearing the queue here will eat up unnecessary memory every time we switch from video to still mode. Change-Id: I279ec709b485ca0dab672464e5b829be849bcaa5
* | Merge "cameraservice: remove record stream in stopPreview" into lmp-devYin-Chia Yeh2014-07-221-0/+7
|\ \ | |/ |/|
| * cameraservice: remove record stream in stopPreviewYin-Chia Yeh2014-07-181-0/+7
| | | | | | | | | | | | Remove recording stream every time stopPreview is called. Change-Id: Iabb783a75418aa41ddc2693cfdfd5a2131109070
* | Camera HAL3: migrate from partial quirks to partial resultZhijun He2014-07-1610-75/+170
| | | | | | | | | | | | | | | | | | | | - Enable the normal partial result path for HAL3.2, the quirk is only used for the HAL version lower than HAL3.2. The partial quirks is no longer supported for HAL3.2 or higher versions. - Add CameraDeviceBase getDeviceVersion API. - Fix some build warnings Change-Id: I7a1b03d4d5fd5258d2addfba4368bee2ba691337
* | camera2: Set orientation flags for hardware composer.Ruben Brunk2014-07-141-84/+2
|/ | | | | Bug: 15116722 Change-Id: I3fcc9aea38afcbd665f86c511a9929fe9a6a3a8f
* Camera3: Add capture intent for ZSL captureZhijun He2014-07-084-10/+56
| | | | | | Also fix the warning condition in input buffer return path. Change-Id: I90e9edc1db9f1de87bc8936000b00c3306160c71
* Merge "av: native_window_set_buffers_geometry is deprecated."Eino-Ville Talvala2014-07-061-2/+7
|\
| * av: native_window_set_buffers_geometry is deprecated.Pierre Couillaud2014-07-071-2/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | native_window_set_buffers_geometry is deprecated, but __set_buffers_geometry is still used for device1 camera support. replace deprecated call with its equivalent combination of native_window_set_buffers_dimensions and native_window_set_buffers_format. Change-Id: I4940367dcae6049451508bfdfc11c16907ec1afc Signed-off-by: Pierre Couillaud <pierre@broadcom.com>
* | Camera3: only return input buffer when it is sent in requestZhijun He2014-07-072-19/+51
| | | | | | | | | | | | | | | | | | | | This is to WAR the case where HAL sends non-NULL input_buffer in capture result even capture framework doesn't send input buffer in the request. It's very likely the input_buffer is uninitialized, and we shouldn't use it. Log a warning for such case as well. Bug: 16115675 Bug: 16117312 Change-Id: Ib299b45fbfe084059a9f546ded239c8094b039e2
* | Camera3: fix ZSL processor3 issuesZhijun He2014-07-027-38/+109
|/ | | | | | | | | | | | | | | | - Return input buffer in capture result. Per hal3.2 spec, we should return the input buffer in process capture result rather than immediately after process capture request. - Make the depths of mZslQueue and mFrameList the same. It doesn't make sense mFrameList depth is larger than mZslQueue depth. - Set the depths of mZslQueue and mFrameList based on pipelineMaxDepth. - Clear result queue while clearing zsl buffer queue. - Hook up camera3 buffer listener with ZslProcessor3, make sure that adding the same listener multiple times has no effect. - Remove flush call in pushToReprocess, it is a guaranteed deadlock once camera3 buffer listener is hooked up. Change-Id: I285155ab4241e827145855d628f8e98b881c01d5
* Camera API1/2: don't register the same listener multiple timesGaurav Batra2014-06-282-1/+14
| | | | | | | | | | | | FrameProcessorBase allows register the same metadata result listener multiple times with the same range IDs, which causes the same metadata result is delivered multiple times for the same listener. This is problematic as client like ZslProcessor's updateStream is called multiple times between captures, and each updateStream calls registerListener unconditionally. The the ZSL metadata result queue will be flooded with same metadata result multiple times and the number of same result will keep growing until the queue is full. Change-Id: I2ff7808e5dce61068a7111e7fbbce2aba95198cd
* Camera1: Don't send partial results to ZSL clientsZhijun He2014-06-278-14/+25
| | | | | | | | | ZSL clients expect each received result as a complete result, and send back to HAL as a reprocess capture request. CaptureSequencer client assumes results to be non-partial too, it need look into some metadata that may not be present in partial results. Change-Id: Id716913fd6e1c914726abd6610fddf91141783c2
* Merge "cameraservice: Deprecate triggerId tags"Yin-Chia Yeh2014-06-253-28/+42
|\
| * cameraservice: Deprecate triggerId tagsYin-Chia Yeh2014-06-243-28/+42
| | | | | | | | | | | | | | | | | | | | The following two tags are deprecated from HAL 3.2: ANDROID_CONTROL_AF_TRIGGER_ID ANDROID_CONTROL_AE_PRECAPTURE_ID Trigger IDs are now internal to camera service. Change-Id: Iaebd62ecb0905a811fa37fe7850e0221c38a0006
* | Camera: Clear ZSL buffer queue when jpeg size is changedZhijun He2014-06-231-0/+17
|/ | | | | Bug: 15284653 Change-Id: I4778e8443945d918801102ba600874568bde12dc
* Camera2: get stream configs by device verisonYin-Chia Yeh2014-06-209-82/+231
| | | | | | | | | | | | | | | | Starting from device version 3.2, the following tags: ANDROID_SCALER_AVAILABLE_FORMATS ANDROID_SCALER_AVAILABLE_JPEG_MIN_DURATIONS ANDROID_SCALER_AVAILABLE_JPEG_SIZES ANDROID_SCALER_AVAILABLE_PROCESSED_MIN_DURATIONS ANDROID_SCALER_AVAILABLE_PROCESSED_SIZES ANDROID_SCALER_AVAILABLE_RAW_MIN_DURATIONS ANDROID_SCALER_AVAILABLE_RAW_SIZES are deprecated and replaced by: ANDROID_SCALER_AVAILABLE_STREAM_CONFIGURATIONS Change-Id: Iadc34af0ea985a16a25759d7a9a3eb4845c486fd
* Merge "Camera2: Fix lastFrameNumber counter in flush case"Yin-Chia Yeh2014-06-202-0/+26
|\
| * Camera2: Fix lastFrameNumber counter in flush caseYin-Chia Yeh2014-06-202-0/+26
| | | | | | | | | | | | | | Decrement the counter for those repeating requests never sent to device. Change-Id: I2064e51cb5d509d86dbde4a89e8157de33f574b0
* | Merge "Camera2/3: Don't release recording buffer when stream is active"Zhijun He2014-06-201-4/+7
|\ \
| * | Camera2/3: Don't release recording buffer when stream is activeZhijun He2014-06-181-4/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | It is dangerous to release all recording buffers when recording stream is actively sending buffer to encoder. This change only releases all buffers when recording stream is idle and recording stream is about to start. Bug: 15667833 Change-Id: Ia4a84cac84a2062c13333467c66698273ffb0e23
* | | libcameraservice: 64-bit compile warningsMark Salyzyn2014-06-201-2/+2
| | | | | | | | | | | | Change-Id: I168332a0d4699f6f5597d4883342aa7af7ed92c6