summaryrefslogtreecommitdiffstats
path: root/media/jni/android_media_MediaPlayer.cpp
Commit message (Collapse)AuthorAgeFilesLines
* MediaPlayer: trigger onError instead of exception on stale native notificationsRobert Shih2015-06-011-1/+1
| | | | | | | | This change also reverted commit 2c838fbd87ad5685c0008b419ea02421159b9b70, "MediaPlayer: add mPreparing to weed out unwanted prepared messages". Bug: 21266735 Change-Id: I392342519420bee2fde1fe1915c51d24101ca27d
* MediaPlayer: add mPreparing to weed out unwanted prepared messagesRobert Shih2015-05-211-1/+1
| | | | | Bug: 21266735 Change-Id: Ie4fe76533c9b7f505c57ba63df7992f2490942cc
* MediaSync: address API review.Wei Jia2015-05-081-65/+65
| | | | | | | | Rename *Settings to *Params; Remove size parameter from MediaSync.queueAudio(); Bug: 20887706 Change-Id: I4c572da92ada51458031a482b96b3f624224e608
* media: Hook up MediaPlayer and MediaSync to new settingsLajos Molnar2015-04-301-28/+77
| | | | | Bug: 19666434 Change-Id: Ib815a80a991d4be9ce179514ac517c54f98234fd
* media: add SyncSettings to MediaSync and MediaPlayerLajos Molnar2015-04-221-0/+55
| | | | | Bug: 18249558 Change-Id: I76d7e20d0e0c2d1d24bf60ade6386986573476f0
* media: use PlaybackSettings in MediaSync and MediaPlayerLajos Molnar2015-04-221-4/+55
| | | | | Bug: 19666434 Change-Id: Ic5e517534a26f4e3b0294205e0b93f95338bf072
* Unhide the android.media.[Media]DataSource interface.Chris Watkins2015-04-151-1/+20
| | | | | | | | | | | | | | | | | | | | 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
* MediaSync: add MediaSync JAVA APIWei Jia2015-04-031-0/+6
| | | | | Bug: 19666434 Change-Id: Iab6941f6d81cb95a3b86be14b239287acb0d0eee
* ImageReader/Writer: Add ImageWriter and Opaque ImageReaderZhijun He2015-03-201-1/+6
| | | | | | | | | | | ImageWriter/Reader API change, including below changes * Interface for Opaque ImageReader * ImageWriter Interface and implementation * Image class minor update to support ImageWriter opaque ImageReader detach/attach interface are defined but yet to be implemented. Change-Id: Ic7c0d2df73c80b1a81a7316d8c4556bf7703c309
* MediaPlayer: add setPlaybackRate JAVA API.Wei Jia2015-03-031-0/+13
| | | | | Bug: 19196501 Change-Id: I43daced7d9b53bcaca4e6a8d81ca729b32efc79f
* Remove unused variables and functions, don't warn about unused parametersBernhard Rosenkränzer2014-11-231-2/+0
| | | | | | | | | Remove unused variables and static functions clang complains about, disable warnings about unused parameters (needed for clang and for gcc with -Wextra enabled) Change-Id: I76a22cd0158b3c7375c54e3d4d15bc1ac448591e Signed-off-by: Bernhard Rosenkränzer <Bernhard.Rosenkranzer@linaro.org>
* MediaPlayer: scanInternalSubtitleTracks in synchronous prepareRobert Shih2014-07-291-1/+1
| | | | | Bug: 16385674 Change-Id: I56d205ad2fe33bd64ea2251440c88fd4ecfa13ad
* Java MediaPlayer: add support for setting audio attributesJean-Michel Trivi2014-07-011-0/+20
| | | | Change-Id: Ia638107a5e67c20c46c2f5f1800db9da57d6f698
* camera2: Move DngCreator to hardware/camera2.Ruben Brunk2014-05-221-6/+0
| | | | | Bug: 15091253 Change-Id: Ibe2ee376436e5c796e33c0b782ea68278589f2e6
* camera2: Plumb DngCreator to native library.Ruben Brunk2014-05-161-0/+6
| | | | Change-Id: Ic58bf6cf5086808b503460ef8e451fc0d6f1f850
* Fix buildSelim Gurun2014-05-071-2/+2
| | | | | | Fix the java reflection to have the devices boot again. Change-Id: Ibd24b1e43e5c8385aa9372f8e22133b6eb85cd2b
* Add stream-level suppression to vibrate/audio services.John Spurlock2014-03-191-3/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | - 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
* Remove no longer needed http proxy handling code, it's obsolete nowAndreas Huber2014-02-051-47/+0
| | | | | | | since we started to use java's HTTPConnection instead of the native implementation. Change-Id: I32b08480593a859e0368dbbcf8da8f25c9e08ca9
* FINAL ATTEMPT: HTTP services are now provided from JAVA and made available ↵Andreas Huber2014-02-041-5/+22
| | | | | | to media code Change-Id: I7f6cdcfd2a28846d36d89dd5180ef20a22b03af8
* AArch64: Use long for pointers in media classesAshok Bhat2014-01-151-31/+35
| | | | | | | | | | | | | | 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>
* Add NULL check in updateProxyConfigOscar Rydhé2013-12-191-8/+11
| | | | | | | | If the exclusionList was null in updateProxyConfig the VM would crash when converting it to a UTF8 string. Avoid this by adding a null check. Change-Id: I0d8106fd54385bd9ae9c652a6c67d459a119cf2b
* Merge commit 'b873a17ce7be0a9771c24999adca6964431728f6' into HEADThe Android Open Source Project2013-11-221-44/+7
|\ | | | | | | Change-Id: I938755073e70602cc8f51ce9bd420fdcf870cecd
| * Remove dependency on JNIHelp header side effects.Ruben Brunk2013-09-101-0/+1
| | | | | | | | | | Bug: 10680559 Change-Id: I47870d6c48906e0a420c52b7bc5945ffe29c68a2
| * ImageReader: Implementation of ImageReader and Image APIsZhijun He2013-06-261-0/+6
| | | | | | | | | | | | | | Used for direct image data access from producer like camera or video decoder. Bug: 9254294 Change-Id: I1853af03f4487ac3585d86202f6140854471fa89
| * Remove unused MediaPlayer methodsMarco Nelissen2013-06-131-44/+0
| | | | | | | | Change-Id: Id63fdde7d0e4f096d3bb9eb4da5e0f37eb9dea21
* | Fix a JNI local reference leak in JNIMediaPlayerListener::notify.Elliott Hughes2013-11-131-0/+1
|/ | | | | Bug: https://code.google.com/p/android/issues/detail?id=62137 Change-Id: I776cd83a66de37fdbbe8af367bf1b26e5e0c7247
* Listen for HTTP proxy changes and propagate the information to the mediaAndreas Huber2013-05-311-1/+63
| | | | | | | | framework. related-to-bug: 8873723 Change-Id: I2a34343f8006fa1b1448a1f047458fd58fe14fda (cherry picked from commit bfe9154142428aa8abecaf943dfeffc55f411ea7)
* Implementing MediaDrm APIsJeff Tinker2013-03-131-0/+6
| | | | Change-Id: Ib6eeb9c04c5c5cf1d485f9004cd3e6a1047a1d19
* Java API for MediaMuxerztenghui2013-03-111-0/+6
| | | | | | | | Implement the Java API for MediaMuxer. bug:7991013 Change-Id: Ibf3aa256cc1d89f1c7636b74c9fb53073d173636
* fix JNI use of incStrong/decStrongMathias Agopian2013-03-061-4/+4
| | | | Change-Id: Ia11b404dea483dc19bbc30f4d7bcff516655e180
* Refactoring: Rename SurfaceTextureClient to SurfaceMathias Agopian2013-02-151-1/+1
| | | | Change-Id: I5a218ca11abeeec05e3a4c3cfc581bcc788814ea
* Rename ISurfaceTexture and SurfaceTextureAndy McFadden2012-12-181-8/+8
| | | | | | | | | | The C++ class names don't match what the classes do, so rename ISurfaceTexture to IGraphicBufferProducer, and SurfaceTexture to GLConsumer. Bug 7736700 Change-Id: I08e677faf2ebb418ef131d0a8008e01037db0e50
* Throw an exception instead of crash when a surface does not have a binding ↵James Dong2012-10-041-0/+5
| | | | | | | | surface texture o related-to-bug: 7270329 Change-Id: I498d72187968e89d9498d01b10719569e12be2af
* Add plumbing for new surface flinger display API.Jeff Brown2012-08-271-1/+1
| | | | | | | | | | | | | | Cleaned up the implementation of Surface and SurfaceSession to use more consistent naming and structure. Added JNI for all of the new surface flinger display API calls. Enforced the requirement that all Surfaces created by the window manager be named. Updated the display manager service to use the new methods. Change-Id: I2a658f1bfd0437e1c6f9d22df8d4ffcce7284ca2
* Changed to obtain a parcel in each notify() call in jni.Insun Kang2012-07-101-8/+4
| | | | | Change-Id: I5faf0f5d1fdf76a5b4bd1cff37aa58df79d18e85 related-to-bug: 6785452
* Improve notifying TimedText by reducing marshall/unmarshalling.Insun Kang2012-05-091-8/+14
| | | | | | | | | | | | 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
* Fix failure from setDataSource(String path) when path is a local fileJames Dong2012-04-121-8/+0
| | | | | | | o the failure was because the mediaserver does not have read permission to sdcard o related-to-bug: 6325960,6322913 Change-Id: I4feec01b8165c78563eee8aab69cb24df3244d03
* New Crypto JAVA class to facilitate decryption via MediaCodec.Andreas Huber2012-04-041-0/+6
| | | | | Change-Id: Ic4e395faa84f003793c2804f2badabab9e7f1034 related-to-bug: 6275919
* New API to query available codecs and their capabilities.Andreas Huber2012-04-021-0/+6
| | | | Change-Id: I448ba443a96d8fee2bc9179750d57362ed31d9d9
* Gapless playback, step 1.Marco Nelissen2012-03-131-0/+28
| | | | | | | Currently able to play Ogg Vorbis, PCM WAV and other lossless files seamlessly by reusing the initial AudioTrack for subsequent players. Change-Id: Ie7cf6b9076bdf4f9211574456d192c02c04fecc7
* Split Parcel JNI details away from Binder.Jeff Sharkey2012-03-081-0/+1
| | | | | | | This is purely a refactoring, with no change to the underlying functionality. Change-Id: I41b59f14e57d1cc144274a01f77658d99a1bfe02
* Switch the way we configure for MediaPlayer retransmission.John Grossman2012-03-011-0/+40
| | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* fix libgui header locationMathias Agopian2012-02-271-1/+1
| | | | Change-Id: Iec71706cdd4f29c6904993648ce873e83ef9cafe
* Implementation of a java media codec interface and associated tools.Andreas Huber2012-02-221-0/+12
| | | | Change-Id: I13e54062d4de584355c5d82bb027a68aeaf2923b
* Use audio_stream_type_t consistentlyGlenn Kasten2012-01-131-1/+1
| | | | | | | | | At native level it was a mixture of audio_stream_type_t, int, uint32_t, and uint8_t. Java is still int. Also fixed a couple of hard-coded -1 instead of AUDIO_STREAM_DEFAULT, and in startToneCommand a hard-coded 0 instead of AUDIO_STREAM_VOICE_CALL. Change-Id: Ia33bfd70edca8c2daec9052984b369cd8eee2a83
* Rename (IF_)LOGE(_IF) to (IF_)ALOGE(_IF) DO NOT MERGESteve Block2012-01-081-14/+14
| | | | | | | See https://android-git.corp.google.com/g/#/c/157220 Bug: 5449033 Change-Id: Ic9c19d30693bd56755f55906127cd6bd7126096c
* Rename (IF_)LOGW(_IF) to (IF_)ALOGW(_IF) DO NOT MERGESteve Block2012-01-061-1/+1
| | | | | | | See https://android-git.corp.google.com/g/157065 Bug: 5449033 Change-Id: I00a4b904f9449e6f93b7fd35eac28640d7929e69
* Rename (IF_)LOGV(_IF) to (IF_)ALOGV(_IF) DO NOT MERGESteve Block2011-10-261-25/+25
| | | | | | | See https://android-git.corp.google.com/g/#/c/143865 Bug: 5449033 Change-Id: I0122812ed6ff6f5b59fe4a43ab8bff0577adde0a
* MediaPlayer: properly handle released surfacesJamie Gennis2011-10-141-2/+8
| | | | | Bug: 5396571 Change-Id: I6af87cb04f09f9ae6ea77cd7ba31108a3e93d24a
* Log a warning when a MediaPlayer is finalized without having being released.Marco Nelissen2011-09-281-0/+4
| | | | | | b/5382634 Change-Id: I756d09d16a92ab8ce736c16a24e319a87be6c8de