summaryrefslogtreecommitdiffstats
path: root/camera
Commit message (Collapse)AuthorAgeFilesLines
* ProCamera: Add CpuConsumer asynchronous mode supportIgor Murashkin2013-02-282-3/+74
| | | | | | Bug: 8290146 Bug: 8291751 Change-Id: I25423a2b8a70ac7169911b1c7b482aa17190fe0f
* Camera: Drop ProCamera connections when a Camera connection happensIgor Murashkin2013-02-285-12/+274
| | | | | | | * Also adds an ICameraServiceListener with available/not available statuses Bug: 8291653 Change-Id: I24680f1a2dc109510caf451cf7c7bd180b670d84
* ProCameraTest: Drop frames test move processing delay between lock/unlockIgor Murashkin2013-02-281-5/+5
| | | | | | | * This makes it more likely to find races with the buffer being unlocked by itself Change-Id: I1fa7dbfb73f60664a02a35678b58bcc9b06893a2
* camera_client: refactor Camera/ProCamera commonalities into BasicCameraIgor Murashkin2013-02-265-249/+283
| | | | Change-Id: Ie10a4094522d49683657665fe94ab0b7ccd280e9
* CameraService and Stagefright: Support AppOpsEino-Ville Talvala2013-02-252-5/+15
| | | | | | | | | | | | | Camera: - Signal to AppOpsService when camera usage starts and stops - Listen to permissions revocations and act on them - Currently just kill camera connection when permissions lost Stagefright: - Pass on client name, UID to camera as needed Bug: 8181262 Change-Id: I9e33c9d05e9daa77dbb2d795045d08eb887ec8f0
* ProCamera: Fix waitForFrameBuffer not handling multiple outstanding framesIgor Murashkin2013-02-222-10/+88
| | | | | | | | | | | If the CpuConsumer triggered multiple onFrameAvailable callbacks in between a single waitForFrameBuffer call, the old code would only handle 1 callback. This meant on two subsequent waitForFrameBuffer calls the second would always timeout when two buffers were already available to be unlocked. Bug: 8238112 Change-Id: Ibefca35005ac5c408e5ada97ec4a4344a9e3e497
* ProCamera: add waitForFrameBuffer/waitForFrameResult blocking callsIgor Murashkin2013-02-222-22/+260
| | | | Change-Id: I851d41aeecaa15245d5b9d622132e8706d6e292c
* Camera: ProCameraTests: clean up a bit, still needs more cleanupIgor Murashkin2013-02-221-79/+116
| | | | Change-Id: Ia7e18c81002c8d98176f21553cf13cbd13cfdf5d
* ProCamera: Add getInfo for getting static metadata (and a test)Igor Murashkin2013-02-223-5/+78
| | | | Change-Id: I3b87dfbc621d98bf41f37a892a1012baf85b5166
* Camera: ProCamera - implement onResultReceived callback for metadata callbacksIgor Murashkin2013-02-223-12/+159
| | | | Change-Id: I46775402b007244bc383d6343a620eebbd492aad
* Camera: ProCameraTests - add CpuConsumer tests for dual streamsIgor Murashkin2013-02-221-2/+166
| | | | Change-Id: Ia010450dc79ac2841645b8c2e1553c9ec74ee5e3
* Camera: ProCamera - add createStreamCpu and unit testIgor Murashkin2013-02-222-51/+235
| | | | Change-Id: I468172dbfdd78510b273bf9d119c950cbeda7ea3
* Camera: Change ProCamera to take IGraphicBufferProducerIgor Murashkin2013-02-222-8/+12
| | | | Change-Id: Iec62eead6d179aa5486f7719143340976bb76e7d
* Camera: ProCamera2Client - add createStream (service is stubbed) and unit testIgor Murashkin2013-02-223-54/+169
| | | | Change-Id: I1ae7ba9b24f5883c214c19a7ed0eaf0c802d69c1
* Camera: ProCamera - add createStream stub and unit test for itIgor Murashkin2013-02-222-1/+179
| | | | Change-Id: Ic05130e63f4f2c0c3278ba348b192992169f105f
* Camera: ProCameraTests - add asynchronous locking unit testIgor Murashkin2013-02-221-5/+41
| | | | Change-Id: Ib79eb84046c9ed898bfb086a6600265fc351924c
* Camera: ProClient add asynchronous locks and suchIgor Murashkin2013-02-224-4/+221
| | | | Change-Id: I551e5e5e76d9be733fab5224beaa7309268c0f38
* Camera: Add ProCamera private binder interface for an API2-light functionalityIgor Murashkin2013-02-228-2/+731
| | | | Change-Id: I2af7a807c99df75ea659e6e6acc9c4fca6a56274
* Camera: Add unit test infrastructure for libcameraclientIgor Murashkin2013-02-223-2/+68
| | | | Change-Id: I957538663ae8332d26f3640c63a75efc79f4ac5c
* Camera: Add exists function to CameraMetadataIgor Murashkin2013-02-221-0/+5
| | | | Change-Id: I081f61417fca7c8408e9e767129647ddce5364ab
* Camera: Move CameraMetadata.h from service to client libraryIgor Murashkin2013-02-222-1/+304
| | | | Change-Id: I940ce86f318f37ae5b73f912a6e589415150125f
* Rename ISurfaceTexture and SurfaceTextureAndy McFadden2012-12-182-11/+12
| | | | | | | | | | The C++ class names don't match what the classes do, so rename ISurfaceTexture to IGraphicBufferProducer, and SurfaceTexture to GLConsumer. Bug 7736700 Change-Id: I64520a55f8c09fe6215382ea361c539a9940cba5
* Camera: Add HDR scene mode constants.Eino-Ville Talvala2012-09-101-0/+1
| | | | Change-Id: I78b1f8ca3c1a03222ed363db26d9a09cf0b13528
* Camera2: Add a burst mode skeleton.James Painter2012-09-071-0/+5
| | | | | Bug: 6243944 Change-Id: I7f496ca1051571c68fdd99a6f85bf6a908a4e29a
* Camera: Add OPAQUE pixel format to CameraParametersEino-Ville Talvala2012-07-181-0/+1
| | | | | | | | This is only used to support recording with HAL 2 in the KEY_VIDEO_FRAME_FORMAT parameter, and is not exposed to applications. Bug: 6243944 Change-Id: I5976a748d199ae98189bd03af5bbd9e18cbd6bf0
* Add NOTICE and MODULE_LICENSE_APACH2 to libs build under /frameworks/av/James Dong2012-06-132-0/+190
| | | | | Change-Id: I0a3af3e2abdedebd5934f3d941d01c32cfc75e26 related-to-bug: 6647465
* Remove new camera connect API.Wu-cheng Li2012-04-192-10/+4
| | | | | | | | Applications are not resumed under the lock screen now. This API is not needed anymore. bug:5584464 Change-Id: I115daf6b647348617ec0fc05b626878c945b9b29
* Add a new camera open API that allows taking the ownership.Wu-cheng Li2012-03-152-5/+10
| | | | | | | | | | | | | | The purpose is to let face unlock always get the camera successfully. What happened was the camera applications may have opened the camera in onResume under the lock screen. This API lets face unlock take the camera from the camera application. A new permission will be added, so other applicatoins won't be able to take the camera from the face unlock. bug:5584464 Change-Id: Ib3d9dcbc2161815b68db42327dc01148453704c6
* fix libgui header locationMathias Agopian2012-02-272-1/+4
| | | | Change-Id: Iec71706cdd4f29c6904993648ce873e83ef9cafe
* Rename (IF_)LOGE(_IF) to (IF_)ALOGE(_IF) DO NOT MERGESteve Block2012-01-082-6/+6
| | | | | | | See https://android-git.corp.google.com/g/#/c/157220 Bug: 5449033 Change-Id: Ic9c19d30693bd56755f55906127cd6bd7126096c
* Rename (IF_)LOGW(_IF) to (IF_)ALOGW(_IF) DO NOT MERGESteve Block2012-01-061-4/+4
| | | | | | | See https://android-git.corp.google.com/g/157065 Bug: 5449033 Change-Id: I00a4b904f9449e6f93b7fd35eac28640d7929e69
* Rename (IF_)LOGD(_IF) to (IF_)ALOGD(_IF) DO NOT MERGESteve Block2012-01-032-4/+4
| | | | | | | See https://android-git.corp.google.com/g/156016 Bug: 5449033 Change-Id: I4c4e33bb9df3e39e11cd985e193e6fbab4635298
* Rename (IF_)LOGV(_IF) to (IF_)ALOGV(_IF) DO NOT MERGESteve Block2011-10-265-76/+76
| | | | | | | See https://android-git.corp.google.com/g/#/c/143865 Bug: 5449033 Change-Id: I0122812ed6ff6f5b59fe4a43ab8bff0577adde0a
* Add video stabilization control to Camera parameters.Eino-Ville Talvala2011-10-121-0/+2
| | | | | | | | | Hardware video stabilization reduces camera shake in preview and in recorded videos. It has no effect on still image capture. Convenience accessor methods hidden for now. Change-Id: Ie18450bff662b2ef98b85d19719beefc180975fc
* Add video snapshot camera parameter.Wu-cheng Li2011-09-011-0/+1
| | | | | | | | The API is still hidden. bug:5187868 Change-Id: I59e1b5774ca32be049723d1a0887faa90d8884bb
* Add new camera focus mode FOCUS_MODE_CONTINUOUS_PICTURE.Wu-cheng Li2011-08-181-0/+1
| | | | | | | The API is still hidden. bug:5086125 Change-Id: I69268a95ad6aae249771d3a8dfb423ffe2d87081
* Add camera bayer image format.Wu-cheng Li2011-08-041-0/+1
| | | | | | | | The API are hidden. bug:5086073 Change-Id: Ic9a53e5d5007ad3f12a28406ee25098227f14cbc
* Pass camera frame metadata from camera service to Java.Wu-cheng Li2011-08-022-4/+18
| | | | | bug:4460717 Change-Id: I2fae6e1dfca6b8f3a5ee5716fc7817f5417bf657
* Add camera recording hint parameter.Wu-cheng Li2011-08-021-0/+1
| | | | | | | The API is still hidden. bug:4266229 Change-Id: I5e4c24e9e2808582aecb55ac4f1d5be3ed7e36a2
* Add camera face detection API.Wu-cheng Li2011-07-271-0/+2
| | | | | | | API are still hidden. bug:4460717 Change-Id: I1a515061f141a89bd61c875257712789fb15d2d4
* Remove the simulator target from all makefiles.Jeff Brown2011-07-111-4/+0
| | | | | | Bug: 5010576 Change-Id: I04d722f258951a3078fe07899f5bbe8aac02a8e8
* Add framework support for camcorder zoom.Wu-cheng Li2011-06-274-2/+242
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The purpose of ICameraRecordingProxy and ICameraRecordingProxyListener is to allow applications using the camera during recording. Camera service allows only one client at a time. Since camcorder application needs to own the camera to do things like zoom, the media recorder cannot access the camera directly during recording. So ICameraRecordingProxy is a proxy of ICamera, which allows the media recorder to start/stop the recording and release recording frames. ICameraRecordingProxyListener is an interface that allows the recorder to receive video frames during recording. ICameraRecordingProxy startRecording() stopRecording() releaseRecordingFrame() ICameraRecordingProxyListener dataCallbackTimestamp() The camcorder app opens the camera and starts the preview. The app passes ICamera and ICameraRecordingProxy to the media recorder by MediaRecorder::setCamera(). The recorder uses ICamera to setup the camera in MediaRecorder::start(). After setup, the recorder disconnects from camera service. The recorder calls ICameraRecordingProxy::startRecording() and passes a ICameraRecordingProxyListener to the app. The app connects back to camera service and starts the recording. The app owns the camera and can do things like zoom. The media recorder receives the video frames from the listener and releases them by ICameraRecordingProxy::releaseRecordingFrame. The recorder calls ICameraRecordingProxy::stopRecording() to stop the recording. The call sequences are as follows: 1. The app: Camera.unlock(). 2. The app: MediaRecorder.setCamera(). 3. Start recording (1) The app: MediaRecorder.start(). (2) The recorder: ICamera.unlock() and ICamera.disconnect(). (3) The recorder: ICameraRecordingProxy.startRecording(). (4) The app: ICamera.reconnect(). (5) The app: ICamera.startRecording(). 4. During recording (1) The recorder: receive frames from ICameraRecordingProxyListener.dataCallbackTimestamp() (2) The recorder: release frames by ICameraRecordingProxy.releaseRecordingFrame(). 5. Stop recording (1) The app: MediaRecorder.stop() (2) The recorder: ICameraRecordingProxy.stopRecording(). (3) The app: ICamera.stopRecording(). bug:2644213 Change-Id: I15269397defc25cbbcae16abc071c8349c123122
* CameraParameters: add PIXEL_FORMAT_RGBA8888Iliyan Malchev2011-06-061-0/+1
| | | | | Change-Id: I2780e936f5b4628d506ac4e6947b78ef831fbde8 Signed-off-by: Iliyan Malchev <malchev@google.com>
* Add auto-white balance locking to the Camera API.Eino-Ville Talvala2011-05-171-0/+2
| | | | | | | | | | | Adds a new camera parameter for locking auto-white balance to its current value. Also adds a function for checking if auto-white balance lock is supported by the current platform. Lock semantics match that of the auto-exposure lock. Hidden for now. Change-Id: Id59339a4be84d55c1b0b8473d765b6aa765999b2
* Add an auto-exposure lock feature to the Camera API.Eino-Ville Talvala2011-05-021-0/+3
| | | | | | | | | | Adds a new camera parameter for locking auto-exposure to its current value. Also adds a function for checking if auto-exposure lock is supported by the current platform. Hidden for now. Change-Id: Id452371191ab220318ce2cb98b8ee91bdde9aab6
* Add camera metering area API.Wu-cheng Li2011-04-131-0/+2
| | | | | | | The API are still hidden. bug:3475893 Change-Id: Id4147528def5e0fe067e1a3ed315fa34c14a0640
* Add camera focus area API.Wu-cheng Li2011-04-081-0/+2
| | | | | | | | The API are still hidden. bug:3475893 Change-Id: I92405c9e332b7fb141788cda7ebc9705dd666c67
* frameworks/base: some camera-interface cleanupIliyan Malchev2011-03-282-52/+0
| | | | | | | | | Methods getNumberOfVideoBuffers() and getVideoBuffer() as well as struct image_rect_struct are no longer used (instead, the necessary information is passed through ANativeWindow.) Change-Id: If4b11446fc9ccbde1f6b45bc70c0d0b8e54376eb Signed-off-by: Iliyan Malchev <malchev@google.com>
* merge libsurfaceflinger_client into libguiMathias Agopian2011-03-251-1/+0
| | | | | | | | | | | | this is the first step in unifying surfacetexture and surface. for this reason the header files were not moved, as most of them will eventually go away. NOTE: currently we keep libsurfaceflinger_client.so as an empty library to workaround prebuilt binaries wrongly linking against it. Change-Id: I130f0de2428e8579033dc41394d093f4e1431a00
* Merge "Add YV12 preview format to camera parameter constants."Wu-cheng Li2011-02-241-1/+1
|\