History log of /frameworks/base/include/camera/Camera.h
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
bb1e275c0e684dd213f124da77110cdd9d6f090c 29-Jul-2011 Wu-cheng Li <wuchengli@google.com> Pass camera frame metadata from camera service to Java.

bug:4460717
Change-Id: I2fae6e1dfca6b8f3a5ee5716fc7817f5417bf657
/frameworks/base/include/camera/Camera.h
42419ce28a09eb63e29a8fef87e6f5534f41902f 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/base/include/camera/Camera.h
9c7ac0d142eaf4b083a309299ab023932a9bb109 15-Apr-2011 Iliyan Malchev <malchev@google.com> frameworks/base: include system/core header camera.h in Camera.h

We define struct CameraInfo in this camera/Camera.h, even though an identical
struct camera_info is defined in hardware/camera.h (but not in
hardware/camera_defs.h). We may not export struct definitions from the HAL
into headers which may find their way into the NDK.

This commit also renames FRAME_CALLBACK_FLAG_xxx to CAMERA_FRAME_CALLBACK_xxx.

Change-Id: I3e2ddd01d61bf5371ff2fc1a397995e0f1ee11f8
Signed-off-by: Iliyan Malchev <malchev@google.com>
/frameworks/base/include/camera/Camera.h
40c364136f09e82602692f359bcf8aa9b0df18d3 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/base/include/camera/Camera.h
e00cab707dcaf6f05adb5ccb9c80fdf25c483427 18-Feb-2011 James Dong <jdong@google.com> Application-managed callback buffer support for raw image

bug - 3292153

Change-Id: I9789f7c5cde3a3889d7375e881181e9152d95fc2
/frameworks/base/include/camera/Camera.h
ff2dc46c121c166f10684da069d07ae11d4f9b9a 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/base/include/camera/Camera.h
853f6fdef791382ed0c10660255754107e684a20 05-Jan-2011 James Dong <jdong@google.com> Fixed a typo in the enum for unknown camera error message

Change-Id: Id9f8432e2ba8e1474ee020438d6456f1f450398a
/frameworks/base/include/camera/Camera.h
4e911849caa9a4c3fe7ba9d820930465ba54de29 20-Nov-2010 Wu-cheng Li <wuchengli@google.com> am fb6f4505: am 589e8381: Merge "Improve camera documentation." into gingerbread

* commit 'fb6f4505ba5c227cebb73f1269b0af5d92e6e5e6':
Improve camera documentation.
99a3f3e4e06b4370101ca97cc11dbe81d772fefa 19-Nov-2010 Wu-cheng Li <wuchengli@google.com> Improve camera documentation.

bug:3212606
Change-Id: Iee7106e4665c08a4c75471114010b75d63ac74ce
/frameworks/base/include/camera/Camera.h
d55f7e56b9761227f0a310b34d9016fde91613d6 14-Oct-2010 Wu-cheng Li <wuchengli@google.com> Mirror the camera preview if the camera is front-facing.

bug:3095272
Change-Id: Ib1c1d1edc06a33e9d4d2dcb42bc1dd2c25b1310c
/frameworks/base/include/camera/Camera.h
b982fb4fd36a3cd24a0bb17c964139fe4c9cbb47 19-Oct-2010 Wu-cheng Li <wuchengli@google.com> Mirror the preview for front-facing cameras. do not merge

Now overlay does ROT_90 before FLIP_V or FLIP_H. It should be FLIP_V
or FLIP_H first. The formula should be changed after overlay is fixed.

bug:3059865
Change-Id: Ie4366bf7f1fcac7383e8dfc74b1b865997bbbcc6
/frameworks/base/include/camera/Camera.h
38311859e809118f2cba3597d056abffe4eb80c0 19-Oct-2010 James Dong <jdong@google.com> Camera framework change required for 0-memcpy recording

bug - 3042125

Change-Id: I46eb7a10b5394086b353fd73e4503beceeed76f1
/frameworks/base/include/camera/Camera.h
4e94c30ed5ddb79b168291b28bfad79eaed022ed 15-Sep-2010 Nipun Kwatra <nkwatra@google.com> Added command type to play recording sound.

Added CAMERA_CMD_PLAY_RECORDING_SOUND command type to play recording
sound through sendCommand. This is currently needed by time lapse
recording using still mode capture, which disables the shutter sound
but needs to play the recording sound.

Change-Id: I376aa40f45b6064fd862abc065456b06fc338020
/frameworks/base/include/camera/Camera.h
088146a4213f5099b8fcc93e1b75538c53f61404 12-Sep-2010 Nipun Kwatra <nkwatra@google.com> Adding enable/disable option for sendCommand()

- Added enum CAMERA_CMD_ENABLE_SHUTTER_SOUND which corresponds to
command type for enabling/disabling shutter sound.
- The implementation checks if it is legal to disable shutter sound.
If it is, then any process can disable the sound. If not, then only
the mediaserver process is allowed to do this. Currently time lapse
capture needs this functionality to disable shutter sound when still
mode is used to capture time lapse video.

Change-Id: Id147a3bcc6a345c2c6a6d52bf98fd8292386bb19
/frameworks/base/include/camera/Camera.h
85cfdd011241a5f2fb7fabc65b5943a39af7e1de 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/base/include/camera/Camera.h
154a320069a316491c25b716f2aeea8c51a758e8 30-Jul-2010 Jean-Baptiste Queru <jbq@google.com> resolved conflicts for merge of 27eecb70 to gingerbread

Change-Id: If064f2f4950fc1a4ff38e6927fe2120af76b26f1
0c51c98fd9edf0bdc8f2c567470fc332b5ae3adf 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
83407b993f79e06470100f605748aba41cbeb966 30-Jul-2010 Jean-Baptiste Queru <jbq@google.com> fix inaccurate copyrights

Change-Id: I33b0f68f2da34ca4728211d83159cf32a127f6dd
/frameworks/base/include/camera/Camera.h
4506c62abd5767d6d42a97e8e87793a1b3bcb625 30-Jul-2010 Jean-Baptiste Queru <jbq@google.com> fix inaccurate copyrights

Change-Id: I33b0f68f2da34ca4728211d83159cf32a127f6dd
/frameworks/base/include/camera/Camera.h
b8bb78f54b48868465a9d69d65fda08524ab5ae1 10-Jun-2010 Chih-Chung Chang <chihchung@google.com> Change camera interface to support multiple cameras.

Change-Id: Ie88fe706d2278acf762eca87780de349434778a4
/frameworks/base/include/camera/Camera.h
e25cc656392d8866e163f78b60c7791455d0fb44 06-May-2010 Chih-Chung Chang <chihchung@google.com> Support multiple cameras in framework.

Change-Id: I081f0fbdca4b633715ea7c3b3d42f8662d27598a
/frameworks/base/include/camera/Camera.h
000479f9e325b4e426a67033abd92d47da412725 10-Feb-2010 Mathias Agopian <mathias@google.com> split libsurfaceflinger_client and libcamera_client out of libui
/frameworks/base/include/camera/Camera.h