summaryrefslogtreecommitdiffstats
path: root/media
Commit message (Collapse)AuthorAgeFilesLines
* First submission of audio effect library from NXP software.Eric Laurent2010-07-17203-65/+29801
| | | | | | | | | | | | | | | | | | | This CL contains the first open sourceable version of the audio effect library from NXP software. The effects implemented are: - Bass boost - Virtualizer (stereo widening) - Equalizer - Spectrum analyzer Source file for the effect engines are located under libeffects/lvm/lib The wrapper implementing the interface with the audio effect framework in under libeffects/lvm/wrapper The code of other effect libraries has also been reorganized fo clarity: - the effect factory is now under libeffects/factory - the test equalizer and reverb effects are under libeffect/testlibs - the visualizer is under libeffects/virtualizer Change-Id: I8d91e2181f81b89f8fc0c1e1e6bf552c5809b2eb
* Initial check-in for software m4v_h263 encoderJames Dong2010-07-1540-0/+26358
| | | | Change-Id: I4b49fa5c3a5e6e21cfd2419441d98dd784046367
* Merge "Support user-supplied timescales for authoring" into gingerbreadJames Dong2010-07-154-53/+149
|\
| * Support user-supplied timescales for authoringJames Dong2010-07-144-53/+149
| | | | | | | | | | | | - also, change all the real time unit to microseconds in MPEG4Writer Change-Id: I260f512f2eb670ade7b8858a56335a5d639de756
* | move native services under services/Mathias Agopian2010-07-141-2/+2
|/ | | | | | | | moved surfaceflinger, audioflinger, cameraservice all native services should now reside in this location. Change-Id: Iee42b83dd2a94c3bf5107ab0895fe2dfcd5337a8
* Use the OpenSL ES definition of SL_IID_EQUALIZER for the EQJean-Michel Trivi2010-07-141-1/+2
| | | | | | effect UUID instead of defining it locally. Change-Id: Id6018fef20d286899cf7503fec3521dcd56db7e0
* Fix simulator buildJames Dong2010-07-132-0/+4
| | | | | | | - missing header file <string.h> - need to define -D__arm__ Change-Id: I18d2f1908684150784cf728234b5aedbc02447d1
* Merge "Modifications in audio effect engine state management." into gingerbreadEric Laurent2010-07-134-5/+76
|\
| * Modifications in audio effect engine state management.Eric Laurent2010-07-134-5/+76
| | | | | | | | | | | | | | | | | | | | | | - Separate the updating of effect engine state from the process call in EffectModule so that the state of all effects in the same effect chain is updated simultaneusly before all process functions are called. - Added a mechanism for the effect engine to continue being called for processing after receiving the disable commands untils it considers that the framework can stop calling the process function without causing a glitch or loosing some effect tail. - Updated test reverb and equalizer to support this new feature Change-Id: Icb56ae2c84c076d4dbad6cf733b1a62f823febe7
* | Initial checkin for software AVC encoderJames Dong2010-07-1327-1/+17910
|/ | | | | | | | | | - Since the software encoder assumes the input is YUV420 planar, color conversion needs to be added when the input color format does not meet the requirement. With this patch, I only added a single color conversion from YUV420 semi planar to YUV420 planar. We can add more as we go. Change-Id: If8640c9e5a4f73d385ae9bb2022e57f7f62b91b9
* Merge "Fix swap of sessionId and output in audio effect API." into gingerbreadJean-Michel Trivi2010-07-091-2/+2
|\
| * Fix swap of sessionId and output in audio effect API.Jean-Michel Trivi2010-07-091-2/+2
| | | | | | | | Change-Id: Idc93415efef92087507401e50cfb235a6f1f7ed7
* | Enable the support for decoding audio with AAC+ and eAAC+ featuresJames Dong2010-07-082-45/+65
| | | | | | | | | | | | bug - 282684 Change-Id: I73c8377af3cc4edd3ee7cea86dc3b1c369fbd78b
* | Add runtime dumpsys support for media recorder clientJames Dong2010-07-086-15/+90
| | | | | | | | Change-Id: I4c8a81720f3be2db54678a7e84fe12849255046b
* | Added JAVA classes to control bass boost, equalizer, reverberation and ↵Eric Laurent2010-07-082-567/+585
|/ | | | | | | | | | | | | | | | | | virtualizer Effects. Defined the following JAVA classes on top of AudioEffect class to facilitate control off built-in audio effects with APIs aligned with interfaces defined in OpenSL ES specification: - BastBoot.java - Equalizer.java - PresetReverb.java - EnvironmentalReverb.java - Virtualizer.java Split reverb API header file in two, one for preset reverb and one for environmental reverb. Some changes in test reverb to support preset reverb. Change-Id: Ie0a5ba06002e63dfd6da22cace5568c1e0b76ea1
* Merge "Added Visualizer effect." into gingerbreadEric Laurent2010-07-079-221/+778
|\
| * Added Visualizer effect.Eric Laurent2010-07-079-221/+778
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The visualizer enables application to retrieve part of the currently playing audio for visualization purpose. It is not an audio recording interface and only returns partial and low quality audio content as a waveform or a frequency representation (FFT). Removed temporary hack made in MediaPlayer for animated wall papers based on audio visualization (snoop() method. This commit also includes a change in AudioEffect class: - the enable()/disable() methods have been replaced bya more standard setEnabled() method. - some fixes in javadoc Change-Id: Id092a1340e9e38dae68646ade7be054e3a36980e
* | Merge "Allow application to set two more encoding paramters: video profile ↵James Dong2010-07-073-15/+132
|\ \ | | | | | | | | | and level" into gingerbread
| * | Allow application to set two more encoding paramters: video profile and levelJames Dong2010-07-073-15/+132
| | | | | | | | | | | | Change-Id: I673e681cefe184d5c556c612c54600a24a2143e5
* | | Only send the playback complete notification if a) an error occurred on any ↵Andreas Huber2010-07-072-20/+37
|/ / | | | | | | | | | | track or b) all tracks have finished playing. The previous behaviour was to send the notification as soon as the first track finished playing. Change-Id: Icac8104d14f18b719aa0b8f1ab3215f24003b152
* | Merge "ALooperRoster no longer holds strong references to handlers and ↵Andreas Huber2010-07-071-6/+38
|\ \ | | | | | | | | | loopers." into gingerbread
| * | ALooperRoster no longer holds strong references to handlers and loopers.Andreas Huber2010-07-071-6/+38
| | | | | | | | | | | | Change-Id: I038d69b0a34eda1bfc5216d92c837a5ddf4fb802
* | | Make sure the OMX callback thread is properly shutdown after the node goes away.Andreas Huber2010-07-071-0/+9
|/ / | | | | | | Change-Id: Ib0b25855b0dfc191e5529193b4cb519f644a8412
* | Merge "An AHandler can now find its associated ALooper." into gingerbreadAndreas Huber2010-07-073-0/+46
|\ \
| * | An AHandler can now find its associated ALooper.Andreas Huber2010-07-023-0/+46
| | | | | | | | | | | | Change-Id: Ic7087b8dcbc0d9abda272df0cb01b04b006f82ad
* | | Merge "Add an option to ALooper::start that allows it to call back into java ↵Andreas Huber2010-07-021-4/+5
|\ \ \ | |/ / |/| | | | | or not." into gingerbread
| * | Add an option to ALooper::start that allows it to call back into java or not.Andreas Huber2010-07-021-4/+5
| | | | | | | | | | | | Change-Id: Iec172901a04a575d8d350bd162565f04677c3f26
* | | Merge "Added AMessage::debugString() for debugging purposes." into gingerbreadAndreas Huber2010-07-021-0/+103
|\ \ \
| * | | Added AMessage::debugString() for debugging purposes.Andreas Huber2010-07-011-0/+103
| |/ / | | | | | | | | | Change-Id: Id43ffd2c56d659dc29f37e277f8c7b38f11c1591
* | | Merge "Refactor Stagefright::StartMPEG4Recording()" into gingerbreadJames Dong2010-07-012-152/+186
|\ \ \
| * | | Refactor Stagefright::StartMPEG4Recording()James Dong2010-07-012-152/+186
| | | | | | | | | | | | | | | | | | | | | | | | - Also, better error handling Change-Id: Ic18d08dc6489adf92c6a588efa4baca66429b175
* | | | Support for writing the extracted data to an .mp4 file in the stagefright ↵Andreas Huber2010-07-011-1/+40
| |/ / |/| | | | | | | | | | | | | | commandline tool. Change-Id: I972324a8fc9757e6e8116b0270ec0882106f8733
* | | Add multiple camera support for in MediaProfiles.Chih-Chung Chang2010-07-011-16/+65
|/ / | | | | | | Change-Id: Ie89568a0f5f5fd08ede77e33f9a559215d6bed9a
* | Support for vanilla YUV420sp => RGB565 color conversion.Andreas Huber2010-06-301-0/+68
| | | | | | | | Change-Id: I22e5b554909e169eaf153d1f25b636f6f04a1871
* | Added encoding parameters set up for H263 video encoderJames Dong2010-06-295-81/+208
| | | | | | | | | | | | | | | | Also: - Allowed start() call when encoder already starts and stop() call when encoder has not started yet - Handled default value for audio/video sources/encoders and file output format Change-Id: I03b2f7d3cf570baa0fd011a8c0ad200f2f2a5da1
* | Add qcom's new OMX components to the list.Andreas Huber2010-06-291-4/+17
|/ | | | Change-Id: Ic8d261aaa5b15c1be7e6d57aee6be51cecb10bb1
* Collect statistical data from authoring engine (second part)James Dong2010-06-281-25/+41
| | | | | | | | | | - added sample duration to the statistcal log messages. - fixed the bug on miscalcuting the average frame rate. - also fixed an issue where both frame and time progress status notifications are sent out even though only one of them is explicitly requsted. Change-Id: Ib86f15a85fad3dbeabde120c3c782b79c16da46c
* Separate MediaRecorderClient with MediaPlayerClientJames Dong2010-06-287-9/+80
| | | | | | | | | | - 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-254-28/+155
| | | | | | | | | - 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
* Merge "Various fixes and improvements in audio effects implementation" into ↵Eric Laurent2010-06-2512-83/+195
|\ | | | | | | gingerbread
| * Various fixes and improvements in audio effects implementationEric Laurent2010-06-2512-83/+195
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Effect API: - Use different definitions for audio device, channels, formats... in AudioSystem and EffectApi: Removed media/AudioCommon.h file created for initial version of EffectApi - Indicate audio session and output ID to effect library when calling EffectCreate(). Session ID can be useful to optimize the implementation of effect chains in the same audio session. Output ID can be used for effects implemented in audio hardware. - Renamed EffectQueryNext() function to EffectQueryEffect() and changed operating mode: now an index is passed for the queried effect instead of implicitly querying the next one. - Added CPU load and memory usage indication in effects descriptor - Added flags and commands to indicate changes in audio mode (ring tone, in call...) to effect engine - Added flag to indicate hardware accelerated effect implementation. - Renamed EffectFactoryApi.h to EffectsFactoryApi.h for consistency with EffectsFactory.c/h Effect libraries: - Reflected changes in Effect API - Several fixes in reverb implementation - Added build option TEST_EFFECT_LIBRARIES in makefile to prepare integration of actual effect library. - Replaced pointer by integer identifier for library handle returned by effects factory Audio effect framework: - Added support for audio session -1 in preparation of output stage effects configuration. - Reflected changes in Effect API - Removed volume ramp up/down when effect is inserted/removed: this has to be taken care of by effect engines. - Added some overflow verification on indexes used for deferred parameter updates via shared memory - Added hardcoded CPU and memory limit check when creating a new effect instance Change-Id: I43fee5182ee201384ea3479af6d0acb95092901d
* | Merge "Finetune some of the prefetcher parameters to a) buffer as much as ↵Andreas Huber2010-06-251-2/+2
|\ \ | | | | | | | | | froyo did b) ensure that keepalives actually trigger a network read instead of just draining internal buffers" into gingerbread
| * | Finetune some of the prefetcher parameters to a) buffer as much as froyo did ↵Andreas Huber2010-06-251-2/+2
| | | | | | | | | | | | | | | | | | b) ensure that keepalives actually trigger a network read instead of just draining internal buffers Change-Id: Iaedfb5645e3052a63789244c90900573f8449bac
* | | Enable passing parameters to the MediaWriter at runtime (at start() call).James Dong2010-06-254-11/+95
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - estimate the moov box size for mp4 file writer based on the file size/duration limit and target bit rate. - can switch to use 64 bit file offset at runtime rebased Change-Id: Ibbe1f57e91ab2605820d5d96e8048d11e5559c53
* | | Merge "Track maximum amplitude and fix getMaxAmplitude()" into gingerbreadJames Dong2010-06-253-1/+38
|\ \ \ | |/ / |/| |
| * | Track maximum amplitude and fix getMaxAmplitude()James Dong2010-06-243-1/+38
| | | | | | | | | | | | | | | | | | - only start to track the max amplitude after the first call to getMaxAmplitude() Change-Id: I64d3d9ca0542202a8535a211425e8bccceca50fc
* | | Merge "Properly identify malformed (too short) chunks in mpeg4 files." into ↵Andreas Huber2010-06-241-0/+8
|\ \ \ | |/ / |/| | | | | gingerbread
| * | Properly identify malformed (too short) chunks in mpeg4 files.Andreas Huber2010-06-241-0/+8
| | | | | | | | | | | | Change-Id: Id2efb1bba195c4ad6f132cd706cc813135ead8a4
* | | Merge "Fixed the software AAC encoder" into gingerbreadJames Dong2010-06-243-31/+64
|\ \ \ | |/ / |/| |
| * | Fixed the software AAC encoderJames Dong2010-06-233-31/+64
| |/ | | | | | | | | | | | | Make sure that each input frame contains at least 1024 samples, as required by the AAC encoder, and fix the incorrect timestamp. Change-Id: I344cafe8c89be51d6e64552fab70539990ff6049