Merge commit '81046c8c42ff3b630c6496deafd44f2a07a25463' into gingerbread-plus-aosp
* commit '81046c8c42ff3b630c6496deafd44f2a07a25463':
Various changes to improve rtsp networking, reduce packet loss and adapt to ALooper API changes.
Merge commit '8a9a931fff2d184f7cf77fdd8a425f682f006cfd'
* commit '8a9a931fff2d184f7cf77fdd8a425f682f006cfd':
Support finer seek control on MediaSources.
Merge commit '8138e841a5adb3c5629e263f5a8cb2e936d234ce' into gingerbread-plus-aosp
* commit '8138e841a5adb3c5629e263f5a8cb2e936d234ce':
Support finer seek control on MediaSources.
Merge commit '34161132030254bac7dd64c9713832e2f961a061'
* commit '34161132030254bac7dd64c9713832e2f961a061':
Added support for auxiliary audio effects to AudioTrack and MediaPlayer.
Merge commit '7070b36549d511d6627538c73dfbab23fbae5b43' into gingerbread-plus-aosp
* commit '7070b36549d511d6627538c73dfbab23fbae5b43':
Added support for auxiliary audio effects to AudioTrack and MediaPlayer.
Added methods to AudioTrack and MediaPlayer java classes to enable use of
auxiliary audio effects. The effect can be attached and detached by specifying its
ID and the send level controlled.
Change-Id: Ie74ff54a453096a742688476f612ce355543b6f3
Preview is called when CAMERA_MSG_COMPRESSED_IMAGE is recieved by
dataCallback(). It needs to be started as a new thread so that the
callback can return, and the camera can know that takePicture() is
done.
Change-Id: I4d0febbc993aac43b37f9f4a824e9c7b8785f19e
Merge commit 'ff45709fbd1f24de1cf75ce9ce9ac8694ff1abbe'
* commit 'ff45709fbd1f24de1cf75ce9ce9ac8694ff1abbe':
Support a single format change at the beginning of audio playback. This way the AAC+ decoder may change its output format from what is originally encoded in the audio stream and we'll still play it back correctly.
Merge commit 'cc14a8393b92cd1ed6cba74829396045605ab211' into gingerbread-plus-aosp
* commit 'cc14a8393b92cd1ed6cba74829396045605ab211':
Support a single format change at the beginning of audio playback. This way the AAC+ decoder may change its output format from what is originally encoded in the audio stream and we'll still play it back correctly.
Added methods for audio effects management by audio policy manager.
- control of total CPU load and memory used by effect engines
- selection of output stream for global effects
- added audio session id in parameter list for startOutput() and stopOutput().
this is not used in default audio policy manager implementation.
Modifications of audio effect framework in AudioFlinger to allow moving and reconfiguring
effect engines from one output mixer thread to another when audio tracks in the same session
are moved or when requested by audio policy manager.
Also fixed mutex deadlock problem with effect chains locks.
Change-Id: Ida43484b06e9b890d6b9e53c13958d042720ebdb
Merge commit '4df3ab54ebf8dfc0ce3160992d4d5b47e103b71f'
* commit '4df3ab54ebf8dfc0ce3160992d4d5b47e103b71f':
Fix MPEG4Extractor to extract sampling frequency correctly when SBR is enabled.
Merge commit 'faf1d46a60518fcc3e58c91740e673e8a3f2d3cc' into gingerbread-plus-aosp
* commit 'faf1d46a60518fcc3e58c91740e673e8a3f2d3cc':
Fix MPEG4Extractor to extract sampling frequency correctly when SBR is enabled.
Add support for detecting android MTP devices
Fix problem reading data packet with header sent separately from payload.
Change-Id: I07b34af6783ebe2e63a317796ba0c8223df86edf
Signed-off-by: Mike Lockwood <lockwood@android.com>
Also moving entire implementation into a new class CameraSourceTimeLapse
which inherits from CameraSource.
For timelapse capture using still camera, we start a thread which runs a
loop in which it calls Camera::takePicture() and then sleeps until the next
frame should be captured.
The function dataCallback() handles the callback from the camera with the
raw image data. This function copies the data and creates an artificial
timestamp corresponding to one frame time ahead of the last encoded frame's
time stamp. It then calls dataCallbackTimestamp() of the base class which
will think that it recieved the frame from a video camera and proceed as usual.
For moving the implementation to the subclass CameraSourceTimeLapse, added a
few virtual functions to CameraSource, which do the current thing for the base
class, but specialized things for CameraSourceTimeLapse.
E.g. startCameraRecording() in the base class just calls mCamera->startRecording(),
while in CameraSourceTimeLapse it may start a thread for the still camera case.
Change-Id: Ib787f24bd2e1f41681513f0257e1c4ca10a2b4de
Different handling of libdl. Added sim handling in one place, corrected
typo in sim handling in another.
Change-Id: I24153ad5b8873083225390ba6a751941d231d092
This column will be added to the images, audio_meta, video and audio_playlist
tables to cross reference to the MTP objects table.
Renamed MTP_OBJECT_HANDLE (which is used only by the media scanner) to
MEDIA_SCANNER_NEW_OBJECT_ID to avoid confusion.
Change-Id: I8093485dc0438f408a505e82ffddd0710c7a512c
Signed-off-by: Mike Lockwood <lockwood@android.com>
Fixed the following problems in audio effect volume control in AudioFlinger:
- Make sure that the volumes returned by EffectChain::setVolume_l() are correct even is
no change is detected since last call
- Do not use isEnabled() to validate volume control but mState >= ACTIVE instead as the volume control
must be also active in STOPPING and STOPPED states.
Change-Id: Id62da3164fad500ee8a5efd6cd78c77e8fdcb541
Merge commit '2b381affda94c5b17e023768f9f2271c69152838'
* commit '2b381affda94c5b17e023768f9f2271c69152838':
First submission of audio effect library from NXP software.
Merge commit '2c87e9c923b0362fabf8c97ff63997542394c428' into gingerbread-plus-aosp
* commit '2c87e9c923b0362fabf8c97ff63997542394c428':
First submission of audio effect library from NXP software.
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