summaryrefslogtreecommitdiffstats
path: root/include/media/mediarecorder.h
Commit message (Collapse)AuthorAgeFilesLines
* Change StagefrightRecorder to use MediaCodecChong Zhang2014-02-051-1/+1
| | | | | Bug: 12305192 Change-Id: I72d7cb571be5bd348b58ad650f3269d24c15d350
* remove uses of Surface in favor or IGraphicBufferProducerMathias Agopian2013-03-121-1/+1
| | | | Change-Id: I13d7a9553aa335bca790a3a59d389d7533c83d57
* CameraService and Stagefright: Support AppOpsEino-Ville Talvala2013-02-251-0/+1
| | | | | | | | | | | | | 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
* Refactoring: Rename SurfaceTextureClient to SurfaceMathias Agopian2013-02-151-1/+1
| | | | Change-Id: I4e8a8b20914cb64edc37abe68233fbc9f2b5d830
* Rename ISurfaceTexture and SurfaceTextureAndy McFadden2012-12-181-4/+4
| | | | | | | | | | 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
* Added support for HE-AAC recordingDave Burke2012-04-301-3/+2
| | | | | | | | | Fixed bug in decoder related to sample rates / channel counts Made decoder follow Fraunhofer pattern Log if bitrate not available Bug: 6275957 Change-Id: I47a8e29358fa4a88ebc73fe02d46a2bfb96c64fe
* Add Fraunhofer AAC encoder with AAC-ELD support.Dave Burke2012-04-251-0/+1
| | | | Change-Id: I6cd499d257d72f50a5b508bed97796a591a51506
* Do not support still image capture mode for timelapse video recordingJames Dong2011-07-241-2/+0
| | | | | | related-to-bug: 4973779 Change-Id: Ica665217ab10247b2242acc4e93d4fe9f83e3f45
* Connect MediaRecorder Native to SurfaceMediaSourcePannag Sanketi2011-07-221-0/+10
| | | | | | | | | | | | | | | | | 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
* Add framework support for camcorder zoom.Wu-cheng Li2011-06-271-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* Make track informational event optional, depending on system propertyJames Dong2011-05-171-0/+3
| | | | | | o also add a track informational event to return the encoded data in kilo-bytes Change-Id: I7c383360d57048c8a3606d0b8141ba53e4f4b224
* Add send session recording summary report to applicationJames Dong2011-05-091-0/+16
| | | | Change-Id: I9c63ddae432f0c93486c39776ed0a058a8649602
* Add end of recording summary track infoJames Dong2011-05-091-0/+4
| | | | | Change-Id: I2fcf589e70db225776ef7c8d0f28505ceb824c45 related-to-bug: 1854633
* audio/media: convert to using the audio HAL and new audio defsDima Zavin2011-04-271-17/+0
| | | | | Change-Id: Ibc637918637329e4f2b62f4ac7781102fbc269f5 Signed-off-by: Dima Zavin <dima@android.com>
* Better organize media recorder error and information event and typesJames Dong2011-03-181-16/+47
| | | | Change-Id: I45f1f953596985494725525c1fabf57eccc19175
* Add recording source for voice communicationJean-Michel Trivi2010-11-091-1/+2
| | | | | | | Add a recording source used to designate a recording stream for voice communications such as VoIP. Change-Id: I4091d67069b1a0170c1a5ca5e6acd51eb0aa08f9
* resolved conflicts for merge of a127c07c to masterKenny Root2010-10-141-0/+3
|\ | | | | | | Change-Id: Ifdfc6681cba00f36456eaf7a97f34a75b9d0c086
| * Support for writing to MPEG2 transport stream files.Andreas Huber2010-10-121-0/+3
| | | | | | | | Change-Id: If3b7a807bc224a4b1cb2236537c3ebdc5aee0d97
* | Added setAuxiliaryOutputFile to MediaRecorder and JNINipun Kwatra2010-08-311-0/+2
|/ | | | | | | added setAuxiliaryOutputFile to allow setting of an auxiliary output file. Also added the JNI support. Change-Id: I8c3335192bd6f7fcbfdfc8552cfd0848f2ad2a5d
* Support for Gtalk video, includes AMR/H.263 assembler and packetization ↵Andreas Huber2010-08-041-0/+3
| | | | | | support, extensions to MediaRecorder to stream via RTP over a pair of UDP sockets as well as various fixes to the RTP implementation. Change-Id: I95b8dd487061add9bade15749e563b01cd99d9a6
* Separate MediaRecorderClient with MediaPlayerClientJames Dong2010-06-281-2/+2
| | | | | | | | | | - 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
* Provide progress status report during authoringJames Dong2010-06-251-1/+3
| | | | | | | | | - Track either the number of A/V frames authored, or the time elapsed - Track the completion of the authoring - Add multiple camera support for authoring by accepting a camera id parameter - Set file type based on the OUTPUT_FORMAT requested Change-Id: I0f9d31b3b7a8fa43eb53f572410fb0ebd4fa0bb7
* Detect and handle premature termination of a recording sessionJames Dong2010-05-141-1/+2
| | | | Change-Id: Ifb83b19f3e68580345b23efed5d5956fb81baeb8
* Media server death nodificationJames Dong2010-01-151-1/+4
|
* Add new audio sources to support the A1026 recording configurations.Jean-Michel Trivi2009-11-031-1/+2
|
* Fix 2194140: [Passion] Support Audience chip.Eric Laurent2009-11-021-1/+2
| | | | | Added new input device DEVICE_IN_BACK_MIC. Added new audio source AUDIO_SOURCE_CAMCORDER.
* Remove hardcoded maximum frame rate limit from the frameworkJames Dong2009-07-301-4/+0
| | | | bug 1993400
* am b2df1699: Merge change 1548 into donutAndroid (Google) Code Review2009-06-081-7/+31
|\ | | | | | | | | | | | | Merge commit 'b2df1699c996e62baa78877978cd2c5607ea4194' * commit 'b2df1699c996e62baa78877978cd2c5607ea4194': NJ-1409: (frameworks/base) Support new audio encoding types(AMR and AAC).
| * NJ-1409: (frameworks/base) Support new audio encoding types(AMR and AAC).Jianhong Jiang2009-06-081-7/+31
| |
* | get rid of utils.hMathias Agopian2009-05-311-1/+4
|/
* Fix issue 1846343 - part 1Eric Laurent2009-05-261-0/+4
| | | | | | | | This change is the first part of a fix for issue 1846343, : - Added new enum values for input sources in AudioRecord and MediaRecorder for voice uplink, downlink and uplink+downlink sources. - renamed streamType to inputSource in all native functions handling audio record. A second change is required in opencore author driver and android audio input to completely fix the issue.
* auto import from //branches/cupcake_rel/...@140373The Android Open Source Project2009-03-181-1/+2
|
* auto import from //branches/cupcake_rel/...@138607The Android Open Source Project2009-03-131-3/+14
|
* auto import from //depot/cupcake/@135843The Android Open Source Project2009-03-031-0/+155
|
* auto import from //depot/cupcake/@135843The Android Open Source Project2009-03-031-132/+0
|
* auto import from //depot/cupcake/@132589The Android Open Source Project2009-03-031-31/+8
|
* auto import from //depot/cupcake/@137055The Android Open Source Project2009-03-021-8/+31
|
* auto import from //branches/cupcake/...@131421The Android Open Source Project2009-02-131-0/+1
|
* Code drop from //branches/cupcake/...@124589The Android Open Source Project2008-12-171-56/+67
|
* Initial ContributionThe Android Open Source Project2008-10-211-0/+120