Added handling of OutOfMemoryError handling to createImageThumbnail
method in ThumbnailUtils.java. During mediascanner run it would run
out of memory when trying to decode very large images. Now it handles
this error and returns null which is handled by the media scanner.
Change-Id: Ie68722dfa1cedd3c0847bf483baa40c4827ad5a8
Cherripick from master CL 79833, 79417, 78864, 80332, 87500
Add new audio mode and recording source for audio communications
other than telelphony.
The audio mode MODE_IN_CALL signals the system the device a phone
call is currently underway. There was no way for audio video
chat or VoIP applications to signal a call is underway, but not
using the telephony resources. This change introduces a new mode
to address this. Changes in other parts of the system (java
and native) are required to take this new mode into account.
The generic AudioPolicyManager is updated to not use its phone
state variable directly, but to use two new convenience methods,
isInCall() and isStateInCall(int) instead.
Add a recording source used to designate a recording stream for
voice communications such as VoIP.
Update the platform-independent audio policy manager to pass the
nature of the audio recording source to the audio policy client
interface through the AudioPolicyClientInterface::setParameters()
method.
SIP calls should set the audio mode to MODE_IN_COMMUNICATION,
Audio mode MODE_IN_CALL is reserved for telephony.
SIP: Enable built-in echo canceler if available.
1. Always initialize AudioRecord with VOICE_COMMUNICATION.
2. If echo canceler is available, disable our echo suppressor.
Note that this CL is intentionally not correcting the
getAudioSourceMax() return value in MediaRecorder.java as the
new source is hidden here.
Change-Id: Ie68cd03c50553101aa2ad838fe9459b2cf151bc8
String.format was used instead of a simple string concatenation.
This is a problem when language is set to Arabic since simple
integers will be converted into Arabic numbers.
Change-Id: I2cbd4c5cd2d09117202e6ae191845fd5fc9154ec
o Prepare for publishing MediaMetadataRetriever as public API
step one:
o replaced captureFrame with getFrameAtTime
o removed getMode
o Replace MediaMetadataRetriever.captureFrame() with MediaMetadataRetriever.getFrameAtTime()
as part of the preparation for publishing MediaMetadataRetriever as public Java API
o Remove captureFrame from MediaMetadataRetriever.java class
It has been replaced by getFrameAtTime() method
o Replace extractAlbumArt() with getEmbeddedPicture() in MediaMetadataRetriever.java
o Publish MediaMetadataRetriever.java as public API
o Removed setMode() methods and related mode constants
o Removed some of the unused the metadata keys
o Updated the javadoc
o part of a multi-project change.
bug - 3309041
Change-Id: I2efb6e8b8d52897186b016cb4efda6862f5584c4
* commit 'f13d4501396aa1679004ad07d440f65ced3ecc2b':
Send "compilation" tag when inserting into the database. It's not actually inserted into the database, but the media provider uses it for disambiguating albums. b/3311831
* commit 'ba77a3f9cb1d68b2ed4813aaae856444578e3a75':
Add support for the "compilation" tag in mp3, mp4 and ogg, and also add support for two common ways of specifying album artist in ogg files. b/3311831
It's not actually inserted into the database, but the media provider uses it
for disambiguating albums.
b/3311831
Change-Id: Idb630866e960338ce2795dcc128cafaf6c9c27f2
The java doc for visualizer FFT capture was not describing
correctly the layout of the data returned by getFft() method.
Change-Id: Idec09538490ea73b211db253b1b8b733ca4d4a72
Merge commit '312644cdbb39522fe9cac028b15b907ce0e8e0f7' into gingerbread-plus-aosp
* commit '312644cdbb39522fe9cac028b15b907ce0e8e0f7':
Support for writing to MPEG2 transport stream files.
Merge commit 'f72dd0190ee64914161d361be1213eda8cab7b90' into gingerbread-plus-aosp
* commit 'f72dd0190ee64914161d361be1213eda8cab7b90':
Disable 10secs forward/backward seeking for rtsp as seek is a very expensive operation there. Decouple the 10sec forward/backward button functionality from seekbar functionality.
- Created sub-package android.media.audiofx for audio effects.
- Hid AudioEffect class contructor, methods and variables not needed by
applications
- Added more javadoc comments for AudioEffect Class
Change-Id: Ibbb40d4e714bb248aa32cf82d7763d74efae96d1
Scale audio signal during capture according to peak level so that
returned values on 8 bits contain enough information even for weak
signals.
Also do not reject requests to enable/disable the visualizer if we are
already in the requested state.
Change-Id: I07a705619764350834e61f82d161761eab688747
Merge commit '8d1513e13c1e3d0142423570c0028e147bf0ea37' into gingerbread-plus-aosp
* commit '8d1513e13c1e3d0142423570c0028e147bf0ea37':
Made audio effect control panel intents public.
Merge commit 'eea35ce87f179098215b590fbb21162cca5ff8da' into gingerbread-plus-aosp
* commit 'eea35ce87f179098215b590fbb21162cca5ff8da':
Added intents for audio effects control application
Added intents to launch audio effects control panel UI and
communicate playback state from media player applications
to effect control application/service.
Change-Id: Iede23ae11fa9f0802df5f36299dd80ea57eda376
Merge commit 'c6d7a8953de9dd4e0af1dca69d83d810c05d809d' into gingerbread-plus-aosp
* commit 'c6d7a8953de9dd4e0af1dca69d83d810c05d809d':
Changed type of reverb presets from int to short
Changed the type of reverb preset constants exposed by the PresetReverb API to
match the type of the setPreset() method parameter.
Change-Id: I786764b5279c60f2368f5a0372f78da65ec54e4f
The "strength supported" parameter for bass boost and virtualizer effect was incorrectly using a
short value whereas it should be an int. This is to comply to the definition of boolean type in OpenSL ES
that is uint32.
Change-Id: I74ccb61dcc70fc9d390524a1ca5bbbd8b13ab1af
Merge commit '66edf558a9041eb0b1a7fc0459db1bdafcfca84b' into gingerbread-plus-aosp
* commit '66edf558a9041eb0b1a7fc0459db1bdafcfca84b':
Fix bug 2684341 Don't steal the media button event from the phone
app is the phone is ringing, even in silent mode.
Use the PhoneStateListener to know whether the phone is ringing,
as the mode is not MODE_RINGTONE when ringing in silent mode.
Change-Id: Iede350cecde0b663d50f9b4a57f9a9ef08066c0d
- Fixed constant inversions in AudioEffect.java
- Do not return error when enabling an already enabled effect
- Update cached effect state in native AudioEffect class when effect is enabled/disabled by command() method
- Remove click when restarting effect during disable sequence
- Fixed problem in master mute management when volume control is delegated to effect.
Change-Id: I6df4ce9fcc54fdc7345df858f639d20d802d6712