History log of /frameworks/base/media/libmediaplayerservice/MediaRecorderClient.cpp
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
83dd43f45aa3212239acfb35d799216e840c9e2f 30-Jun-2011 James Dong <jdong@google.com> Do not support still image capture mode for timelapse video recording

related-to-bug: 4973779

Change-Id: Ica665217ab10247b2242acc4e93d4fe9f83e3f45
/frameworks/base/media/libmediaplayerservice/MediaRecorderClient.cpp
897e27bc75886e44d2f9f09155127f401c4173ea 02-Jul-2011 Pannag Sanketi <psanketi@google.com> Connect MediaRecorder Native to SurfaceMediaSource

Making a connection from MediaRecorder Native layer to the
SurfaceMediaSource for the purpose of encoding GL Frames. This will be
called from the java side inside the Mobile Filter Framework.

The mediarecorder native layer (client), when set the videosource to
option VIDEO_SOURCE_FRAMES, asks the StageFrightRecorder on the mediaserver
side to create a SurfaceMediaSource object and pass it back as a
sp<ISurfaceTexture> object. Using that, the client side will dequeue and
queue buffers. Connecting the GL Frames to the obtained
sp<ISurfaceTexture> is not part of this CL.

Related to bug id: 4529323

Change-Id: I651bec718dd5b935779e7d7a050b841c2d0b0fcd
/frameworks/base/media/libmediaplayerservice/MediaRecorderClient.cpp
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/media/libmediaplayerservice/MediaRecorderClient.cpp
34bb419e5946ab28112e9e27a4d1b3928d31e0e2 11-May-2011 Dima Zavin <dima@android.com> update for new audio.h header location

Change-Id: Ic4c62c4037800802427eb7d3c7f5eb8b25d18876
Signed-off-by: Dima Zavin <dima@android.com>
/frameworks/base/media/libmediaplayerservice/MediaRecorderClient.cpp
24fc2fb1c541e954b83fd31ea9f786a5e9b45501 20-Apr-2011 Dima Zavin <dima@android.com> audio/media: convert to using the audio HAL and new audio defs

Change-Id: Ibc637918637329e4f2b62f4ac7781102fbc269f5
Signed-off-by: Dima Zavin <dima@android.com>
/frameworks/base/media/libmediaplayerservice/MediaRecorderClient.cpp
8ec2d9add9f25198b9ea7023c7c772ae17f72ea4 11-Nov-2010 James Dong <jdong@google.com> Remove legacy PV stuff

Change-Id: I60ffea7c65592df4b3a80c590c863f1f79b371fd
/frameworks/base/media/libmediaplayerservice/MediaRecorderClient.cpp
b33a5aea130b025f30966828562fcba56f25b265 27-Aug-2010 Nipun Kwatra <nkwatra@google.com> Added setAuxiliaryOutputFile to MediaRecorder and JNI

added setAuxiliaryOutputFile to allow setting of an auxiliary output file.
Also added the JNI support.

Change-Id: I8c3335192bd6f7fcbfdfc8552cfd0848f2ad2a5d
/frameworks/base/media/libmediaplayerservice/MediaRecorderClient.cpp
2527da00e2dc0f6f52e85abc6b4a09611a8ec16d 30-Aug-2010 Andreas Huber <andih@google.com> am 9aa05ec2: am 681c5ff2: Merge "Reverse the default setting of media.stagefright.enable-{rtsp,record} in preparation for building without opencore." into gingerbread

Merge commit '9aa05ec2cd6bc592074c7bd08d22db46649c7f12'

* commit '9aa05ec2cd6bc592074c7bd08d22db46649c7f12':
Reverse the default setting of media.stagefright.enable-{rtsp,record} in preparation for building without opencore.
30cfa20dfc67583411db58674d3d97bc42fa7951 30-Aug-2010 Andreas Huber <andih@google.com> Reverse the default setting of media.stagefright.enable-{rtsp,record} in preparation for building without opencore.

Change-Id: I1ca6bd8faba0185f9694f9dc04d2b3e6a7ab5ac3
related-to-bug: 2370115
/frameworks/base/media/libmediaplayerservice/MediaRecorderClient.cpp
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/media/libmediaplayerservice/MediaRecorderClient.cpp
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/media/libmediaplayerservice/MediaRecorderClient.cpp
4506c62abd5767d6d42a97e8e87793a1b3bcb625 30-Jul-2010 Jean-Baptiste Queru <jbq@google.com> fix inaccurate copyrights

Change-Id: I33b0f68f2da34ca4728211d83159cf32a127f6dd
/frameworks/base/media/libmediaplayerservice/MediaRecorderClient.cpp
929642ee003895b6e4e85ad7e43c7c6f01b29020 08-Jul-2010 James Dong <jdong@google.com> Add runtime dumpsys support for media recorder client

Change-Id: I4c8a81720f3be2db54678a7e84fe12849255046b
/frameworks/base/media/libmediaplayerservice/MediaRecorderClient.cpp
fe1bafecdecd49533c46521057c7c9eeb788d0fa 26-Jun-2010 James Dong <jdong@google.com> Separate MediaRecorderClient with MediaPlayerClient

- An alternative would be to define a common base class that
both MediaRecorderClient and MediaPlayerClient can derive.
But since the common code, onTransact() and notify() uses
some Binder code, having a common base class may not gain
us too much in terms of code reuse.

Change-Id: Ibc06720278ad173fceacff3d267b7060856c6316
/frameworks/base/media/libmediaplayerservice/MediaRecorderClient.cpp
8d65dd26530c7559082bd738cf930e2806158ab2 24-Jun-2010 Andreas Huber <andih@google.com> Remove most stagefright property overrides, remove VorbisPlayer and VorbisMetadataRetriever as this functionality is now provided by stagefright.

Change-Id: Ieafe75a4550c273ad59b4518d7cd4c0fce0f7cce
related-to-bug: 2370115
/frameworks/base/media/libmediaplayerservice/MediaRecorderClient.cpp
bfb9fb143b67c2d0307af2bce9af3c08f362b29a 03-Dec-2009 Andreas Huber <andih@google.com> Refactor MediaScanner. Some steps on the way towards being able to build the tree without OpenCore.
/frameworks/base/media/libmediaplayerservice/MediaRecorderClient.cpp
ea6a38c63b9e9aeb45aa22587c069bd3c5d83df8 17-Nov-2009 Andreas Huber <andih@google.com> Squashed commit of the following:

commit 333057b355f8c260c549553b9a0634755c838b6a
Author: Andreas Huber <andih@google.com>
Date: Fri Nov 13 15:35:48 2009 -0800

Some more tweaks to AVC encoding on sholes.

commit 9981d0ee52ec5b8b0182aae733d1571e3ebb8390
Author: Andreas Huber <andih@google.com>
Date: Thu Nov 12 16:36:57 2009 -0800

Support for avc encoding, including sholes specific tweaks to pick the right colorspace for the camera to not require transcoding.

commit 5ba0ebbbd4efca51f3ae1f60e2ca31e7d2cf136d
Author: Andreas Huber <andih@google.com>
Date: Wed Nov 11 09:50:03 2009 -0800

Enable actual (camera) video-only recording using h.263 or mpeg4 encoding.

commit 3fd59c3526a37fe7c696f4a978925d1831c09313
Author: Andreas Huber <andih@google.com>
Date: Tue Nov 10 14:57:48 2009 -0800

Allow switching between the PV recorder implementation and one supported by stagefright.

This is controlled through the property "media.stagefright.enable-record".
/frameworks/base/media/libmediaplayerservice/MediaRecorderClient.cpp
608a2630bb1eec63431cf065a76962e138aa1dc2 29-Oct-2009 Gloria Wang <gwang@google.com> Dump media recorder PID in dumpsys media.player, and fix minor bugs.
/frameworks/base/media/libmediaplayerservice/MediaRecorderClient.cpp
183baba8d12e5863bd1549e06e6da8a918f65fd0 21-May-2009 Android (Google) Code Review <android-gerrit@google.com> am c1c82509: Merge change 2163 into donut

Merge commit 'c1c82509fb78403a969040cf057a66cbe3bfa538'

* commit 'c1c82509fb78403a969040cf057a66cbe3bfa538':
Fix permission hole for RECORD_AUDIO created when we moved the MediaRecorder
6690dc54546809c973f7f630e6488fcd81dfaa82 21-May-2009 Dave Sparks <davidsparks@android.com> Fix permission hole for RECORD_AUDIO created when we moved the MediaRecorder
implementation to the mediaserver process. The permission check was previously
enforced only at the AudioRecord binder interface for clients not in the same
process. This change adds an additional check when the client tries to set
the audio source.
Bug 1868334
/frameworks/base/media/libmediaplayerservice/MediaRecorderClient.cpp
0795272aa226f4e965968a03daddc53ce30b7cda 20-May-2009 Mathias Agopian <mathias@google.com> move libbinder's header files under includes/binder
/frameworks/base/media/libmediaplayerservice/MediaRecorderClient.cpp
b8c055e7cbf3ca2ea2670747c2b482eca8251fb5 28-Mar-2009 Dave Sparks <> AI 143267: am: CL 143127 Media recorder service requires android.permission.CAMERA to record video
Original author: davidsparks
Merged from: //branches/cupcake/...

Automated import of CL 143267
/frameworks/base/media/libmediaplayerservice/MediaRecorderClient.cpp
17612fcdcb450a1b0c99d0f272b17aeee02bb4bd 28-Mar-2009 Dave Sparks <> AI 143396: am: CL 143267 am: CL 143127 Media recorder service requires android.permission.CAMERA to record video
Original author: davidsparks
Merged from: //branches/cupcake/...
Original author: android-build
Merged from: //branches/donutburger/...

Automated import of CL 143396
/frameworks/base/media/libmediaplayerservice/MediaRecorderClient.cpp
ba87e3e6c985e7175152993b5efcc7dd2f0e1c93 13-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake_rel/...@138607
/frameworks/base/media/libmediaplayerservice/MediaRecorderClient.cpp
9066cfe9886ac131c34d59ed0e2d287b0e3c0087 04-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@135843
/frameworks/base/media/libmediaplayerservice/MediaRecorderClient.cpp
d83a98f4ce9cfa908f5c54bbd70f03eec07e7553 04-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@135843
/frameworks/base/media/libmediaplayerservice/MediaRecorderClient.cpp
076357b8567458d4b6dfdcf839ef751634cd2bfb 03-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@132589
/frameworks/base/media/libmediaplayerservice/MediaRecorderClient.cpp
3dec7d563a2f3e1eb967ce2054a00b6620e3558c 03-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@137055
/frameworks/base/media/libmediaplayerservice/MediaRecorderClient.cpp
da996f390e17e16f2dfa60e972e7ebc4f868f37e 13-Feb-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@131421
/frameworks/base/media/libmediaplayerservice/MediaRecorderClient.cpp
f013e1afd1e68af5e3b868c26a653bbfb39538f8 18-Dec-2008 The Android Open Source Project <initial-contribution@android.com> Code drop from //branches/cupcake/...@124589
/frameworks/base/media/libmediaplayerservice/MediaRecorderClient.cpp