History log of /frameworks/base/media/java/android/media/MediaPlayer.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
ce4957eb37bda0ab6976d0835fe6851232ddf5a3 17-Jun-2016 Wei Jia <wjia@google.com> MediaPlayer: fix java doc for setPlaybackParams.

Bug: 29032949
Change-Id: I75a59e2a4c75b5e84e2257f8e386d7b05faf9c1b
/frameworks/base/media/java/android/media/MediaPlayer.java
77e351f81e5a893e1843fa5babbd63754b4a0ea1 14-Jun-2016 Wei Jia <wjia@google.com> MediaPlayer: fix java doc for setSurface and setDisplay.

Bug: 29149415
Change-Id: I281b6328c068255387ca01a987ff136c3be5e25b
/frameworks/base/media/java/android/media/MediaPlayer.java
ed78114ffdd9e7fdd2c3b804a4359ae28fa38019 26-May-2016 Robert Shih <robertshih@google.com> Fix deadlock when showing subtitles MediaPlayer

Move all SubtitleTrack operations to TimeProvider's event handler thread.

Bug: 28784397
Change-Id: Iff848635390e99ffb19add03277a9d62feece4cc
/frameworks/base/media/java/android/media/MediaPlayer.java
3c86a343dfca1b9e2e28c240dc894f60709e392c 09-Apr-2016 Jean-Michel Trivi <jmtrivi@google.com> Player superclass for handling AppOps features

Add a new class to group media/audio player features under one
interface. Currently only used for audio-related AppsOps
restrictions. In the future can group routing, audio focus
handling by the framework...
MediaPlayer inherits from PlayerBase, and overrides the methods
that are needed to delegate the handling of the restrictions
in a separate class.
When AppOps restrictions change (as triggered through the
callback in PlayerBase), reset the volume to its value intended
by the application (when unmuting) or the framework (0 when
enforcing the restriction).

Bug 28069414

Change-Id: I2f38e4b9b3c029778836868cf78f4d15d7603247
/frameworks/base/media/java/android/media/MediaPlayer.java
59dcf6746b0f7ad9e4dac1b7c8e20f16b73987d3 11-Apr-2016 Marco Nelissen <marcone@google.com> Add javadoc

Bug: 27952005
Change-Id: Ia1b6b6a723c30979c7c7ad7c0b2c0e7e295f0831
/frameworks/base/media/java/android/media/MediaPlayer.java
a2239b78f8a1252c1b34ef00b55cf4e4058d243d 03-Mar-2016 Wei Jia <wjia@google.com> MediaPlayer: use local variable to check member is null.

Bug: 26961341
Change-Id: I343b18f4bfaba9b119a6721e1b39415474149d75
/frameworks/base/media/java/android/media/MediaPlayer.java
413573ac59bb9904c3bd28c03843054fee7478a6 23-Feb-2016 Jeff Sharkey <jsharkey@android.com> Offer to cache ringtones in system DE storage.

Ringtones often live on shared media, which is now encrypted with CE
keys and not available until after the user is unlocked. To improve
the user experience while locked, cache the default ringtone,
notification sound, and alarm sound in a DE storage area.

Bug: 26730753
Change-Id: Ie6ad7790af4c87dd25759df3ed017e3b91a2fb87
/frameworks/base/media/java/android/media/MediaPlayer.java
69c8cc2930a657d68a3b0365f6aa9e7524889c70 21-Jan-2016 Jaesung Chung <jaesung@google.com> Merge "Support for CEA-708 closed caption"
978bf5eff0f5bc8a8878696bc886d8b99a29ee39 07-Dec-2015 Jaesung Chung <jaesung@google.com> Support for CEA-708 closed caption

Bug: 24314667
Change-Id: I5e04f7646e40eb8f358666c8b109eccb6617a246
/frameworks/base/media/java/android/media/MediaPlayer.java
1709832d474a7be85d46e55fab5773e399cd7086 02-Dec-2015 Chris Elliott <chriselliott@google.com> Merge "MediaPlayer: Disable acquiring wakelocks based on property." into cw-e-dev am: 50276adde2 am: c54aa0c3f7
am: 767e2b39db

* commit '767e2b39db78e41241998b7b3941a15d68c6b4f2':
MediaPlayer: Disable acquiring wakelocks based on property.
f60491183def4c46b4026afb4648544e7289ea5f 27-Jul-2015 Sridhar Vashist <svashist@motorola.com> MediaPlayer: Disable acquiring wakelocks based on property.

Ignore setWakeMode based on system property.
Wakelocks essential for playback will be held by audioflinger.

Change-Id: I413cd873bf21e1e999dbf89a27802fbe1b6022c7
Signed-off-by: Sridhar Vashist <svashist@motorola.com>
/frameworks/base/media/java/android/media/MediaPlayer.java
92a1b8cab2c7151831b9a66fb87bf853dfcaee8d 14-Oct-2015 Wei Jia <wjia@google.com> am 559f28ec: am d32df662: am de612dc1: MediaPlayer: remove obsolete function setPlaybackRate from comments.

* commit '559f28ec67636f7bed82550be7590db46b47f1d0':
MediaPlayer: remove obsolete function setPlaybackRate from comments.
de612dc1d10d25e017ac911d0e7cca6709bdbb96 08-Oct-2015 Wei Jia <wjia@google.com> MediaPlayer: remove obsolete function setPlaybackRate from comments.

Bug: 24260668
Change-Id: I20733e52dbd2dab5eb10b4607a1c1aadb93a1332
(cherry picked from commit cd860ac06ca7a46e9638dd741ba731f066705eb5)
/frameworks/base/media/java/android/media/MediaPlayer.java
f807c4fc9e9a67aeec2c761e391dc1ed7ace3b1a 13-Oct-2015 Ronghua Wu <ronghuawu@google.com> am c2fd35f7: am 57c332bd: am c024de3c: media: ignore null InputStream

* commit 'c2fd35f7ae51d83b3d8f7f46c70e351bf0f18235':
media: ignore null InputStream
c024de3c946c18e8e4799eb8d372fdec3146f8cf 11-Aug-2015 Ronghua Wu <ronghuawu@google.com> media: ignore null InputStream

Bug: 22854896
Change-Id: I20b9e28bbba6dec73538ee6937d337c2e2b971f4
/frameworks/base/media/java/android/media/MediaPlayer.java
86845c1bc836ec5482312e75798e3d00b927fd25 11-Aug-2015 Ronghua Wu <ronghuawu@google.com> media: ignore null InputStream

Bug: 22854896
Change-Id: I20b9e28bbba6dec73538ee6937d337c2e2b971f4
/frameworks/base/media/java/android/media/MediaPlayer.java
78aedaf5f6bacef0cbe24388879fca5f6281660e 24-Jul-2015 Jean-Michel Trivi <jmtrivi@google.com> am dc9fcc3a: am 938e8e30: am 9f4b7a47: am 7b996853: Merge "MediaPlayer subtitle controller: use debug log instead of warning" into mnc-dev

* commit 'dc9fcc3a55e734b2aab1e4754db3b588e1fbfc80':
MediaPlayer subtitle controller: use debug log instead of warning
cab361c9bbde051cdfb62afc5bc03ba3d6ee2217 23-Jul-2015 Jean-Michel Trivi <jmtrivi@google.com> MediaPlayer subtitle controller: use debug log instead of warning

Don't use warning log for debug message.

Bug 22698299

Change-Id: Ibe3526fffffc9a7bdcda83c02fd745325db1238b
/frameworks/base/media/java/android/media/MediaPlayer.java
c591b0c454c3aed623a8b7ef620b03c98cc3ac81 20-Jul-2015 Jeff Sharkey <jsharkey@android.com> am 37a8e0e0: am f14e4435: am 0fa2a56c: am 71780e79: Merge "Better logging of MediaPlayer failure reason." into mnc-dev

* commit '37a8e0e0ae3b920a1b272eaa0fa24fc4c7340288':
Better logging of MediaPlayer failure reason.
4fa85b7cadfb2a2e8584f99a8b316f33d56bee75 20-Jul-2015 Jeff Sharkey <jsharkey@android.com> Better logging of MediaPlayer failure reason.

Otherwise exception details are dropped on the floor, making it
hard to debug.

Bug: 22525550
Change-Id: I6ab9eb8461a23b9d9b8a0ea6dd1ae8ee2495dd01
/frameworks/base/media/java/android/media/MediaPlayer.java
c279a835d5dcb16ac5b4b5311940de5b4fbd72aa 25-Jun-2015 Narayan Kamath <narayan@google.com> am 37c68894: am a78c0e0b: Merge "Fixed Javadoc typos"

* commit '37c688948d4464d636cd64c537b98697cb4b795d':
Fixed Javadoc typos
802aa0f8a22524d8b338d8279c1e121f21b9cdc2 12-May-2015 Philipp Hasper <vcs@hasper.info> Fixed Javadoc typos

Simple single character typos

Change-Id: I17660dbb3b7ee6597637e8d76770f434ebf202ea
/frameworks/base/media/java/android/media/MediaPlayer.java
706ebb3ad76cc4aaa0ea16756735ee7df0a9478c 19-Jun-2015 Robert Shih <robertshih@google.com> MediaPlayer: documentation for error/info codes.

Documented in this change:
MEDIA_ERROR_SYSTEM, and
MEDIA_INFO_NETWORK_BANDWIDTH

Bug: 18237764
Change-Id: I0e1efb5813ab0f65133d4119de7562912947c41d
/frameworks/base/media/java/android/media/MediaPlayer.java
07830aa6ba4804880df3cb39f8932aa6b3906a8a 28-May-2015 Robert Shih <robertshih@google.com> MediaPlayer: trigger onError instead of exception on stale native notifications

This change also reverted commit 2c838fbd87ad5685c0008b419ea02421159b9b70,
"MediaPlayer: add mPreparing to weed out unwanted prepared messages".

Bug: 21266735
Change-Id: I392342519420bee2fde1fe1915c51d24101ca27d
/frameworks/base/media/java/android/media/MediaPlayer.java
67ba691ad6fbc6d0ee28635b40c87f4cddd61399 22-May-2015 Robert Shih <robertshih@google.com> Merge "MediaPlayer: add mPreparing to weed out unwanted prepared messages" into mnc-dev
410239b6bf0318d1fc8fa32da1fdedb4173e648f 22-May-2015 Robert Shih <robertshih@google.com> MediaPlayer: add mPreparing to weed out unwanted prepared messages

Bug: 21266735
Change-Id: Ie4fe76533c9b7f505c57ba63df7992f2490942cc
/frameworks/base/media/java/android/media/MediaPlayer.java
d3969546a8bc4efe1e5e8a72bee07105055d18c2 20-May-2015 Jean-Michel Trivi <jmtrivi@google.com> Fix reading attributes for playback restrictions

Playback restrictions can be lifted with the correct flag,
FLAG_BYPASS_INTERRUPTION_POLICY, but this flag is for the
system only. As such, it must be read by querying "all
the flags" with AudioAttributes.getAllFlags() which is a
system API which returns all the system flags. getFlags()
only returns the public SDK flags.

Bug 19407114

Change-Id: I22dadfaf5d1b48b3c0754e1e6af00b734d790fec
/frameworks/base/media/java/android/media/MediaPlayer.java
40bdcb7c52b5bb47dce57bc97454edebc95e1885 18-May-2015 Robert Shih <robertshih@google.com> Merge "MediaPlayer: persistent track indices" into mnc-dev
a460ea1a2c178a2c1816b1a983333166726ad579 29-Jan-2015 Robert Shih <robertshih@google.com> MediaPlayer: persistent track indices

Maintain inband (from native extractor) and out-of-band tracks (added by
client) in a single append only vector. This ensures that the same track
corresponds to the same index through out playback.

Bug: 10373268
Change-Id: I87b3ca2d2c710ee9087f7686f82ab0e018f55fd0
/frameworks/base/media/java/android/media/MediaPlayer.java
1973189fe0baa9b132c9b7f87a8ee1e1b234265a 16-May-2015 Robert Shih <robertshih@google.com> MediaPlayer: clean up subtitle controller log spam

- create a default SubtitleController if not set explicitly
- log warning instead of error

Bug: 17594306
Change-Id: Ie7084205b3555bdfec0a2940d0e56398f778585a
/frameworks/base/media/java/android/media/MediaPlayer.java
51bf5d9c078a57b52da786979103674588c2116c 14-May-2015 Lajos Molnar <lajos@google.com> Merge "media: remove setPlaybackRate from MediaPlayer and MediSync" into mnc-dev
05a822161fe0296b01f573192adf306c0ce38c9c 14-May-2015 Lajos Molnar <lajos@google.com> media: change final fields to accessors in MediaTimestamp

Bug: 20887706
Change-Id: Iea0acdeec9dd7e818c80454af639f9480ff6b285
/frameworks/base/media/java/android/media/MediaPlayer.java
dbc908fba85ab610737eeb6170c0808ffdd44741 14-May-2015 Lajos Molnar <lajos@google.com> media: remove setPlaybackRate from MediaPlayer and MediSync

Condensed them to an internal easyPlaybackParams to create
PlaybackParams from a rate and audio mode.

Bug: 21045118
Change-Id: I89879a3034c905e34cabef8ff0237048e097a8e0
/frameworks/base/media/java/android/media/MediaPlayer.java
b7514effd1b77829fb950f4fab22041f98b2075f 14-May-2015 Robert Shih <robertshih@google.com> MediaPlayer/TimedMetaData: API updates related to timed metadata

- renamed MediaPlayer.*OnTimedMetaData* to *OnTimedMetaDataAvailable*
- added `final` modifier to TimedMetaData class
- added javadocs for TimedMetaData public methods
- renamed private members and cooresponding accessors for TimedMetaData
- reworded existing TimedMetaData javadoc

Bug: 21045118
Change-Id: If0113307fce08083226fc7f64c4fe6f93553d899
/frameworks/base/media/java/android/media/MediaPlayer.java
ea4eb326cfc4a8221be5fdab9639d468c632aee2 09-May-2015 Wei Jia <wjia@google.com> Merge "MediaSync: address API review." into mnc-dev
2d61e2b97c92ac2de80ebb3782b728ae5cdf5306 09-May-2015 Wei Jia <wjia@google.com> MediaSync: address API review.

Rename *Settings to *Params;
Remove size parameter from MediaSync.queueAudio();

Bug: 20887706
Change-Id: I4c572da92ada51458031a482b96b3f624224e608
/frameworks/base/media/java/android/media/MediaPlayer.java
1e6be7285d4dc8b494c70aef8d2ed8b8c1d8e0de 06-May-2015 Chong Zhang <chz@google.com> MediaPlayer: pause media time when buffering

bug: 20500732
Change-Id: Ife7f75f5cc587af56451c85ea8adbdc380f38348
/frameworks/base/media/java/android/media/MediaPlayer.java
5eac1da3bbd513f6b5204454afa09c8d6c3c9c06 05-May-2015 Robert Shih <robertshih@google.com> Merge "MediaPlayer: setSubtitleAnchor on a HandlerThread" into mnc-dev
98b6842e30813d9e6bd052bfb8012d4f4743b217 04-May-2015 Robert Shih <robertshih@google.com> MediaPlayer: setSubtitleAnchor on a HandlerThread

This ensures that we wouldn't run into the error `Can't create handler
inside thread that has not called Looper.prepare` no matter on which
thread we attempt to set the SubtitleController internally.

Bug: 20821869
Change-Id: Ie53d60b58f5382428e7b7a01deccfa516b61b25f
/frameworks/base/media/java/android/media/MediaPlayer.java
29767a8c341c62d53661e800620273502f162e83 30-Apr-2015 Robert Shih <robertshih@google.com> MediaPlayer: provide mime type for all track types

Bug: 20729923
Change-Id: Id05ca0616a72f66abe6a541417baef491c49a417
/frameworks/base/media/java/android/media/MediaPlayer.java
7f08763f4140822c30d0e18d4d3939488c8d26f8 23-Apr-2015 Lajos Molnar <lajos@google.com> media: make MediaTimestamp an immutable class

Change-Id: I75efee22c4f4babbeaa02624349b5e164fbfe0ec
/frameworks/base/media/java/android/media/MediaPlayer.java
c98f58efd147c574faa4a4f9956b5ab95e3027a5 23-Apr-2015 Lajos Molnar <lajos@google.com> media: add SyncSettings to MediaSync and MediaPlayer

Bug: 18249558
Change-Id: I76d7e20d0e0c2d1d24bf60ade6386986573476f0
/frameworks/base/media/java/android/media/MediaPlayer.java
b3d5fd252851071f2f7e3dd66be84683750379ab 22-Apr-2015 Lajos Molnar <lajos@google.com> media: use PlaybackSettings in MediaSync and MediaPlayer

Bug: 19666434
Change-Id: Ic5e517534a26f4e3b0294205e0b93f95338bf072
/frameworks/base/media/java/android/media/MediaPlayer.java
b14e37cb37f0ba828e466bda1a7deb6050b68b92 18-Apr-2015 Robert Shih <robertshih@google.com> Merge "MediaPlayer: initial timed id3 support"
ac033f033d2c0ff3d7cfd037409278d73260e87c 10-Apr-2015 Robert Shih <robertshih@google.com> MediaPlayer: initial timed id3 support

Change-Id: Ibf2ea8fa1b44f2953bda49cdc6da979c2d3f6be2
/frameworks/base/media/java/android/media/MediaPlayer.java
4eaa2938084353a54dc259466172909329a048cc 20-Mar-2015 Chris Watkins <watk@google.com> Unhide the android.media.[Media]DataSource interface.

This allows apps to implement MediaDataSource, which is modeled on
stagefright's DataSource, to supply media data to the framework. This
was already implemented for MediaExtractor, but it was renamed from
DataSource.

MediaExtractor, MediaPlayer and MediaMetadataRetriever each have a new
overload: #setDataSource(android.media.MediaDataSource)

Only NuPlayer supports this new data source.

The change introduces:
* IDataSource: The binder interface for DataSource.
* JMediaDataSource: The native counterpart to the java interface. It
implements IDataSource.
* CallbackDataSource: A stagefright DataSource that wraps an IDataSource.

Change-Id: I6d9c1167b4a7384c469b1e928f31791a7ebed716
/frameworks/base/media/java/android/media/MediaPlayer.java
af2d2acc1a148bc33ae50958cb286d0583a0b3a1 30-Mar-2015 Wei Jia <wjia@google.com> MediaPlayer: use local variable to check whether mTimeProvider is null.

Bug: 18753807
Change-Id: I05ef22edea5d06b1efb1a01bf540404eb75ac954
/frameworks/base/media/java/android/media/MediaPlayer.java
d93fcf400222e4d8b27a1025f6aa307839239b9f 10-Feb-2015 Wei Jia <wjia@google.com> MediaPlayer: add setPlaybackRate JAVA API.

Bug: 19196501
Change-Id: I43daced7d9b53bcaca4e6a8d81ca729b32efc79f
/frameworks/base/media/java/android/media/MediaPlayer.java
08c7116ab9cd04ad6dd3c04aa1017237e7f409ac 28-Feb-2015 John Spurlock <jspurlock@google.com> Remove unused imports in frameworks/base.

Change-Id: I031443de83f93eb57a98863001826671b18f3b17
/frameworks/base/media/java/android/media/MediaPlayer.java
bbfd31a5d4f126167e20fa8bd256c810cf8c2c85 18-Feb-2015 John Spurlock <jspurlock@google.com> AudioAttributes: introduce new flags to bypass audio restrictions.

- New @hidden @SystemApi FLAG_BYPASS_INTERRUPTION_POLICY, request
to ignore any current audio restrictions, such as zen mode
content-based notification filtering.
- Wire up FLAG_BYPASS_INTERRUPTION_POLICY to the existing
audio restriction checks in the framework.

- New @hidden @SystemApi FLAG_BYPASS_MUTE, request to play
audibly, even if the underlying stream is muted.
- Wiring up to audio framework TBD.

- Use both of these new flags on the inline volume slider
controls used in Settings, ensuring playback is heard
regardless of the current device filter state.

Bug: 19407114
Change-Id: I3d44394931592ccbc1b61ddd9a4d1cc984da17cc
/frameworks/base/media/java/android/media/MediaPlayer.java
87d76f6a3e407925c40bdebbfe851919cca58e68 10-Dec-2014 Jeff Sharkey <jsharkey@android.com> Throw IOException when missing default ringtone.

This is caught by Ringtone, and we then fall back to built-in
ringtone, which matches the expected CTS behavior.

Bug: 18610451
Change-Id: I234d17f7cf623b9b0af434e5d367aed28f203b14
/frameworks/base/media/java/android/media/MediaPlayer.java
1e88cf0796c8b15952b7d6b3160d0d097e857f15 26-Nov-2014 Ryan Lothian <rjlothian@google.com> Fix broken @see javadoc in android.media.* classes

This CL fixes all android.media.* javadoc that includes an "ERROR(...)"
message when rendered to HTML.

Bug: 18537403
Change-Id: Ic60f7cfe4cf4961da163d955387d65a5d2011905
(cherry picked from commit d550f9028ee7f52018fbed3cfd2d0b18d6a7c4f0)
/frameworks/base/media/java/android/media/MediaPlayer.java
3b566b84708eea887ab3e1e1bbba4b2242b261d6 12-Nov-2014 Jeff Sharkey <jsharkey@android.com> Move ringtone redirection to MediaPlayer.

Way back in API 1 we defined Settings.System.DEFAULT_NOTIFICATION_URI
which redirects through SettingsProvider before finally ariving at
the real underlying ContentProvider, usually MediaStore.

With new SELinux rules, we're no longer allowing the system_server
to hold open FDs to shared storage devices, which causes these
proxied openFile() calls to fail.

To work around this, teach MediaPlayer to resolve the final ringtone
Uri without going through the system.

Bug: 18226181
Change-Id: I40c68617c952c0bb3e939e5084f5b68a35e31ae3
/frameworks/base/media/java/android/media/MediaPlayer.java
8c4d53c3a9299b0c1fce2bf1c363ea199ad9ac16 05-Sep-2014 Robert Shih <robertshih@google.com> MediaPlayer/SubtitleController:fix add/select timed text on start

- scan internal tracks when necessary
- fix overflow in addTimedTextSource
- do not hide timed text track in doSelectDefaultTrack; i.e. apply
hiding logic to subtitle tracks only
- do not notify stop in scheduleUpdate; it will be fired in onStopped
if necessary

Bug: 17323221
Change-Id: I485f7d9197d10562fbd58d0afe5e9aa4cf610f1a
/frameworks/base/media/java/android/media/MediaPlayer.java
48db7834830215a3ee00f31a442a62acf33cabfa 25-Aug-2014 Ronghua Wu <ronghuawu@google.com> API: Document android-allow-cross-domain-redirect in MediaPlayer and VideoView

Bug: 17238151
Change-Id: Ib1e780cf5f93b07a7abbca839e7cc9f92a60d451
/frameworks/base/media/java/android/media/MediaPlayer.java
d504ab14d264e340fac9422b84b5f3c677d87c5f 18-Aug-2014 Lajos Molnar <lajos@google.com> media.MediaPlayer: don't check file-existence for URI-s with scheme

setDataSource can be called with URI-s as well as with file paths.
Check file-existence only for file:// URI-s as well as URI-s
without scheme (which are assumed to be paths).

Bug: 17109022
Change-Id: I70f16a4f614dcef0b47fa264cf708473036cef4e
/frameworks/base/media/java/android/media/MediaPlayer.java
546f3bf5fed40f2152b549f0b8e8ad5e1ad90bc1 30-Jul-2014 Ying Wang <wangying@google.com> Fix docs build.

Change-Id: I735f5b5a3fe36a454e384d5060d9273a9aabf3aa
/frameworks/base/media/java/android/media/MediaPlayer.java
05ad96e9a33e4e3d5568cfc3443fcb4dd7067433 29-Jul-2014 Robert Shih <robertshih@google.com> Merge "MediaPlayer: scanInternalSubtitleTracks in synchronous prepare" into lmp-dev
c42a96dba4beaf87875e71b8d8b77ce7154c5cdb 25-Jul-2014 Robert Shih <robertshih@google.com> MediaPlayer: scanInternalSubtitleTracks in synchronous prepare

Bug: 16385674
Change-Id: I56d205ad2fe33bd64ea2251440c88fd4ecfa13ad
/frameworks/base/media/java/android/media/MediaPlayer.java
3cdf7c5b622a8fbb20410736bdab5888d0e1873c 24-Jul-2014 Robert Shih <robertshih@google.com> MediaPlayer: support external timed text in java

Bug: 16385674
Change-Id: I7c2bf7a7d88c8396c3e228e3cf500998a3fa9db8
/frameworks/base/media/java/android/media/MediaPlayer.java
e9111d3067270554fbfe043157bda4a200d15eb4 20-Jul-2014 Jean-Michel Trivi <jmtrivi@google.com> Merge "API for audio session ID generation" into lmp-dev
289cc8e887f786f557faab226a1e01abb9a632a6 19-Jul-2014 Jean-Michel Trivi <jmtrivi@google.com> API for audio session ID generation

Expose the value used by the framework to generate an audio
session ID when a value isn't known.
Rename allocateAudioSessionId() to generateAudioSessionId()
as this operation doesn't "allocate" anything, and there is
no allocated resource to free after this operation.

Bug 16401631

Change-Id: I7a7bc05b39ea0b024ff225254eb755a9c85a2ad9
/frameworks/base/media/java/android/media/MediaPlayer.java
7b41467704f941b11af6aace3e40993afc7f6c6f 18-Jul-2014 John Spurlock <jspurlock@google.com> Zen mode filtering should use new usage constants.

Refactor stream-based calls to usage-based calls.

Bug:15279516
Change-Id: I3f7757d8123c14670e2ad5f8e6aa4e9803efe7ec
/frameworks/base/media/java/android/media/MediaPlayer.java
d70ad7a12871df3af73220cad19f5ecf45ef36d0 16-Jul-2014 Jean-Michel Trivi <jmtrivi@google.com> MediaPlayer factory method with audio attributes and session ID

Change-Id: I4e7f633c84c90581e849af2865f5be84a026f32f
/frameworks/base/media/java/android/media/MediaPlayer.java
79f5cd1429d37044a48af5d73d2003f43fd99318 16-Jul-2014 Jean-Michel Trivi <jmtrivi@google.com> Unhide MediaPlayer.setAudioAttributes(), javadoc clarifications

Unhide MediaPlayer.setAudioAttributes() method.

Update javadoc to explicitly state that the factory methods
do not let you set the audio stream type, attributes or session.

Change-Id: I0d097c314db010698b035349befe0659ab4d1dde
/frameworks/base/media/java/android/media/MediaPlayer.java
bef45561b041f0170debb5ec67aad9eeb40c78fd 12-Jul-2014 Robert Shih <robertshih@google.com> Merge "MediaPlayer: added getSelectedTrack"
464da703cad93b35514ca36a68b6ef075e7b04dd 29-May-2014 Robert Shih <robertshih@google.com> MediaPlayer: added getSelectedTrack

Change-Id: Ic39b9b3d5e72e13452320a0272deb489a0285913
/frameworks/base/media/java/android/media/MediaPlayer.java
8df982dfa5408afe67cd6a4b45bfbf26c94299d0 26-Jun-2014 Jean-Michel Trivi <jmtrivi@google.com> Java MediaPlayer: add support for setting audio attributes

Change-Id: Ia638107a5e67c20c46c2f5f1800db9da57d6f698
/frameworks/base/media/java/android/media/MediaPlayer.java
7026020398534bea51a122cbe91f0da0770a6f06 24-Jun-2014 Chong Zhang <chz@google.com> don't select default track if subtitle controller is not present

subtitle controller won't be there if app is not using VideoView.

Bug: 15470448
Change-Id: If6724928220a8906bd2199ebc0916a4493092abb
/frameworks/base/media/java/android/media/MediaPlayer.java
38c209b938b371d8852a104815c508c49ceabca6 11-Jun-2014 Robert Shih <robertshih@google.com> Move SubtitleData processing to SubtitleTrack

Change-Id: Ia338a7a1b51e449d0ab6df9933ea0efcc2d12849
/frameworks/base/media/java/android/media/MediaPlayer.java
bdfd91024767893829017918ab565f224ccd35ec 12-Jun-2014 Chong Zhang <chz@google.com> support for CEA-608 closed caption

Bug: 15470448
Change-Id: Ic6a527f5c35a8ee0a08a5b043336e4d193216083
/frameworks/base/media/java/android/media/MediaPlayer.java
079fa9683dc062f154333a661f5e84a5ac5e43c7 12-Jun-2014 Chong Zhang <chz@google.com> change onData() to take byte array of raw data

conversion to UTF-8 if necessary will be handled by the renderer.

Bug: 15470448
Change-Id: I6d4a5e29e6af07f5c031197ea424f8f8e53cd05b
/frameworks/base/media/java/android/media/MediaPlayer.java
1af30c7ac480e5d335f267a3ac3b2e6c748ce240 10-Mar-2014 John Spurlock <jspurlock@google.com> Add stream-level suppression to vibrate/audio services.

- Add new audio restriction layer to app-ops. Restrictions add
additional constraints to audio operations at a stream-level.
Restrictions do not affect the persistable state, and are purely
additive: that is, they can only impose additional contstraints, not
enable something that has already been disabled. Restrictions
also support a whitelisted set of exempt package names.

- Add new audio stream-level checks to app-ops.

- Implement a provisional OP_PLAY_AUDIO suppression to three
java entry points MediaPlayer, AudioTrack, & SoundPool.

- Enhance vibrator api to take stream information as an optional
hint - the constants correspond to AudioManager stream types.
OP_VIBRATE now supports the stream-level restriction check.

- Simplify Vibrator subclasses by adding default implementations
for two .vibrate calls.

- Migrate NoMan's zen-mode control to use the new app-ops
stream-level restriction mechanism.

Change-Id: Ifae8952647202f728cf1c73e881452660c704678
/frameworks/base/media/java/android/media/MediaPlayer.java
7246fa56100c186df0c094e21a5d06a3d9545900 11-Mar-2014 Lajos Molnar <lajos@google.com> MediaPlayer: fix int overflow issue in MediaTimeProvider

Bug: 13394783
Change-Id: I228ded5cf198852fda867d136cd8b1aacd8b6584
/frameworks/base/media/java/android/media/MediaPlayer.java
f8a0c47e9091d7a14e05dedc65b49af09fdc8fb8 05-Feb-2014 Andreas Huber <andih@google.com> Remove no longer needed http proxy handling code, it's obsolete now

since we started to use java's HTTPConnection instead of the native
implementation.

Change-Id: I32b08480593a859e0368dbbcf8da8f25c9e08ca9
/frameworks/base/media/java/android/media/MediaPlayer.java
d2506a506303ed94fd1991cf986b825b870a67c5 29-Jan-2014 Andreas Huber <andih@google.com> FINAL ATTEMPT: HTTP services are now provided from JAVA and made available to media code

Change-Id: I7f6cdcfd2a28846d36d89dd5180ef20a22b03af8
/frameworks/base/media/java/android/media/MediaPlayer.java
6bb5cb24b458a11bd02e9bff37c03f6381e06b7c 16-Jan-2014 Narayan Kamath <narayan@google.com> Resolved conflicts for merge of 28c6ec02 to master

Change-Id: Idf1cabf2694dfa13d928df944d346f5e051b6948
075e9a19ce645752f8282bc19c91b25978a7dc52 06-Jan-2014 Ashok Bhat <ashok.bhat@arm.com> AArch64: Use long for pointers in media classes

For storing pointers, long is used in media classes,
as native pointers can be 64-bit.

In addition, some minor changes have been done
to conform with standard JNI practice (e.g. use
of jint instead of int in JNI function prototypes)

Change-Id: Idc4ca0124d03df7f9cef412488abafd020e5e774
Signed-off-by: Ashok Bhat <ashok.bhat@arm.com>
Signed-off-by: Marcus Oakland <marcus.oakland@arm.com>
Signed-off-by: Kévin PETIT <kevin.petit@arm.com>
/frameworks/base/media/java/android/media/MediaPlayer.java
6090995951c6e2e4dcf38102f01793f8a94166e1 19-Nov-2013 John Spurlock <jspurlock@google.com> Remove unused imports from frameworks/base.

Change-Id: Ia1f99bd2c1105b0b0f70aa614f1f4a67b2840906
/frameworks/base/media/java/android/media/MediaPlayer.java
4de8e7c1a55f024361786e9fe03fa6eec1db6cb7 28-Oct-2013 Lajos Molnar <lajos@google.com> MediaPlayer: MTP: update state only based on source events

State only depends on events from the MediaPlayer (this includes
the pseudo-event from MTP recovery mechanism.)

Change-Id: Idd62a773d2386ad6bfbfe417412c2e2ff09b3600
Signed-off-by: Lajos Molnar <lajos@google.com>
Bug: 11412881
/frameworks/base/media/java/android/media/MediaPlayer.java
d58b122208a7ce7dacc92bd729c0cb1fe0a5056a 25-Sep-2013 Lajos Molnar <lajos@google.com> Fix MediaTimeProvider seek & time drift recovery issue

Handle MEDIA_SKIPPED event

Prevent notifyTimedEvent events (REFRESH_AND_/NOTIFY_TIME)
to eclipse NOTIFY_SEEK events.

Add automatic seek when time drifts too much. This should
not happen under normal circumstances, but is there to recover
from any unannounced media time discontinuity.

Change-Id: I8d7fdac2b0b6a9e62d2860461e6a25788e77fef8
Signed-off-by: Lajos Molnar <lajos@google.com>
Bug: 10954008
/frameworks/base/media/java/android/media/MediaPlayer.java
29f5183794efd58a3442aedcf829e3dbcd3fd867 20-Sep-2013 Lajos Molnar <lajos@google.com> Make SubtitleController thread safe

Add the concept of an anchor looper.
Allow show/hide/selectTrack/selectDefaultTrack to be called from thread
other than anchor looper.

Change-Id: Iaf2f3d3c46d1b00a0a24156745ec16b301c80c04
Signed-off-by: Lajos Molnar <lajos@google.com>
Bug: 10919206
/frameworks/base/media/java/android/media/MediaPlayer.java
d486f9656a6f9d6c056d84fce39f3db8d1614e1d 12-Sep-2013 Lajos Molnar <lajos@google.com> Add CaptioningManager listener Subtitle support.

Update default track selection based on settings change.
Implement HLS track selection scheme.
This requires synchronization for subtitletrack and controller.

Change-Id: I8295956d264ab2016a83957ace37d9d7b1acde4c
Signed-off-by: Lajos Molnar <lajos@google.com>
Bug: 10326117
/frameworks/base/media/java/android/media/MediaPlayer.java
9d480895956632ab388c7ee62d9f902910a198fb 12-Sep-2013 Lajos Molnar <lajos@google.com> Fix CalledFromWrongThreadException in MediaPlayer's subtitle support

Call selectTrack/setSubtitleWidget only from MP's looper or the
applications's event thread, which is the same for now (we only
support subtitles in VideoView.)

Change-Id: Ic1de923b801f28657f37e0330b95c321931a6960
Signed-off-by: Lajos Molnar <lajos@google.com>
Bug: 10691837
Bug: 10326117
/frameworks/base/media/java/android/media/MediaPlayer.java
f8ca13b7a09f6262f13f0301abed0ecde5175c9a 11-Sep-2013 Chong Zhang <chz@google.com> Pass subtitle track properties to SubtitleController

Bug: 10326117
Change-Id: I387406adf3e1bd835b031dd5fbd2e1cdeaf2fe87
/frameworks/base/media/java/android/media/MediaPlayer.java
a67a4439cacdaa04cb53566b77053694b26d06ad 06-Sep-2013 Lajos Molnar <lajos@google.com> MediaPlayer.MTP: fix issue when main thread had no looper

We fall back to using the application's main looper similarly to MP,
and even create our own looper if MP was created outside of an
application context. Always creating our own looper is a waste
of resources.

Also resolved issue with MP.reset() when created outside of an
application context, and removed MP.MTP's unused getHandler().

Change-Id: I9c3b8a2f05a9e231ae9c008bc1a48d6b991cec1d
Signed-off-by: Lajos Molnar <lajos@google.com>
Bug: 10634238
/frameworks/base/media/java/android/media/MediaPlayer.java
484ff7a92298eaeb5e7edc39895b3a26bed704b3 15-Aug-2013 Lajos Molnar <lajos@google.com> Add subtitle support to VideoView.

Change-Id: Ibfde491a624272c4f9733098529ad70c6aa93fe0
Signed-off-by: Lajos Molnar <lajos@google.com>
Bug: 10326117
/frameworks/base/media/java/android/media/MediaPlayer.java
3d99856f80ca23ce4e10bb3efcf7cefc65ff7337 16-Aug-2013 Lajos Molnar <lajos@google.com> Add MediaTimeProvider to MediaPlayer

Change-Id: Ie56331ef4eb4bdffa606598f241edb1cb2c2e2dc
Signed-off-by: Lajos Molnar <lajos@google.com>
Bug: 10326117
/frameworks/base/media/java/android/media/MediaPlayer.java
af309824350d6b2fd38e19ef9104211e5ba132e8 16-Aug-2013 Lajos Molnar <lajos@google.com> VideoView: add addSubtitleSource

A way to add external subtitle file to VideoView.

Change-Id: Ic110238408550a5b4088851bc5da5e94eb58d831
Signed-off-by: Lajos Molnar <lajos@google.com>
Bug: 10326117
/frameworks/base/media/java/android/media/MediaPlayer.java
83ddaf664c7a9eb2759269ec75d25dba48edebf2 06-Aug-2013 Chong Zhang <chz@google.com> MediaPlayer: add listener for subtitle data

Bug: 10326117

Change-Id: I8fbd54df70e37a061c7c875743ded09f1922ef8f
/frameworks/base/media/java/android/media/MediaPlayer.java
1c56a67dbbade39b1d88738a49fd31b4f97df0ab 15-Aug-2013 Lajos Molnar <lajos@google.com> MediaPlayer.TrackInfo: add getFormat() method

This returns the MediaFormat of the track or null (for now).

Change-Id: Ib88fc229b661942b2ed136204fdc43da427d7aed
Signed-off-by: Lajos Molnar <lajos@google.com>
Bug: 10326117
/frameworks/base/media/java/android/media/MediaPlayer.java
2d2cd32cc7293bbb48b0f0e70a0dc7eb05cac9d3 14-Jun-2013 Marco Nelissen <marcone@google.com> Make MediaPlayer.invoke() public-and-hidden again

It's used in a bunch of other places in other repos that I don't
want to touch.

Change-Id: I6f2ec6f8066286de9b52499fc71f3f08953c3cb4
/frameworks/base/media/java/android/media/MediaPlayer.java
3e72eb5245a439525976dbb9a67280b9b26b9f14 14-Jun-2013 Marco Nelissen <marcone@google.com> Remove unused MediaPlayer methods

Change-Id: Id63fdde7d0e4f096d3bb9eb4da5e0f37eb9dea21
/frameworks/base/media/java/android/media/MediaPlayer.java
d5f9fa574da2ee210ac86154ab0aea9fee5e8278 28-May-2013 Andreas Huber <andih@google.com> Listen for HTTP proxy changes and propagate the information to the media

framework.

related-to-bug: 8873723

Change-Id: I2a34343f8006fa1b1448a1f047458fd58fe14fda
(cherry picked from commit bfe9154142428aa8abecaf943dfeffc55f411ea7)
/frameworks/base/media/java/android/media/MediaPlayer.java
7cd281c332e81c93fde44d1a394b04843bebd723 11-Apr-2013 Andreas Huber <andih@google.com> Document that MediaPlayer.getDuration() returns an invalid value (-1)

if no duration information was available.

Change-Id: If064627cca7915f4562b6d61bfd4ceb9a3c9390c
related-to-bug: 8596285
/frameworks/base/media/java/android/media/MediaPlayer.java
be1339edc445eef19c3aa880b51a5c500cab6f82 30-Mar-2013 kmccormick <kmccormick@google.com> am 328f7b71: am 90fa2ae2: am 23b55e78: am 3fab60bd: am 183c95e0: Merge "Doc update: PlaybackCompleted valid state 4 pause" into jb-mr1.1-docs

* commit '328f7b7160d4c5a30c6810cbcd4aa01bb7b57dda':
Doc update: PlaybackCompleted valid state 4 pause
b04c07fb9b105fe55ea261283d0be2c817133d67 29-Mar-2013 kmccormick <kmccormick@google.com> Doc update: PlaybackCompleted valid state 4 pause

"Bug: 7962402"

Change-Id: Ie41d7085373794e98208d8815010b3ca1d81378c
/frameworks/base/media/java/android/media/MediaPlayer.java
c058a380de5a7eb5427cef295f1c259c507e25bd 19-Feb-2013 Jeff Sharkey <jsharkey@android.com> Open file:// Uris on client side of MediaPlayer.

Bug: 7962739
Change-Id: I674b437593fa083eb66ff3ca57b898cf9bd4a3e9
/frameworks/base/media/java/android/media/MediaPlayer.java
068225de0197df07a0247b2877666ea91c22c992 28-Feb-2012 Glenn Kasten <gkasten@google.com> Add all-channel setVolume() API

Add combined channel APIs setVolume to AudioTrack, MediaPlayer, and
SoundPool to make later migration easier, and encourage apps to use
that API. The new APIs are @hide for now.

Change-Id: I0c87bfdbff4f4292259fa33e65f67badbafd270b
/frameworks/base/media/java/android/media/MediaPlayer.java
2adac496a891ba70cc2797a36aacf642e10b8c8d 26-Aug-2012 James Dong <jdong@google.com> Added some common error codes in MediaPlayer.java

o related-to-bug: 6770717

Change-Id: Iea8ba6943755a9af8df5b6e91284c7c1b32c3c6c
/frameworks/base/media/java/android/media/MediaPlayer.java
b10ec1f4b1f6a3552060d44359dd64cc37b1a497 31-Jul-2012 James Dong <jdong@google.com> Fix a typo (dependant => dependent)

Change-Id: I0337bec1a26e852c32ea9f1ce54f270f79ee3ab1
/frameworks/base/media/java/android/media/MediaPlayer.java
ddd88726a247e4100cb62b3dc9d0887ca2ae2ec4 26-Jul-2012 Jeff Smith <whydoubt@yahoo.com> am 71930dd7: am a45746ef: Fix several cases of broken droiddoc syntax external issue 35214

* commit '71930dd77e4dc6f6be5c648019d2ab0da5f0584c':
Fix several cases of broken droiddoc syntax external issue 35214
a45746efadd11bb7dfab026fb3c81a25fae74ca4 19-Jul-2012 Jeff Smith <whydoubt@yahoo.com> Fix several cases of broken droiddoc syntax
external issue 35214

patch contributed by Jeff Smith <whydoubt@yahoo.com>

Change-Id: I70dcee88a140699bf3e1ab369bed6dcd2fdd3d83
/frameworks/base/media/java/android/media/MediaPlayer.java
15a89e6b48e9cd0112efcfd903843c5912e26567 24-Jul-2012 James Dong <jdong@google.com> Added MEDIA_INFO_VIDEO_RENDERING_START as an informational event

o MEDIA_INFO_VIDEO_RENDERING_START indicates that the player just pushed the very first video frame
of a video source for rendering.

Change-Id: I32dad93990f5d48b70fc79d841ca3ce3b1af4027
related-to-bug: 6851811
/frameworks/base/media/java/android/media/MediaPlayer.java
333c09945e7399c6a2b1f4d9fdf981508e38db52 09-Jul-2012 Insun Kang <insun@google.com> Changed to obtain a parcel in each notify() call in jni.

Change-Id: I5faf0f5d1fdf76a5b4bd1cff37aa58df79d18e85
related-to-bug: 6785452
/frameworks/base/media/java/android/media/MediaPlayer.java
099fd80f984b8493de58bdda8ea05563261b0af2 04-Jul-2012 Scott Main <smain@google.com> docs: add throws notice for isPlaying
per external issue 33610

Change-Id: Ibd778cb4ecc5f1717fa007ac069a7b3660ec4794
/frameworks/base/media/java/android/media/MediaPlayer.java
c3a5cf9aab3d409445accb2a93c09e6b4140d196 27-May-2012 Bryan Mawhinney <bryanmawhinney@google.com> Actually set the video scaling mode :-)

Change-Id: Ia3e77b68a07651861e9be268ab77cac808b3be79
/frameworks/base/media/java/android/media/MediaPlayer.java
79a9cd40f5ebb2453cb982bc17d9797a1cbdf8d8 18-May-2012 Bryan Mawhinney <bryanmawhinney@google.com> Fix video scaling mode validity check.

Change-Id: Ib7adead2758d50cae67741364801e966a82ad5ba
/frameworks/base/media/java/android/media/MediaPlayer.java
8902097bb686752ff207e3bda12713be1a8c74eb 01-May-2012 Insun Kang <insun@google.com> Improve notifying TimedText by reducing marshall/unmarshalling.

o Removes mParcel from TimedText class.
o Converts native parcel into java parcel object directly without
copying to an intermediate byte array.
o JNIMediaPlayerListener::notify checks for Java exceptions, logs them,
and clears the exception state.

related-to-bug: 6405934

Change-Id: I8b82d3cd5b9b3ef8cad27e805202a0e445a88a45
/frameworks/base/media/java/android/media/MediaPlayer.java
be0ea968bf8b3f92f6975ccd14031aec23a2c47f 04-May-2012 Insun Kang <insun@google.com> Fix: Missed parcel recycling in MediaPlayer.

Change-Id: I2c99f771b33bf627af10e8baea455181558360e6
related-to-bug: 6405934
/frameworks/base/media/java/android/media/MediaPlayer.java
454014e55fe5a0d9a4b47080f8017b5297d016a8 29-Apr-2012 James Dong <jdong@google.com> Add video scaling mode support with a new public method in MediaPlayer.java class

o related-to-bug: 5454345

Change-Id: I379b679eb6dd87f47f87a58791a5d0c7251b3a74
/frameworks/base/media/java/android/media/MediaPlayer.java
7a9734d769d97470ce6fac0594dd007804d33432 19-Apr-2012 James Dong <jdong@google.com> Unhide APIs for timed text and multiple audio track switch APIs

o made all the member variables in helper classes for TimedText to be public and final
since they are read-only
o removed Text and TextPos helper classes
o added two public methods in TimedText class: getText() and getBounds()
o cleaned up the javadoc of related methods in MediaPlayer.java and TimedText.java classes
o make the inner classes of TimedText static and final
o change invoke and let it throw RuntimeException on failure (thus a test class needs to be
modified also).

o related-to-bug: 6110705,5542712

Change-Id: Ia1dd1fd5eb8e9fd1b61c6c0d67405edb627a3002
/frameworks/base/media/java/android/media/MediaPlayer.java
831f0a90cad923ec6b00c5c598ac4356e5849431 19-Apr-2012 James Dong <jdong@google.com> Update javadoc for timed text / multiple audio track APIs

o Throw runtime exception when selectTrack, unselectTrack, getTrackInfo fails
o remove redundant code for selectTrack and unselectTrack methods

o related-to-bug: 6110705,5542712

Change-Id: I59f0ed638e93d0365eccab1e33c9d50354a9c1ba
/frameworks/base/media/java/android/media/MediaPlayer.java
c4c0284e45e1b69a03309cd55f937bcc638c0bec 13-Apr-2012 James Dong <jdong@google.com> AddExternalSource(String path) needs to turn the path to fd if it is a file

o related-to-bug: 5542712

Change-Id: Iea32012996ca9de4c86f144de916df64fcab3c52
/frameworks/base/media/java/android/media/MediaPlayer.java
e00b6f3a57d4b480ce674468de93555269bbd71a 12-Apr-2012 James Dong <jdong@google.com> Fix failure from setDataSource(String path) when path is a local file

o the failure was because the mediaserver does not have read permission to sdcard
o related-to-bug: 6325960,6322913

Change-Id: I4feec01b8165c78563eee8aab69cb24df3244d03
/frameworks/base/media/java/android/media/MediaPlayer.java
7ae82ce1fd54103bb87b8a0593a4228c94b1d6f9 29-Mar-2012 James Dong <jdong@google.com> Removed obsolete opencore related comments

Change-Id: Ia05a889ea54a8f38d126508ffdcd09fe2a263538
/frameworks/base/media/java/android/media/MediaPlayer.java
41f3f716b07265fb355ef70e89b9d7e1ad5f0a6f 16-Feb-2012 Insun Kang <insun@google.com> Defines MediaPlayer APIs to support multiple audio/video/timedtext
tracks.

o Newly introduced APIs are (MediaPlayer):
getTrackInfo() / addExternalSource() / enableTrack() / disableTrack().

o Timed text tracks are supported only, for now.

o TODOs:
- Define the audio/video behavior for enableTrack and disableTrack.
- Refactoring AwesomePlayer / TimedTextDriver so that all types of
track index can be managed in the correct order and be ready for
supporting audio/video tracks.
(MediaExtractor and MediaSource for text file might be necessary.)

Change-Id: Idb85e1b3f2ed49a64f377d05472dd6663ce94e07
/frameworks/base/media/java/android/media/MediaPlayer.java
467ec7eda8ad754d6a92d32040738b797ba5e994 14-Mar-2012 Marco Nelissen <marcone@google.com> Unhide MediaPlayer.setNextMediaPlayer

The Music apps are unbundled, so this needs to be unhidden for them to use it.

Change-Id: I24330a2d6cfa2f5fb5f9c282d28f5431b6165095
/frameworks/base/media/java/android/media/MediaPlayer.java
1c1d1e7ed7ed2673b22642c6701659146ceaa602 13-Mar-2012 Marco Nelissen <marcone@google.com> Merge "Gapless playback, step 1."
84b832054552e00257bb04997143ca33d6d100be 29-Feb-2012 Marco Nelissen <marcone@google.com> Gapless playback, step 1.

Currently able to play Ogg Vorbis, PCM WAV and other lossless files seamlessly
by reusing the initial AudioTrack for subsequent players.

Change-Id: Ie7cf6b9076bdf4f9211574456d192c02c04fecc7
/frameworks/base/media/java/android/media/MediaPlayer.java
55d1eea69451ee246a41e12a14be42878773e3cb 09-Mar-2012 Glenn Kasten <gkasten@google.com> MediaPlayer doc for setDataSource by file pathname

Change-Id: Icb5acbf75242ca2df62ccda5185f8841217653a0
/frameworks/base/media/java/android/media/MediaPlayer.java
720aa282791ef9405d39a15f419a41ab24f11e30 23-Feb-2012 John Grossman <johngro@google.com> Switch the way we configure for MediaPlayer retransmission.

This is a cherry-pick of I6ab07d89b2eeb0650e634b8c3b7a0b36aba4e7dd
with merge conflicts addressed by hand and additional changes made in
response to code review feedback.

Move in the direction of a more publishable API for configuring a
media player for retransmission. It used to be that we used a custom
invoke and a modified URL (prefixed with aahTX://). There are many
issues with this technique and it was never meant to stand the test of
time.

This CL gets rid of all that. A new (but currently hidden) method was
introduced to the java level MediaPlayer API, called
setRetransmitTarget(InetSocketAddress), which allows an app writer to
set the retransmit target. For now, this method needs to be called
before a call to setDataSource (which is pretty unusual for the
MediaPlayer API) because this mid level code uses this as a cue to
instantiate an aahTX player instead of relying on the data source to
select a player. When retranmit functionality becomes part of the
existing android player implemenation, this
set-retrans-before-set-data-source behavior can go away, along with
the aahTX player itself.

Change-Id: I3b46c5227bbf69acb2f3cc4f93cfccad9777be98
Signed-off-by: John Grossman <johngro@google.com>
/frameworks/base/media/java/android/media/MediaPlayer.java
ca402cdcacfdcd2978a22d59f446c93aad34c75e 07-Dec-2011 James Dong <jdong@google.com> Update onVideoSizeChanged() callback method Java doc to explicitly specify the conditions under which the width/height passed
to the callback could be 0.

Change-Id: Ie921f0af8284eccfd02c4a5826ed41fe19f9676f
related-to-bug: 5613451
/frameworks/base/media/java/android/media/MediaPlayer.java
89ca6983eb2be21848f5ac884a2c118f152c83e6 15-Nov-2011 James Dong <jdong@google.com> Document that release() should be called with onPause() and onStop() for media objects

Change-Id: I12dd734b4314df4f0573ad56a1714348e50da05e
related-to-bug: 5616833
/frameworks/base/media/java/android/media/MediaPlayer.java
61fd1e8d8c3ccf2d6b7d4af1c19e8f0988d5a1ec 26-Oct-2011 Joe Fernandez <joefernandez@google.com> docs: add developer guide cross references, Project ACRE, round 3

Change-Id: I6125315ecdf0f78dd947c514a9944729d723e95d
/frameworks/base/media/java/android/media/MediaPlayer.java
83fb94d188e18a44458f903ff4baa6e8402a31ce 29-Aug-2011 Jamie Gennis <jgennis@google.com> MediaPlayer: remove the setTexture method

This change removes the MediaPlayer#setTexture method. It has been
replaced with MediaPlayer#setSurface.

Change-Id: Iaecbbac7629d7092883f270694c5c67391f4ed6c
/frameworks/base/media/java/android/media/MediaPlayer.java
fc301b0bb5c635c6bb51b48c504a8db5f9010e5c 30-Aug-2011 Dave Burke <daveburke@google.com> Require INTERNET permission for network-based content.
Bug #1870981

Change-Id: Ia3ad166390c4d60cea19c3783895b078a2c4c15f
/frameworks/base/media/java/android/media/MediaPlayer.java
b283dc64bc97f53804108cebf5b904eb4fb77155 29-Aug-2011 Jamie Gennis <jgennis@google.com> MediaPlayer: unhide the setSurface method

Change-Id: I2fb695ab918d1099ad7cc51bfd436712a0b640d9
/frameworks/base/media/java/android/media/MediaPlayer.java
1ee60119c4fa51ebfa781cf5fdc33f192e8551b8 26-Jul-2011 Ted Bonkenburg <tedbo@google.com> Remove ParcelSurfaceTexture and update MediaPlayer

This removes the ParcelSurfaceTexture class since that functionality has been
folded into Surface.java. The change also updates the MediaPlayer to get rid
of setParcelSurfaceTexture() and modifies setTexture() to use the new Surface
functionality in order to simplify the code.

Change-Id: Iafa75ea3188263928128325d8a726786971b4de4
/frameworks/base/media/java/android/media/MediaPlayer.java
91784c996f95483e3041169215c0d6635e27ffcc 10-Aug-2011 Gloria Wang <gwang@google.com> To support for switching from a non-null surface/ surface texture to
a null one, and vice versa.
Fix for bug 5137445.

Change-Id: Ifca2997f8ad27a843abbdaa7e89a56329bc40fde
/frameworks/base/media/java/android/media/MediaPlayer.java
6ff9b812abe388478bbaba118a580c3f4a30c863 25-Jul-2011 Glenn Kasten <gkasten@google.com> Bug 4599730 Get audio channel count on MediaPlayer

Related changes:
- Fix bug in get/setParameter* to recycle Parcels when done with them.

Change-Id: Iaff05e91bbd99a14fccb79d816dd873359b6ae65
/frameworks/base/media/java/android/media/MediaPlayer.java
0de171b0d490a5928d54d2fb67c912d140aac643 16-Jul-2011 Ted Bonkenburg <tedbo@google.com> Add support for creating a Surface from a a SurfaceTexture.

The Surface is already using SurfaceTexture internally and it is parcelable. This
is intended to replace and phase out ParcelSurfaceTexture in favor of creating a
new Surface.java object from an existing SurfaceTexture.

Change-Id: I8e2dd86614523da6abed6403e1d705a68fa19fdf
/frameworks/base/media/java/android/media/MediaPlayer.java
03f9435273df3c8d6f342adfc391844a18535adf 02-Jul-2011 Glenn Kasten <gkasten@google.com> Merge "Bug 4571308 Provide correct video frame timestamps"
5c2faf3dc310b100707eb9e32e1e5ae8ceffd0c6 27-Jun-2011 Glenn Kasten <gkasten@google.com> Bug 4571308 Provide correct video frame timestamps

Change-Id: I0f726817fc02d3e2a4cf82ed801ef977994e6bcc
/frameworks/base/media/java/android/media/MediaPlayer.java
eaa5d8f9c0117bdaa20fd0a57921156bb0c06345 01-Jun-2011 Gloria Wang <gwang@google.com> Timed text display format support:
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
/frameworks/base/media/java/android/media/MediaPlayer.java
05be9531b6faf9313e7577284a547b89950d0d55 15-Jun-2011 James Dong <jdong@google.com> Second attempt to fix the broken build

o due to a link to a hidden method

Change-Id: Ia488743e9bff6854253696cc368facbd50d2d8f4
/frameworks/base/media/java/android/media/MediaPlayer.java
d52ad9ca8d36afa76161c61b65a71d70977c0d3f 15-Jun-2011 James Dong <jdong@google.com> Fix broken build

Change-Id: Icf7e33a3a4d9b430cd8cbc97801df24a94f9e079
/frameworks/base/media/java/android/media/MediaPlayer.java
9ddb7888b4b8c7b1f9e352347d84ae530e47a77d 14-Jun-2011 James Dong <jdong@google.com> Update MediaPlayer and MediaRecorder javadoc

o Adding some description to the Looper requirement for receiving callbacks

Change-Id: I79e7014c521f2286e6c2ccea1097d7e7467eb9ee
/frameworks/base/media/java/android/media/MediaPlayer.java
cc5278a3e258b30903102b718fb1cd832e79bb2b 10-Jun-2011 tedbo <tedbo@google.com> Support for setting a ParcelSurfaceTexture as the MediaPlayer sink.

This adds support for setting a SurfaceTexture as the MediaPlayer video
sink by using a ParcelSurfaceTexture object. The goal is to enable a
SurfaceTexture to pass through Binder (via ParcelSurfaceTexture) and then
be set on the MediaPlayer.

Change-Id: Ife5689ce673eb4bee1c377019db761685217b71d
/frameworks/base/media/java/android/media/MediaPlayer.java
13bc8cde1c842bea1fa3000a48739a6e22f25a9c 11-May-2011 Gloria Wang <gwang@google.com> For out of band timed text support (timed text in a separate file).

Change-Id: I9e024a63eb9bf6f839deee3c7766a66e63126c96
/frameworks/base/media/java/android/media/MediaPlayer.java
817c161ef27b6087c496755768d65fcb4f78f04c 13-Apr-2011 Glenn Kasten <gkasten@google.com> Bug 4184736 unhide MediaPlayer.setTexture

Change-Id: I4c8456465611b717e42c0a11e3ce3b4dc0a34270
/frameworks/base/media/java/android/media/MediaPlayer.java
e4e7b48e33fbdfc00f184c18c50e9f3d6335c5ac 12-May-2011 Andreas Huber <andih@google.com> Fix setDataSource(Context, Uri, Map<String,String> headers)

must not throw an exception if headers == null.

Change-Id: Ic8ddac597707129693874222fb2ebc5a84b8fff6
/frameworks/base/media/java/android/media/MediaPlayer.java
17524dc0d296146c8ffb3f692dc8ab05fee5b1e0 04-May-2011 James Dong <jdong@google.com> Clean up JNI code

o Move the Set/Map/Iterator calls from JNI to Java
o The JNI function receives arrays instead of Maps
o Removed Set/Iterator calls from the Java code as suggested

Change-Id: I34068bf24b61abaf2833dad1f65abc733ed760dd
/frameworks/base/media/java/android/media/MediaPlayer.java
c6091ddd3a22da98b5e83d4b5d864939b451b752 04-May-2011 Gloria Wang <gwang@google.com> Initial CL for the timed text support:
- Add support for MP4 timed text
- Add API for app to turn on/off a text track
- Add timed text metadata(language) in the MediaMetadataRetriever

Change-Id: I0055beba38ac761627dbcc6d581ae9582d68bb94
/frameworks/base/media/java/android/media/MediaPlayer.java
d01ec6eab019e46398975202e9e4a198a603ad99 26-Apr-2011 Gloria Wang <gwang@google.com> Add setParameter/getParameter to MediaPlayer API.
for bug 1982947

Change-Id: If3f40e4f18cbba155af29944af38bdc627f8cd53
/frameworks/base/media/java/android/media/MediaPlayer.java
72e738a428d7bb39a371da6105f7e2084e67e39d 20-Apr-2011 Andreas Huber <andih@google.com> Unhide MediaPlayer's setDataSource method that takes optional http headers to be

passed to the server.

Change-Id: I3c7ce140b2d9cd2483cf05c8aff9b374feff2f18
related-to-bug: 4315346
/frameworks/base/media/java/android/media/MediaPlayer.java
162ee49e1ce8800de80697fdd0e0e42ad7e9374e 12-Apr-2011 Gloria Wang <gwang@google.com> - Add another parameter in notify() to be able to send timed text sample
through listener during video playback.
- Add OnTimedTextListener in the MediaPlayer
For feature request 800939.

Change-Id: I65072c27acb4c0037109a72be38c73e9f667420f
/frameworks/base/media/java/android/media/MediaPlayer.java
ea763069b1dca16193d32c6cf3ceab1c23743271 06-Apr-2011 Jean-Michel Trivi <jmtrivi@google.com> Bug 4231349 fix error in javadoc for android.media.MediaPlayer

In the javadoc for MediaPlayer.OnBufferingUpdateListener,
the percent parameter for onBufferingUpdate() is described as:
the percentage (0-100) of the buffer that has been filled thus far

This is incorrect. This percentage is the ratio of (current position
+ content buffered) relative to the total duration.
Also buffering updates are only sent for progressive HTTP download.

Change-Id: I9f346a150b39fa1f7b17126119ecc0d7d27fbfbe
/frameworks/base/media/java/android/media/MediaPlayer.java
c36b3c6956479f1a154fe1e08b679ff4657097e1 29-Mar-2011 James Dong <jdong@google.com> Fix missing cross-ref links in the MediaPlayer.java javadoc

Change-Id: Ie5fba234d226ff792661ec346ddf87f43b5a0dc7
/frameworks/base/media/java/android/media/MediaPlayer.java
c5f94d8a4779050125145396ca83fbc862c7ed6b 18-Feb-2011 Eino-Ville Talvala <etalvala@google.com> Add support for timestamps into SurfaceTexture.

API addition: The timestamps are represented as nanoseconds from some
arbitrary time point. Like the SurfaceTexture transform matrix, the
timestamp retrieved by getTimestamp is for the last frame sent to the
GL texture using updateTexImage().

Camera HAL change: Expect vendors to set these timestamps using
native_window_set_buffers_timestamp(). For now, they are
autogenerated by SurfaceTextureClient if set_buffers_timestamp() is
never called, but such timing is likely not accurate enough to pass a
CTS test.

bug:3300707

Change-Id: Ife131a0c2a826ac27342e11b8a6c42ff49e1bea7
/frameworks/base/media/java/android/media/MediaPlayer.java
cc562a3576a6a8096626387472e05e8bee03352a 09-Feb-2011 Glenn Kasten <gkasten@google.com> Bug 3438258 Add SurfaceTexture as MediaPlayer sink

This change enables the use of a SurfaceTexture in place of a Surface
as the video sink for an android.media.MediaPlayer. The new API
MediaPlayer.setTexture is currently hidden.

This includes:
- New Java and C++ interfaces
- C++ plumbing and implementation (JNI, Binder)
- Stagefright AwesomePlayer and NuPlayer use ANativeWindow
(either Surface or SurfaceTextureClient)

Change-Id: I2b568bee143d9eaf3dfc6cc4533c1bebbd5afc51
/frameworks/base/media/java/android/media/MediaPlayer.java
87e639bc151551c9618641a6765837b44eb90b9b 23-Feb-2011 Gloria Wang <gwang@google.com> Merge "- Add method in MediaPlayerService to collect and pull codec usage (duration) for the battery app - Collect MediaPlayer decoding usage data"
d211f41f764fe81fe00b10a99b4b44cb84479cbe 20-Feb-2011 Gloria Wang <gwang@google.com> - Add method in MediaPlayerService to collect and pull
codec usage (duration) for the battery app
- Collect MediaPlayer decoding usage data

Change-Id: I0ef4e32b6a041ba1fe73c19f9c67185c61d03965
/frameworks/base/media/java/android/media/MediaPlayer.java
14460b9564ab700a8d426855003064568bff31e3 22-Feb-2011 James Dong <jdong@google.com> Added more warnings in javadoc for failure to call MediaPlayer.release() immediately if a MediaPlayer is not needed

bug - 3040402

Change-Id: I455d2a664851c73212711e8c4b88e97b50ee5b62
/frameworks/base/media/java/android/media/MediaPlayer.java
52c7832e35b6f0c7d6197eb09346cea7dc5bea6b 12-Jan-2011 Andreas Huber <andih@google.com> Increase cache size and low-watermark threshold, also

MediaPlayer now sends out MEDIA_INFO,MEDIA_INFO_VIDEO_TRACK_LAGGING messages
to the JAVA client informing it how much (if at all) the video lags behind
audio (arg2 is the media delay in ms).

Change-Id: I6933f573d8597a35112e4b5ee0fcb826a7f6ddd1
related-to-bug: 3335220
/frameworks/base/media/java/android/media/MediaPlayer.java
69b8d69aadbf0e795f1a1e1adc82c78cf0b9959f 29-Oct-2010 Andreas Huber <andih@google.com> Squashed commit of the following:

commit 0d5694ba2d399dd0869532a4d6256448185a1be0
Author: Andreas Huber <andih@google.com>
Date: Fri Oct 29 11:59:23 2010 -0700

suspend() and resume() methods on VideoView are back but don't do anything.

They need to be back because they were public before.

Change-Id: Iddfd1021ffcf341f26e8d55ba761fd33701e2425

commit 16192891ed7d349ee97e47d1729d20a2d0d247b8
Author: Andreas Huber <andih@google.com>
Date: Fri Oct 29 11:47:05 2010 -0700

Revert "New API on VideoView widget to suspend/resume a session. Do not release the MediaPlayer client for video suspending/resuming."

This reverts commit 2e1818a4d16c3309660f27286c77d8d1eee95a25.

Conflicts:

api/current.xml

Change-Id: I68dd1d05871044faf3f832d0838aa40bc7f890e5

commit 8f934dc1a3ae4e60f0790fcf97671e063fa20fad
Author: Andreas Huber <andih@google.com>
Date: Fri Oct 29 11:44:16 2010 -0700

Revert "Release mediaplayer if the current state is not suspending. Fix for bug 2480093."

This reverts commit efb882cf75eef39ecaf9f8920ed302a019fa629f.

commit f2ed03550887986f39d36b5dabcd9e919949c7cf
Author: Andreas Huber <andih@google.com>
Date: Fri Oct 29 11:44:08 2010 -0700

Revert "Release MediaPlayer if suspend() returns false."

This reverts commit 047212fd4ea360675e94d3ce83c7f5544f65b268.

commit 441ecce678bd24e9660a72c8627b5bd94433ff8b
Author: Andreas Huber <andih@google.com>
Date: Fri Oct 29 11:40:46 2010 -0700

manually.

Change-Id: I4fdd43c9f7c8b3eedddb31a196da4984e1c58e87

Change-Id: I60d4b10e7a9e4ed8d9a796f1711618f557eb6e89
/frameworks/base/media/java/android/media/MediaPlayer.java
1a5149e5d7f2dddc8b324f7695e69fd89af73c52 22-Sep-2010 Eric Laurent <elaurent@google.com> Fix issue 3022800.

- 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
/frameworks/base/media/java/android/media/MediaPlayer.java
d09af7d5518d0a5b3c8070784c13a1070f46f460 14-Sep-2010 Eric Laurent <elaurent@google.com> 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
/frameworks/base/media/java/android/media/MediaPlayer.java
17cb280e7f1ac3556eac90ab08263712e0348cb9 03-Aug-2010 Eric Laurent <elaurent@google.com> NEW_API: Unhide audio effect APIs.

This change unhides all public APIs for controling audio effects exposed
by the following classes:
- AudioEffect
- BassBoost
- EnvironmentalReverb
- Equalizer
- PresetReverb
- Virtualizer
- Visualizer

Also fixes several problems in javadoc.

Change-Id: I541ee4ad0232312ec720545737cbcdb8c9a82597
/frameworks/base/media/java/android/media/MediaPlayer.java
7070b36549d511d6627538c73dfbab23fbae5b43 16-Jul-2010 Eric Laurent <elaurent@google.com> 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
/frameworks/base/media/java/android/media/MediaPlayer.java
619346f902241736d933657a4fe10f10c50a1ba8 21-Jun-2010 Eric Laurent <elaurent@google.com> Added support for audio sessions in MediaPlayer and AudioTrack.

Audio sessions are used to associate audio effects to particular instances (or groups) of MediaPlayers or AudioTracks.

Change-Id: Ib94eec43241cfcb416590f435ddce7ab39a07640
/frameworks/base/media/java/android/media/MediaPlayer.java
4d61f602bf67fe61256c23f090d6119992ad5160 10-Jun-2010 Andreas Huber <andih@google.com> Switch stagefright's approach to prefetching to the new model. The java MediaPlayer is now notified about rebuffering start/end via info messages.

Change-Id: If8185ba329ce8b6663b1ad39a4efb0ad3be81df2
/frameworks/base/media/java/android/media/MediaPlayer.java
c40209ac60a64a7c08b0d0028060d5308fd7a0b8 03-Jun-2010 James Dong <jdong@google.com> am 28a92b2e: Merge "Fix a Javadoc to clarify when setAudioStreamType() should be called." into froyo

Merge commit '28a92b2e76a13c18dc23e5239717b122a174182f' into froyo-plus-aosp

* commit '28a92b2e76a13c18dc23e5239717b122a174182f':
Fix a Javadoc to clarify when setAudioStreamType() should be called.
9d96354d7055cd165d7d5625990f810f46339e52 03-Jun-2010 James Dong <jdong@google.com> Fix a Javadoc to clarify when setAudioStreamType() should be called.

bug - 2737926

Change-Id: I8718c3d1a544cf5cb1b7e98b6c24fe0e6d3574ba
/frameworks/base/media/java/android/media/MediaPlayer.java
c8652199d14dc42edf882a8eb9e48a5fe0b6101d 29-Apr-2010 The Android Open Source Project <initial-contribution@android.com> merge from open-source master

Change-Id: I20fa79289d84a892def9e7f6d6e7026d9de48010
c6f8ea4cf26aadc0da765585d37f7850596af6de 28-Apr-2010 hugh kennedy <kennedyh@umich.edu> speling fix

Change-Id: Ia9db6e1c5d1cd31fd028d551cc357a76049ce137
/frameworks/base/media/java/android/media/MediaPlayer.java
fbb3885024ac9c90f322b6259d7e519c8927e6ff 12-Feb-2010 Andreas Huber <andih@google.com> New API on java's MediaPlayer to suspend/resume a session.

related-to-bug: 2231576
/frameworks/base/media/java/android/media/MediaPlayer.java
256430093679e1d62b54fb0c852126e54d162f6f 28-Jan-2010 Andreas Huber <andih@google.com> API Extension: Support for optionally specifying a map of extra request headers when specifying the uri of media data to be played.

related-to-bug: 2393577

Original change by Andrei Popescu <andreip@google.com>
/frameworks/base/media/java/android/media/MediaPlayer.java
15097318640591f9e582dbdd57ec0e9d97a7683e 07-Oct-2009 gwang@google.com <gwang@google.com> am 521f4f3a: Merge change I3d6cf8aa into eclair

Merge commit '521f4f3af94e3a093a37af887d3e317a526b61a1' into eclair-plus-aosp

* commit '521f4f3af94e3a093a37af887d3e317a526b61a1':
Fix for bug 2158794. Hide MediaPlayer.invoke() and MediaPlayer.newRequest(), and Fix bad links in ToneGenerator documentation.
38729e69ad641f82ca3bc8b604aeb954a8935ded 07-Oct-2009 Marco Nelissen <marcone@google.com> am c39d2e3c: Music visualizer support hack. This currently assumes 44k stereo (won\'t crash on other formats, but won\'t give the correct results either), and links statically with libspeex to get FFT data, increasing the size of libmedia by about 45kb.

Merge commit 'c39d2e3c012fb96999991e30659a474f9f30f789' into eclair-plus-aosp

* commit 'c39d2e3c012fb96999991e30659a474f9f30f789':
Music visualizer support hack.
ed2247dc685233b82c7769a5e17f103c1c603ab9 07-Oct-2009 gwang@google.com <gwang@google.com> am 3e655688: am 521f4f3a: Merge change I3d6cf8aa into eclair

Merge commit '3e655688728e352e51dc9718490589f1bfb8622d' into eclair-mr2-plus-aosp

* commit '3e655688728e352e51dc9718490589f1bfb8622d':
Fix for bug 2158794. Hide MediaPlayer.invoke() and MediaPlayer.newRequest(), and Fix bad links in ToneGenerator documentation.
3b49e9b52558b5c45240d098410bd5afbd29e1fe 03-Oct-2009 gwang@google.com <gwang@google.com> Fix for bug 2158794. Hide MediaPlayer.invoke() and MediaPlayer.newRequest(), and Fix bad links in ToneGenerator documentation.
/frameworks/base/media/java/android/media/MediaPlayer.java
2c3dc14acb7308570b9d695ba9ac904a9502b043 06-Oct-2009 Marco Nelissen <marcone@google.com> am a97402e1: am c39d2e3c: Music visualizer support hack. This currently assumes 44k stereo (won\'t crash on other formats, but won\'t give the correct results either), and links statically with libspeex to get FFT data, increasing the size of libmedia by about 45kb.

Merge commit 'a97402e1cbadbdc874afa9ffdbd23f1c62fb8177' into eclair-mr2-plus-aosp

* commit 'a97402e1cbadbdc874afa9ffdbd23f1c62fb8177':
Music visualizer support hack.
c39d2e3c012fb96999991e30659a474f9f30f789 20-Sep-2009 Marco Nelissen <marcone@google.com> Music visualizer support hack.
This currently assumes 44k stereo (won't crash on other formats, but won't give the correct results either), and links statically with libspeex to get FFT data, increasing the size of libmedia by about 45kb.
/frameworks/base/media/java/android/media/MediaPlayer.java
e525eef4b8e284ac8eb023bd0df4eeed37916d4b 17-Sep-2009 Jean-Baptiste Queru <jbq@google.com> merge from open-source master
ea5f767246ad201a9e2bba0d657404e002cd7c70 17-Sep-2009 Jean-Baptiste Queru <jbq@google.com> Update documentation for getVideoWidth and getVideoHeight.

Ref: http://code.google.com/p/android/issues/detail?id=3024
/frameworks/base/media/java/android/media/MediaPlayer.java
85a2c7f1cad8fd55ed72a8a3dbb2b36632ebbff3 01-Sep-2009 Jean-Baptiste Queru <jbq@google.com> merge from open-source master
4a51c20ce607c74914f90fd897f04080121ac13b 22-Aug-2009 Dianne Hackborn <hackbod@google.com> I am getting tired of the java doc warnings, so fix them.

Change-Id: I2205eebae419eaf4a0992c9f5b7cd807eb843fe1
/frameworks/base/media/java/android/media/MediaPlayer.java
6ab180aa65d2b4f155518af0ac7bb2777f9ce61f 13-Jun-2009 Kenny Root <kenny@the-b.org> Documentation: Clarify that a FileDescriptor must be seekable

In MediaPlayer, methods with an offset specified must be passed a
FileDescriptor that is seekable. This change notes that in the
JavaDoc.
/frameworks/base/media/java/android/media/MediaPlayer.java
4935d05eaa306cef88cf0ab13eca386f270409ec 03-Aug-2009 Marco Nelissen <marcone@google.com> Untangle MediaPlayer, MediaRecorder, MediaScanner and MediaMetadataRetriever JNI
code, so that creating one of those doesn't initialize all the others. Shaves
a hundred milliseconds or so off music app startup time.
/frameworks/base/media/java/android/media/MediaPlayer.java
cf4550c3198d6b3d92cdc52707fe70d7cc0caa9f 21-Jul-2009 Jean-Baptiste Queru <jbq@google.com> donut snapshot
/frameworks/base/media/java/android/media/MediaPlayer.java
5d55c7119820ee9bb06fc072e416fe98ba77cd28 09-Jul-2009 Nicolas Catania <niko@google.com> Basic plumbing to retrieve metadata from the native player.

IMediaPlayer.h
Added a getMetadata method that mirrors the on in MediaPlayer.java.

MediaPlayer.java
Added a native method to get the metadata from the native player.
Parse the parcel into a Metadata object.

Metadata.java
Added a stub to parse the Parcel returned by the native player into
a set of metadata.

android_media_MediaPlayer.cpp
JNI call to forward the getMetadata call.

MediaPlayerService.cpp
MediaPlayerService::Client implements the new getMetadata method added in IMediaPlayer.h
/frameworks/base/media/java/android/media/MediaPlayer.java
b2c693919be966f179080a9ec70a7a82dbf57627 08-Jul-2009 Nicolas Catania <niko@google.com> Implemented the metadata changed notification filters.

IMediaPlayer:
new setMetadataFilter method so set a filter (2 lists of allowed and blocked metadata type)
serialized in a Parcel.

MediaPlayer.java/android_media_MediaPlayer.cpp/mediaplayer.cpp
new setMetadataFilter that passes the filter down to the MediaPlayerService's binder interface.

MediaPlayerService.cpp
The Client inner class holds the allowed and blocked metadata types.
These are in 2 vectors that get populated in the setMetadataFilter.

A new shourldDropMetadata method returns true if a type of metadata should be dropped according
to the filters.

The notify method in run the metadata update notifications thru the filter and possibly drop them.
/frameworks/base/media/java/android/media/MediaPlayer.java
9193e08dc1d91401fdf1846eaad4689da3911dc1 06-Jul-2009 Nicolas Catania <niko@google.com> New Metadata API for the MediaPlayer.

MediaPlayer.java
New method getMetadata to fetch metadata from the player.
New method setMetadataFilter to filter metadata notification and fetches.

Metadata.java
Added basic interface. Implementation incomplete.
/frameworks/base/media/java/android/media/MediaPlayer.java
20cb94eeb5b9672573fc86bf51e09bd66a774581 13-May-2009 Nicolas Catania <niko@google.com> Direct api to the native media player.

MediaPlayer.java has 3 new methods:
* newRequest creates a Parcel that can be used to send data to the
native player using invoke.
* invoke issues synchronous calls to the native player using opaque
parcels for the request and reply.

IMediaPlayer.h has 1 new abstract method:
* invoke

The Midi and Vorbis players have a stub for these. So far only PV
makes use of that new feature.

To avoid any copy overhead, the JNI interface uses Parcel as a java
object (no serialization/copy happens at the JNI layer).

The remote interface token is inserted when the Parcel is constructed
in java. That way the parcel is already routable when it reaches
IMediaPlayer.cpp (proxy). No extra copy is needed there.
/frameworks/base/media/java/android/media/MediaPlayer.java
32f82774884bdd709789ab9f3ccdf5b972ff7681 12-Jun-2009 Nicolas Catania <niko@google.com> Removed trailing whitespaces.
/frameworks/base/media/java/android/media/MediaPlayer.java
a2df60598ac0158468ce242498b7bd3cb9383e13 10-Jun-2009 Marco Nelissen <marcone@google.com> Print a message to the log when a file can't be opened on the client side.
/frameworks/base/media/java/android/media/MediaPlayer.java
8b0b174198793cabb2b3fcc015f9bfdc9d5082b5 29-May-2009 Dave Sparks <davidsparks@android.com> Update MediaPlayer to allow setVideoSurface calls after prepare. Also allow
passing a null surface. The API is now enabled to change the surface while
the video is playing. This could allow orientation changes during playback
or to allow the audio track from a video to play in the background.
NOTE: There are still changes required to pmem driver to allow remapping
shared physical memory into a process in order for this to work. This
change only enables the API to send the appropriate calls when the lower
level code supports it.
/frameworks/base/media/java/android/media/MediaPlayer.java
4a0029f95db144ba735b35e636400e8ce535383f 25-Mar-2009 Niko Catania <> Automated import from //branches/donutburger/...@141213,141213
/frameworks/base/media/java/android/media/MediaPlayer.java
c2ad241504fcaa12d4579d3b0b4038d1ca8d08c9 20-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake_rel/...@141571
/frameworks/base/media/java/android/media/MediaPlayer.java
105925376f8d0f6b318c9938c7b83ef7fef094da 19-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake_rel/...@140373
/frameworks/base/media/java/android/media/MediaPlayer.java
c39a6e0c51e182338deb8b63d07933b585134929 11-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@137873
/frameworks/base/media/java/android/media/MediaPlayer.java
9066cfe9886ac131c34d59ed0e2d287b0e3c0087 04-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@135843
/frameworks/base/media/java/android/media/MediaPlayer.java
d83a98f4ce9cfa908f5c54bbd70f03eec07e7553 04-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@135843
/frameworks/base/media/java/android/media/MediaPlayer.java
076357b8567458d4b6dfdcf839ef751634cd2bfb 03-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@132589
/frameworks/base/media/java/android/media/MediaPlayer.java
3dec7d563a2f3e1eb967ce2054a00b6620e3558c 03-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@137055
/frameworks/base/media/java/android/media/MediaPlayer.java
d24b8183b93e781080b2c16c487e60d51c12da31 11-Feb-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@130745
/frameworks/base/media/java/android/media/MediaPlayer.java
f013e1afd1e68af5e3b868c26a653bbfb39538f8 18-Dec-2008 The Android Open Source Project <initial-contribution@android.com> Code drop from //branches/cupcake/...@124589
/frameworks/base/media/java/android/media/MediaPlayer.java
54b6cfa9a9e5b861a9930af873580d6dc20f773c 21-Oct-2008 The Android Open Source Project <initial-contribution@android.com> Initial Contribution
/frameworks/base/media/java/android/media/MediaPlayer.java