b5df547bce900fa5764d735bee304e79c001d60d |
|
21-Mar-2017 |
Yin-Chia Yeh <yinchiayeh@google.com> |
Camera: HAL1 recording batching support Test: Angler HAL1 + batching normal recording mode Bug: 35997432 Change-Id: If088715ccdb40163f44150c16deed62432692c07
/frameworks/av/camera/Camera.cpp
|
2d13b1d3eeaba31d8c15acc6037fd68b150a9a66 |
|
28-Apr-2016 |
Chien-Yu Chen <cychen@google.com> |
Camera: Fix passing video native handle for 64-bit app Add new binder calls to pass video native handle so the video native handle can be passed between 32-bit and 64-bit processes. Remove problematic code that used IMemory to pass video native handle because the sizes of VideoNativeMetadata are different in 32-bit and 64-bit processes. Bug: 28403412 Change-Id: I3341b1812ecc41d61846bb72ca926ecb1674c9ec
/frameworks/av/camera/Camera.cpp
|
3525dd92724e4942c9259f19581d63b93f18e14b |
|
21-Mar-2016 |
Eino-Ville Talvala <etalvala@google.com> |
Camera: Fix openLegacy error codes Fix error handling regressions from the Binder interface refactor - Error codes from openLegacy became incorrect - Client initialize() call error codes were not discriminated between Bug: 27657269 Change-Id: I2379d45d5fe5c2ad43c78bcfd18ea4c833adc987
/frameworks/av/camera/Camera.cpp
|
d56db1d2bee182d1851097a9c712712fc094d117 |
|
18-Dec-2015 |
Eino-Ville Talvala <etalvala@google.com> |
Camera: Switch camera2 to auto-gen C++ binder interfaces - Move camera service AIDL files to frameworks/av - Build C++ interface stubs with AIDL tools - Add necessary native-side parcelables and update existing ones - Remove manually-written stubs, rearrange remaining manual stubs - Adjust implementations to work with auto-generated stubs - Adjust method signatures for auto-gen differences - Add rich error messages using binder::Status Bug: 25091611 Change-Id: I6f69f34b9d1a3f8d1fb7db87357363f8fa8483ff
/frameworks/av/camera/Camera.cpp
|
98a668f6ea51e4d894d2ebb61a0e18287fb14008 |
|
18-Dec-2015 |
Chien-Yu Chen <cychen@google.com> |
Camera: Fix client permission check Modify StageFright's CameraSource to forward calling PID as client PID when connecting to CameraService so CameraService can check if the client PID has permission to use camera. Change CameraService to check calling UID is trusted before using the passed in client PID and client UID to verify permission. Bug: 24511454 Change-Id: I4906ab73510e2c75714690bed675e3c13aca3ccf
/frameworks/av/camera/Camera.cpp
|
8cca0750a84c2d97224c0cfef7cf255308ee80b3 |
|
14-Nov-2015 |
Chien-Yu Chen <cychen@google.com> |
Camera: Support BufferQueue between Camera and StageFright Use a BufferQueue between Camera and StageFright to pass video buffers for Camera HALv3 devices. CameraSource in StageFright will try to use "buffer queue" mode if it is supported by the camera device. In "buffer queue" mode, CameraSource creates a buffer queue and a listener thread to recieve video buffers from camera device. CameraSource then wraps the ANWBuffer in MediaBuffer. If the camera device doesn't support "buffer queue" mode, it falls back to "metadata in video buffer" mode or "real YUV data" mode. "Metadata in video buffer" mode is removed from Camera2Client and only "buffer queue" mode is supported. Bug: 24511454 Change-Id: Ice833b57bcd8d91852d6415402013f56f3e3970a
/frameworks/av/camera/Camera.cpp
|
e3afb2cc438b76ae433c8c40ceabf0457ad7a678 |
|
04-Jun-2015 |
Eino-Ville Talvala <etalvala@google.com> |
Camera: Change error for app ops reject, propagate binder errors INVALID_OPERATION surfaces as an non-specific device-level error to applications in the onError callback. This is not a condition apps targeting camera2 in L will generally have to deal with. Instead, return -EACCESS which maps to throwing CameraAccessException.CAMERA_DISABLED, same as disabling camera access with DevicePolicyManager. The old camera API converts any error code to -EACCESS at the JNI layer, so this doesn't change anything for the older API. Also update the various native ICameraService binder connect calls to check for the transact error code, and return it if it is not OK. Without this, PERMISSION_DENIED transact errors from the camera service cannot be distinguished from CAMERA_DISABLED errors in some codepaths. Bug: 21604925 Change-Id: Ifccc8989b8c20653429e2d3e51dba7abb2be9c35
/frameworks/av/camera/Camera.cpp
|
280405a138a0068694f3c39b4290f510173133d9 |
|
12-May-2015 |
Svetoslav Ganov <svetoslavganov@google.com> |
Revert "Add camera app op - camera" This is not needed duplication of work This reverts commit 32fa6d0e65dbf956e253a1006e9419dce2fe75c9. Change-Id: I2c81b0dacb2ed99c408c79c1f9e22a4baa564494
/frameworks/av/camera/Camera.cpp
|
32fa6d0e65dbf956e253a1006e9419dce2fe75c9 |
|
02-May-2015 |
Svet Ganov <svetoslavganov@google.com> |
Add camera app op - camera Change-Id: I26570cc0a23fdea740b416a26838d40cac296c85
/frameworks/av/camera/Camera.cpp
|
06b46062d2f8bc82ca3061a23d197734ae51918b |
|
14-Nov-2014 |
Marco Nelissen <marcone@google.com> |
Update calls to IInterface::asBinder() to use the new static version. Change-Id: I89a5988a0ac694ffc04d88cf939e8455bf925d4c
/frameworks/av/camera/Camera.cpp
|
b10cdadf0fb945e23ca77008d4af76584bd0e39a |
|
17-Jun-2014 |
Zhijun He <zhijunhe@google.com> |
cameraservice: Implement HAL1 and higher HAL API coexistence A higher hal version device like HAL3.2 can be opened as HAL1.0 device if HAL supports it. This only applies to camera API1. Change-Id: I4ae9f59f4317158cc1bd7ed7726e4032cdd1fa07
/frameworks/av/camera/Camera.cpp
|
4b820b0e1fa069714b123fc35784541d0f94d267 |
|
21-Aug-2013 |
Eino-Ville Talvala <etalvala@google.com> |
Camera1: Rename setPreviewTexture to ...Target for clarity Bug: 10312644 Change-Id: I19976188f0359bfd177209fb40145defdae9c740
/frameworks/av/camera/Camera.cpp
|
1ce7c34e67c2cf58dd88c31f36f4bd62e375f7f0 |
|
21-Aug-2013 |
Eino-Ville Talvala <etalvala@google.com> |
Camera1: Set preview to be asynchronous, and remove dead code - Use the controlledByApp flag to make sure application-bound preview buffer queue is asynchronous as before - Remove setPreviewDisplay in service, since it is no longer in the binder interface - Rename setPreviewTexture to setPreviewTarget, to make it clear it's the only game in town now. Rename only on the binder level and service for now. Bug: 10312644 Change-Id: Icd33a462022f9729a63dc65c69b755cb7969857e
/frameworks/av/camera/Camera.cpp
|
0f61d8f14aa368c9cd7076528e8096e10ed100a0 |
|
08-Aug-2013 |
Ruben Brunk <rubenbrunk@google.com> |
Refactor CameraService to handle errors properly. Bug: 10361136 -Connect calls now return status_t error flags. Change-Id: Idca453b111e5df31327f6c99ebe853bb2e332b95
/frameworks/av/camera/Camera.cpp
|
3ee3550a2f529cbf56d87d8503f59a8f45dccf32 |
|
03-Apr-2013 |
Eino-Ville Talvala <etalvala@google.com> |
Camera: Add preview callback surface support - Add call to set a preview callback surface - Implement support for HAL2/3 devices - Still need HAL1 implementation Change-Id: I0dc0bd72e43d871aa487858d1665c1efca633ffe
/frameworks/av/camera/Camera.cpp
|
99617adda9bc46c43f511f0940bc735c73de61de |
|
13-Mar-2013 |
Mathias Agopian <mathias@google.com> |
remove uses of Surface in favor or IGraphicBufferProducer Change-Id: I13d7a9553aa335bca790a3a59d389d7533c83d57
/frameworks/av/camera/Camera.cpp
|
fa4cf9d310685b4c25877cba772ff7da84caf517 |
|
05-Mar-2013 |
Igor Murashkin <iam@google.com> |
(Camera)ProCamera: Remove unused functions from binder interface Change-Id: I0582268cef6e84b630bc87c8a03dcd69d54c440d
/frameworks/av/camera/Camera.cpp
|
c073ba525404f3416c2824c435d3d926a9892f1b |
|
26-Feb-2013 |
Igor Murashkin <iam@google.com> |
camera_client: refactor Camera/ProCamera commonalities into BasicCamera Change-Id: Ie10a4094522d49683657665fe94ab0b7ccd280e9
/frameworks/av/camera/Camera.cpp
|
ceb388d6c03c38b96dc41c0ea4804b749aa077c4 |
|
19-Feb-2013 |
Eino-Ville Talvala <etalvala@google.com> |
CameraService and Stagefright: Support AppOps 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
/frameworks/av/camera/Camera.cpp
|
634a51509ee50475f3e9f8ccf897e90fc72ded31 |
|
21-Feb-2013 |
Igor Murashkin <iam@google.com> |
Camera: Add ProCamera private binder interface for an API2-light functionality Change-Id: I2af7a807c99df75ea659e6e6acc9c4fca6a56274
/frameworks/av/camera/Camera.cpp
|
8ba01021b573889802e67e029225a96f0dfa471a |
|
18-Dec-2012 |
Andy McFadden <fadden@android.com> |
Rename ISurfaceTexture and SurfaceTexture 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
/frameworks/av/camera/Camera.cpp
|
08ad5efcef90e24db2863c0f85972ed05fe848a2 |
|
18-Apr-2012 |
Wu-cheng Li <wuchengli@google.com> |
Remove new camera connect API. Applications are not resumed under the lock screen now. This API is not needed anymore. bug:5584464 Change-Id: I115daf6b647348617ec0fc05b626878c945b9b29
/frameworks/av/camera/Camera.cpp
|
2fd2440d0175ca3e196b01b7541a9e0d4ed9a694 |
|
24-Feb-2012 |
Wu-cheng Li <wuchengli@google.com> |
Add a new camera open API that allows taking the ownership. 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
/frameworks/av/camera/Camera.cpp
|
df712ea86e6350f7005a02ab0e1c60c28a343ed0 |
|
26-Feb-2012 |
Mathias Agopian <mathias@google.com> |
fix libgui header location Change-Id: Iec71706cdd4f29c6904993648ce873e83ef9cafe
/frameworks/av/camera/Camera.cpp
|
29357bc2c0dd7c43ad3bd0c8e3efa4e6fd9bfd47 |
|
06-Jan-2012 |
Steve Block <steveblock@google.com> |
Rename (IF_)LOGE(_IF) to (IF_)ALOGE(_IF) DO NOT MERGE See https://android-git.corp.google.com/g/#/c/157220 Bug: 5449033 Change-Id: Ic9c19d30693bd56755f55906127cd6bd7126096c
/frameworks/av/camera/Camera.cpp
|
5ff1dd576bb93c45b44088a51544a18fc43ebf58 |
|
06-Jan-2012 |
Steve Block <steveblock@google.com> |
Rename (IF_)LOGW(_IF) to (IF_)ALOGW(_IF) DO NOT MERGE See https://android-git.corp.google.com/g/157065 Bug: 5449033 Change-Id: I00a4b904f9449e6f93b7fd35eac28640d7929e69
/frameworks/av/camera/Camera.cpp
|
b8a805261bf0282e992d3608035e47d05a898710 |
|
20-Dec-2011 |
Steve Block <steveblock@google.com> |
Rename (IF_)LOGD(_IF) to (IF_)ALOGD(_IF) DO NOT MERGE See https://android-git.corp.google.com/g/156016 Bug: 5449033 Change-Id: I4c4e33bb9df3e39e11cd985e193e6fbab4635298
/frameworks/av/camera/Camera.cpp
|
3856b090cd04ba5dd4a59a12430ed724d5995909 |
|
20-Oct-2011 |
Steve Block <steveblock@google.com> |
Rename (IF_)LOGV(_IF) to (IF_)ALOGV(_IF) DO NOT MERGE See https://android-git.corp.google.com/g/#/c/143865 Bug: 5449033 Change-Id: I0122812ed6ff6f5b59fe4a43ab8bff0577adde0a
/frameworks/av/camera/Camera.cpp
|
57c86189bc07d9ccb0fd044e66df736d0bf19639 |
|
29-Jul-2011 |
Wu-cheng Li <wuchengli@google.com> |
Pass camera frame metadata from camera service to Java. bug:4460717 Change-Id: I2fae6e1dfca6b8f3a5ee5716fc7817f5417bf657
/frameworks/av/camera/Camera.cpp
|
4ca2c7c913f8bd4ada13aca56d36045d42d1e00f |
|
01-Jun-2011 |
Wu-cheng Li <wuchengli@google.com> |
Add framework support for camcorder zoom. 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
/frameworks/av/camera/Camera.cpp
|
108dddf924d714c811dd565b8f4c7a0178cca2f2 |
|
29-Mar-2011 |
Iliyan Malchev <malchev@google.com> |
frameworks/base: some camera-interface cleanup 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>
/frameworks/av/camera/Camera.cpp
|
e468ac57f6e8afc6078c76d4eb1ac327112a3de0 |
|
18-Feb-2011 |
James Dong <jdong@google.com> |
Application-managed callback buffer support for raw image bug - 3292153 Change-Id: I9789f7c5cde3a3889d7375e881181e9152d95fc2
/frameworks/av/camera/Camera.cpp
|
bfa33aae4f54c0020a0568b16a3acb7b30b6ca3d |
|
20-Dec-2010 |
Jamie Gennis <jgennis@google.com> |
Add camera service support for SurfaceTexture. This change enables the use of a SurfaceTexture in place of a Surface as the destination of camera preview frames. Change-Id: Ic70d404c8fe261e9d5da6f1de93d6babb5b191cb
/frameworks/av/camera/Camera.cpp
|
627baacc748c5e2ed68bdb256aea4d70fcfe9ce4 |
|
04-Jan-2011 |
Wu-cheng Li <wuchengli@google.com> |
Camera::create should fail when it fails to connect the camera. bug:3197565 Change-Id: I3439a25c06b00615e8257e6b3db85df081643643
/frameworks/av/camera/Camera.cpp
|
c42478ed7b8a379d2f8a43d4d349680c8a37573f |
|
15-Nov-2010 |
James Dong <jdong@google.com> |
Fixed a race condition where some recording frames may not be released. When startRecording() is called before setListener(), recording frames are sent right after startRecording(), but there is no listener to release the recording frames. This causes the hang in media server. bug - 3166356 Change-Id: I19366ca682ef9f6b847590c190c30a15ed32b8e4
/frameworks/av/camera/Camera.cpp
|
e2ad6734eccc4b9ea7857c747ff9469a9c11ba09 |
|
19-Oct-2010 |
James Dong <jdong@google.com> |
Camera framework change required for 0-memcpy recording bug - 3042125 Change-Id: I46eb7a10b5394086b353fd73e4503beceeed76f1
/frameworks/av/camera/Camera.cpp
|
4b79168835965cf0fc41ebe2a367e22b4cb20d08 |
|
11-Aug-2010 |
Jamie Gennis <jgennis@google.com> |
Change the framework to use the new camera preview path. This change makes the camera HAL interface take an ANativeWindow interface from which all the camera preview buffers will be allocated. The framework code running in application processes now passes a Surface object rather than an ISurface to the camera server via Binder when setting the preview surface. The camera server then forwards that Surface object (which implements the ANativeWindow interface) to the camera HAL, which uses it to communicate with SurfaceFlinger to allocate the camera preview buffers. Change-Id: Ie438f721559cd7de5e4f848a26d96360dda07b5f
/frameworks/av/camera/Camera.cpp
|
0319aaecb03aa83924ab4e3d9c9bc657c2e8bc06 |
|
30-Jul-2010 |
Jean-Baptiste Queru <jbq@google.com> |
am 4506c62a: fix inaccurate copyrights Merge commit '4506c62abd5767d6d42a97e8e87793a1b3bcb625' into gingerbread-plus-aosp * commit '4506c62abd5767d6d42a97e8e87793a1b3bcb625': fix inaccurate copyrights
|
01cff464978aa0f749f42650180b45ea56cb17de |
|
30-Jul-2010 |
Jean-Baptiste Queru <jbq@google.com> |
fix inaccurate copyrights Change-Id: I33b0f68f2da34ca4728211d83159cf32a127f6dd
/frameworks/av/camera/Camera.cpp
|
ddbdb35d176266b5ab64c30178f5cb76c5b1b4b4 |
|
10-Jun-2010 |
Chih-Chung Chang <chihchung@google.com> |
Change camera interface to support multiple cameras. Change-Id: Ie88fe706d2278acf762eca87780de349434778a4
/frameworks/av/camera/Camera.cpp
|
d06618ee31c11ac7ac6698f95444041a4785a5ab |
|
13-May-2010 |
Chih-Chung Chang <chihchung@google.com> |
Fix deadlock if the last reference of ICameraClient is removed in ICamera::connect() Change-Id: I34ab3e4f07435c62168175e9bb159022c8fb99f4
/frameworks/av/camera/Camera.cpp
|
35a055b8bfc6f3cbea409b2897caf936654519cb |
|
06-May-2010 |
Chih-Chung Chang <chihchung@google.com> |
Support multiple cameras in framework. Change-Id: I081f0fbdca4b633715ea7c3b3d42f8662d27598a
/frameworks/av/camera/Camera.cpp
|
f8ed70a20f8b006539af98c8ad45be9561665f82 |
|
25-Mar-2010 |
Chih-Chung Chang <chihchung@google.com> |
Call unlinkToDeath() when we disconnect the Camera, so we don't hold the (weak) reference to it, which caused (small) memory leaks. Change-Id: If7d58a354fd38c8bc380946bf227b52988ac5118
/frameworks/av/camera/Camera.cpp
|
3cf613507f1e2f7bd932d921a6e222e426fd3be4 |
|
10-Feb-2010 |
Mathias Agopian <mathias@google.com> |
split libsurfaceflinger_client and libcamera_client out of libui
/frameworks/av/camera/Camera.cpp
|