summaryrefslogtreecommitdiffstats
path: root/include
Commit message (Collapse)AuthorAgeFilesLines
...
| * | | Connect MediaRecorder Native to SurfaceMediaSourcePannag Sanketi2011-07-224-3/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* | | | SurfaceTexture: add the abandon method.Jamie Gennis2011-07-221-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change adds the 'abandon' method to the SurfaceTexture C++ class. This method may be used to put the SurfaceTexture in an abandoned state, causing all ISurfaceTexture methods to fail. Change-Id: Ibd261f7b73f44e2bec36a8508bf92113cfb7cf95
* | | | SurfaceMediaSource: remove getAllocator methodJamie Gennis2011-07-221-7/+0
|/ / / | | | | | | | | | | | | | | | | | | | | | This change removes the getAllocator method from SurfaceMediaSource because that method is no longer a part of the ISurfaceTexture interface. Change-Id: I0e2f0bc3bc1c8cd3c1b4b14246f07b9b4e3066c3
* | | Merge "Renaming SurfaceEncoder to SurfaceMediaSource"Pannag Sanketi2011-07-221-18/+17
|\ \ \
| * | | Renaming SurfaceEncoder to SurfaceMediaSourcePannag Sanketi2011-07-211-18/+17
| | | | | | | | | | | | | | | | | | | | | | | | Related to bug id: 4529323 Change-Id: Id820d45a536bd2c65e0a59def564eb5b3ea4a71c
* | | | Merge "Adding SurfaceEncoder for encoding FilterFrames"Pannag Sanketi2011-07-223-1/+362
|\ \ \ \ | |/ / /
| * | | Adding SurfaceEncoder for encoding FilterFramesPannag Sanketi2011-07-213-1/+362
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Adding SurfaceEncoder which can be used to encode custom frame data. In a sense, it is reverse of what SurfaceTexture does. SurfaceEncoder takes in frames from a native window and passes them to an encoder, thus acting like a MediaSource. It uses GRAlloc buffers underneath for passing data. The client side sets the geometry, format in the beginning, which cannot be changed while the recording is going on. Currently, there is no common pixel format that both GRAlloc and HAL understand. Also, the encoder cannot encode using the data from the GRAlloc buffers. The SurfaceEncoder_test examines mainly the buffer passage since true encoding cannot be done at this point. SimpleDummyRecorder 'reads' the frames in the same thread as the start(), whereas DummyRecorder 'reads' in a separate thread much like the MPEG4Writer. The test with DummyRecorder is much closer to the real encoding implementation. Related to bug id: 4529323 Change-Id: I58ec19a150f8fe4d6195196dc44f55002b46c7c8
* | | | Retry datasource fetches a few times before giving up (NuCachedSource2).Andreas Huber2011-07-221-0/+5
|/ / / | | | | | | | | | | | | Change-Id: I147fc18ef55bc89d2e2fee69b7869c45abbfdd6b related-to-bug: 3405354
* | | Adding AndoirdOpaque Colorformat to OMXPannag Sanketi2011-07-211-202/+209
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Adding an enum to indicate an android opaque OMX colorformat. This will inform the encoder that the actual colorformat will be relayed by the Frames read from the GRAlloc Buffers Related to bug id: 4529323 Change-Id: Iddc5bd1ce8ca2b2506a57aadf5fc91ff0c7b78ef
* | | Merge "fix for issue 4142219 Don't hard code platform-specific ↵Hong Teng2011-07-211-1/+45
|\ \ \ | | | | | | | | | | | | limitations-jni/java part"
| * | | fix for issue 4142219Hong Teng2011-07-201-1/+45
| |/ / | | | | | | | | | | | | | | | Don't hard code platform-specific limitations-jni/java part Change-Id: Icde261b1caf29a8cf552884c97f3c9d0b41741a3
* | | Merge "Untangle MediaScanner error handling. Bug: 5056917"Jeff Brown2011-07-202-15/+31
|\ \ \
| * | | Untangle MediaScanner error handling.Jeff Brown2011-07-202-15/+31
| |/ / | | | | | | | | | | | | | | | Bug: 5056917 Change-Id: I1a7a73579e3ba4e9709459329fc1901a28b0f4b1
* | | Merge "Audio framework: support for audio pre processing"Eric Laurent2011-07-203-8/+10
|\ \ \ | |/ / |/| |
| * | Audio framework: support for audio pre processingEric Laurent2011-07-183-8/+10
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Audio effect framework is extended to suport effects on output and input audio path. AudioFlinger: Support for audio effects and effect chains is moved from PlaybackThread class to ThreadBase class so that RecordThread can manage effects. Effects of type pre processing are allowed on record thread only. When a pre processing is enabled, the effect interface handle is passed down to the input stream so that the audio HAL can call the process function. The record thread loop calls the effect chain process function that will only manage the effect state and commands and skip the process function. AudioRecord: The audio session is allocated before calling getInput() into audio policy serice so that the session is known before the input theead is created and pre processings can be created on the correct session. AudioPolicyService: default pre processing for a given input source are loaded from audio_effects.conf file. When an input is created, corresponding effects are created and enabled. Change-Id: Id17119e0979b4dcf189b5c7957fec30dc3478790
* | Merge "MediaPlayer: add ANativeWindow (dis)connect calls"Jamie Gennis2011-07-181-0/+6
|\ \
| * | MediaPlayer: add ANativeWindow (dis)connect callsJamie Gennis2011-07-141-0/+6
| | | | | | | | | | | | | | | | | | | | | This change makes MediaPlayer connect to the ANativeWindow to which it is going to render video frames and disconnect when it is done. Change-Id: I88ab5c2fe62493aabdc84a283ff31634f795d415
* | | Merge "Add option to query hardware decoders only"Jean-Michel Trivi2011-07-181-1/+1
|\ \ \ | |_|/ |/| |
| * | Add option to query hardware decoders onlyJean-Michel Trivi2011-07-181-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | Add an option to OMXCodec::QueryCodecs() to filter out software codecs. Update stagefright command line tool to list the roles of codecs. Change-Id: Icddb79118c30fe13cc3aea20f340174cc082c4e0
* | | Merge "Support profile and level query for SW video decoders"James Dong2011-07-142-5/+5
|\ \ \
| * | | Support profile and level query for SW video decodersJames Dong2011-07-112-5/+5
| | |/ | |/| | | | | | | Change-Id: I9c20db128be96cd36cf2083e08e8c21f5e6d1fdf
* | | Merge "Remove legacy http support from stagefright, chromium is the new ↵Andreas Huber2011-07-141-61/+0
|\ \ \ | | | | | | | | | | | | hotness."
| * | | Remove legacy http support from stagefright, chromium is the new hotness.Andreas Huber2011-07-131-61/+0
| | | | | | | | | | | | | | | | Change-Id: I6725d42d38b91e6a1cbca43174870f445aeb3d99
* | | | Remove some #ifdef HAVE_ANDROID_OS that were needed for the simulator buildMike Lockwood2011-07-131-115/+0
|/ / / | | | | | | | | | | | | Change-Id: I13d9f251f86c05ae5405f37adbf6b8e9660935ba Signed-off-by: Mike Lockwood <lockwood@android.com>
* | | Enable signalling of a stream discontinuity involving a format-changeAndreas Huber2011-07-131-0/+11
| |/ |/| | | | | | | | | | | through IStreamListener. Change-Id: Ic0409cdc4891ad26b61f2f98bdda3c7fb2e2de6a related-to-bug: 5022434
* | Make MetadataBufferType.h C-friendlyJames Dong2011-07-121-0/+7
| | | | | | | | Change-Id: I4388d8f6cf30f08858aec73aa971647feae4a5e3
* | Merge "Do not wait for unlaunched threads in stop()"James Dong2011-07-111-1/+3
|\ \
| * | Do not wait for unlaunched threads in stop()James Dong2011-07-111-1/+3
| |/ | | | | | | Change-Id: If681749753bb96ee98c1539658cfd919eeb0cb65
* | Release camera if CameraSource::start() has not been calledJames Dong2011-07-101-0/+6
|/ | | | Change-Id: I2f7e4b8501db3d80b9aa6f99d896d778bec29e8c
* Moved and renamed effect API header filesEric Laurent2011-07-077-325/+1
| | | | | | | | Moved specific effect header files to system/media/audio_effects/include/audio_effects and renamed to lower case (effect_xxx.h). Change-Id: Icfc2264bfd013cab0395d7e310ada636b9fe3621
* Merge "- Retrieve is_drm in MediaMetadataRetriever. - Add one more column in ↵Gloria Wang2011-07-062-1/+9
|\ | | | | | | MediaStore to indicate whether a media file is drm-protected. - Remove old DRM code from Ringtone - Use the new DRM code in RingtoneManager"
| * - Retrieve is_drm in MediaMetadataRetriever.Gloria Wang2011-07-012-1/+9
| | | | | | | | | | | | | | | | | | - Add one more column in MediaStore to indicate whether a media file is drm-protected. - Remove old DRM code from Ringtone - Use the new DRM code in RingtoneManager Change-Id: I1311fd1c04841c2cd47df6c901589966cf55a692
* | Merge "Charge network traffic to the uid of the process using the MediaPlayer."Andreas Huber2011-07-011-0/+4
|\ \
| * | Charge network traffic to the uid of the process using the MediaPlayer.Andreas Huber2011-07-011-0/+4
| |/ | | | | | | | | Change-Id: I2bcb54b8232afd3fc7ee16289f37c7a7b3f23067 related-to-bug: 4517282
* | Merge "Add extended metadata buffer support by defining different types of ↵James Dong2011-07-011-0/+77
|\ \ | | | | | | | | | metadata buffers"
| * | Add extended metadata buffer support by defining different types of metadata ↵James Dong2011-06-281-0/+77
| | | | | | | | | | | | | | | | | | buffers Change-Id: I6aa6b5da004c240c9986f6b9036950e234c8bd42
* | | Support a "secure input buffer" mode for use by Widevine DRM in OMXCodec.Andreas Huber2011-07-013-6/+26
| |/ |/| | | | | Change-Id: Ie03b285265099dbac9b12f3f41d9ad758d0b50ad
* | SF transactions are now O(1) wrt IPC instead of O(N).Mathias Agopian2011-06-291-0/+8
| | | | | | | | Change-Id: I57669852cbf6aabae244ea86940a08a5a27ffc43
* | Support for writing output data to a provided callback function instead of a ↵Andreas Huber2011-06-281-0/+10
|/ | | | | | | | file in MPEG2TSWriter Change-Id: Ie54a5677c7b789a973aa50b7f197c6db238425bc
* Multiple changes to ACodec/codec tools:Andreas Huber2011-06-281-6/+7
| | | | | | | | | | | | | | Make sure sf2 does not coalesce input buffers, generalize ACodec's codec instantiation based on OMXCodec's list of eligible component names. Some changes/additions to the "sf2" commandline tool Make surface options consistent with stagefright tool, i.e. use '-S' instead of '-s' New option '-R' renders surface-allocated buffers. Also fixes a longstanding bug introduced when generalizing from surfaces to native windows that never used surface-allocated buffers in sf2 even when the option was specified. Change-Id: I59fd533f0f6ef0337ebe2806ddc81a46878eb3ae
* Add framework support for camcorder zoom.Wu-cheng Li2011-06-278-32/+235
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* Integrating TI OMAP4 Video DecoderAnu Sundararajan2011-06-232-0/+4
| | | | | | | | | | | | Added the video decoder component name to kDecoderInfo. Set the quirks for the video decoder. Add a new color format to OMX_IVCommon.h to denote TI OMAP4 NV12 color format. Added a color conversion routine [ from NV12 to RGB ] for thumbnail generation. Change-Id: I6b23c36441645ef65ec7406ba262d19f89cf64fd Signed-off-by: Devaraj Rangasamy <dev@ti.com> Signed-off-by: Sreenidhi Koti <sreenidhi@ti.com> Signed-off-by: Anu Sundararajan <sanuradha@ti.com>
* - Public part of the Metadata API.Gloria Wang2011-06-231-36/+35
| | | | | | - Modify the media framework test for Metadata. Change-Id: Ib8fa4991f114e1bb88a17ca662844b9b8e1d0faf
* Timed text display format support:Gloria Wang2011-06-221-0/+3
| | | | | | | | | 1. Extract 3GPP global format descriptions 2. Extract 3GPP local format descriptions 3. Define data structure (TimedText) for applications to retrieve the format metadata Change-Id: I6eac2a78df29ee15beee456656331fdd83b24e8e
* Merge "audio: update for audio/audio_policy header names/locations"Dima Zavin2011-06-132-2/+2
|\
| * audio: update for audio/audio_policy header names/locationsDima Zavin2011-06-132-2/+2
| | | | | | | | | | Change-Id: I36c49352eee57559403cd1597f56a8485a360289 Signed-off-by: Dima Zavin <dima@android.com>
* | Merge "Add B frame support for MPEG4Writer"James Dong2011-06-132-0/+7
|\ \
| * | Add B frame support for MPEG4WriterJames Dong2011-06-132-0/+7
| |/ | | | | | | | | | | o requires the support of negative ctts duration values (ctts version 1) Change-Id: Ib14130c9359c3bff3c76f20a7380d468a065dcaf
* | unify SurfaceTexture and SurfaceMathias Agopian2011-06-131-346/+2
|/ | | | | | | Add the concept of synchronous dequeueBuffer in SurfaceTexture Implement {Surface|SurfaceTextureClient}::setSwapInterval() Add SurfaceTexture logging fix onFrameAvailable
* Make dumpsys(media.player) more useful by having AwesomePlayer populate it.Andreas Huber2011-06-081-0/+4
| | | | Change-Id: I12ba7d542331a8293d67a0d47378b8be4f777759