summaryrefslogtreecommitdiffstats
path: root/media/libmediaplayerservice/nuplayer/NuPlayerDriver.h
Commit message (Collapse)AuthorAgeFilesLines
* libmediaplayerservice: propagate caller pid to MediaCodec.Ronghua Wu2015-07-211-1/+1
| | | | | Bug: 22630317 Change-Id: I0337d74f4ef04bf96f2de83f33d98d0d7da47c12
* stagefright: support setting/getting playback/sync config in MediaSyncLajos Molnar2015-04-301-1/+4
| | | | | | | Bug: 18249558 Bug: 19666434 Bug: 20057497 Change-Id: I5868b17423d7c20cfaf4a399f3eb67bfba440605
* Unhide the android.media.[Media]DataSource interface.Chris Watkins2015-04-151-0/+2
| | | | | | | | | | | | | | | | | | | | | 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: Ib3c944b49cc8a792c8eb9c85e5015c07f298ebc1
* mediaplayer: support dynamic playback rateWei Jia2015-02-241-0/+1
| | | | | | Bug: 19196501 Change-Id: I856b1507d5fa2cedfb645706d2435683a7d3e050
* NuPlayer: query current position from NuPlayerRenderer.Ronghua Wu2014-10-131-7/+1
| | | | | Bug: 17653702 Change-Id: Ie0b1f92420b071a0cfcd389f5e7917a54d332541
* Add support for ANDROID_LOOP to NuPlayerMarco Nelissen2014-09-171-0/+2
| | | | | Bug: 17518139 Change-Id: I9355ddd4c998d967013dd8bd32d670a9a83dea31
* wait for flush to finish before returning setSurfaceChong Zhang2014-08-221-0/+2
| | | | | Bug: 17187598 Change-Id: I091219e57158a4532044ca49342b57277d6ecb15
* NuPlayerDriver: fix current position for stop and pause.Wei Jia2014-08-221-0/+2
| | | | | | | | | | When start() is called after EOS, it means restarting from the beginning of the stream. Fix racing conditon on accessing some members. Report seekTo position before any notifyPosition is called. Bug: 17031731 Bug: 17178928 Change-Id: I008b827288cf28d39e2a943373fe1e5d7d6c2595
* NuPlayerDriver: include lapsed time when reporting current position.Wei Jia2014-08-201-0/+2
| | | | | Bug: 17031731 Change-Id: I01962ee9194bdaa9e8ed1a51abbf365733be3c85
* Fix NuPlayer deadlockMarco Nelissen2014-08-201-0/+1
| | | | | | | | Mutexes can't be locked recursively. This would cause a seek in the prepared state to deadlock Bug: 14057920 Change-Id: Ifb5e25f24450b7e5f71611a8ee2bdba45dba70a7
* Merge "NuPlayer: add support for proper stop" into lmp-devLajos Molnar2014-08-191-0/+3
|\
| * NuPlayer: add support for proper stopLajos Molnar2014-08-081-0/+3
| | | | | | | | | | | | | | | | | | MediaPlayer.stop() should move to the Stopped state which is semantically identical to the Initialized state. Bug: 13138230 Change-Id: I5d7b4a22533f545c24a18e2cd9f7cb2685d42c84 Signed-off-by: Lajos Molnar <lajos@google.com>
* | use dedicated looper for GenericSourceChong Zhang2014-08-141-2/+0
|/ | | | | | | | | | | | | | | | - handle setVideoSurface in deferred action, and return to client immediately - handle GenericSource's prepareAsync on its own looper, instead of sharing looper with NuPlayer - let HTTPLiveSource share looper with LiveSession, instead of NuPlayer - remove reflector in RTSPSource Bug: 16892748 Change-Id: I1aed557320052012065f5a90adbcb03c238da988
* mediaplayer: add looping support to NuPlayerLajos Molnar2014-07-311-0/+1
| | | | | Bug: 16641557 Change-Id: I433158e6e585b4714cfd6d89562ecd0587a07ae2
* FINAL ATTEMPT: HTTP services are now provided from JAVA and made available ↵Andreas Huber2014-02-041-1/+3
| | | | | | to media code Change-Id: I9f74a86e70422187c9cf0ca1318a29019700192d
* MediaPlayer: add listener for raw track dataChong Zhang2013-08-191-1/+1
| | | | | | Bug: 10326117 Change-Id: I2c0bdf8adc67b11f8dc633423bee66897548f181
* RTSP now properly publishes its "seekable" flags after connectionAndreas Huber2013-02-051-0/+1
| | | | | | | has successfully completed and only then signals that preparation is complete. Change-Id: I1a60f718e673fe1462c69369c40eafbed6a14326
* Support for a "preparation" state that can take care of lengthyAndreas Huber2013-02-051-9/+21
| | | | | | | operations in NuPlayer and its sources. Sources also can publish their flags now and the mediaplayer UI will be able to pick up on these. Change-Id: I4f2b7e5d105dcb4b6c9132cd0e8799efa0c6a14b
* Rename ISurfaceTexture and SurfaceTextureAndy McFadden2012-12-181-1/+1
| | | | | | | | | | The C++ class names don't match what the classes do, so rename ISurfaceTexture to IGraphicBufferProducer, and SurfaceTexture to GLConsumer. Bug 7736700 Change-Id: I64520a55f8c09fe6215382ea361c539a9940cba5
* setVideoSurfaceTexture is now synchronous and applied dynamicallyAndreas Huber2012-12-031-0/+2
| | | | | | | while playing. Change-Id: If9f08659a01bdc7dac0999730368e9dfa5e58d36 related-to-bug: 5666482
* Remove surface legacy APIs and code.Andreas Huber2011-10-281-1/+0
| | | | | | All surfaces are now supported through surface textures. Change-Id: I95dd823e7099c0c32a48a1121624149dcc29d9c6
* Properly report that we're no longer playing after receiving eventAndreas Huber2011-10-261-0/+2
| | | | | | MEDIA_PLAYBACK_COMPLETE or MEDIA_ERROR. Change-Id: I03eeba751d3728adb33d9c66de4c7444a91696f3
* In order to recover from video lagging behind audio, drop avc framesAndreas Huber2011-09-161-1/+6
| | | | | | that are not referenced by other frames before feeding them into the decoder. Change-Id: I822190af8f8329567bff8da1ea23136d0a765481
* Charge network traffic to the uid of the process using the MediaPlayer.Andreas Huber2011-07-011-0/+2
| | | | | Change-Id: I2bcb54b8232afd3fc7ee16289f37c7a7b3f23067 related-to-bug: 4517282
* Add setParameter/getParameter to MediaPlayer API.Gloria Wang2011-04-291-0/+2
| | | | | | for bug 1982947 Change-Id: If3f40e4f18cbba155af29944af38bdc627f8cd53
* Bug 3438258 Add SurfaceTexture as MediaPlayer sinkGlenn Kasten2011-02-231-0/+2
| | | | | | | | | | | | | | 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
* Seek/Duration support for completed http live streams in NuPlayer.Andreas Huber2011-01-051-2/+21
| | | | | Change-Id: I55bbe75d87140c07b1927d14ad24130fce803463 related-to-bug: 3321475
* Properly shutdown the decoders on a reset() in NuPlayer's implementation.Andreas Huber2011-01-041-0/+6
| | | | | related-to-bug: 3321470 Change-Id: Ida6d2171c5a3a407188d4633602b764f8fe7086a
* Squashed commit of the following:Andreas Huber2010-12-231-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | commit eaeaa2672d4e0a82891493b2bde8bdd0c0e79a1b Author: Andreas Huber <andih@google.com> Date: Thu Dec 23 10:26:48 2010 -0800 Remove lowest bandwidth stream if using the legacy player. Change-Id: I2f885e26344996de9152f8fda9fd6bdef89bf953 commit 7d652972615b2750fd8f1c21b9fab0e136df2b82 Author: Andreas Huber <andih@google.com> Date: Thu Dec 23 10:14:36 2010 -0800 Don't clear the packet source's format for legacy discontinuities. Change-Id: I9bd5a21b9bd28043ad38bd0658ccc8eda3c1079a commit 2b18a45aac17cbfe1aa089d0f6510957d438dd64 Author: Andreas Huber <andih@google.com> Date: Thu Dec 23 10:13:55 2010 -0800 Use NuPlayer for HTTP live streaming based on runtime property. adb shell setprop media.httplive.enable-nuplayer true Change-Id: I22738df3403985dc8e6992b1ab5da5747309f773 commit 50d899fb7b9ea52c3994b0a58e993998d926aeed Author: Andreas Huber <andih@google.com> Date: Wed Dec 22 16:25:22 2010 -0800 Make ACodec a lot less verbose. Change-Id: I94c7e499b61032321ffaf999f5ad2c913cde6a48 commit b19e1740cb4d02990a56844654b5d019987c6405 Author: Andreas Huber <andih@google.com> Date: Wed Dec 22 16:22:22 2010 -0800 Wait until we have fresh codec-specific-data before instantiating the decoders after a discontinuity involving a format change. Change-Id: I7bcf9b5ae3319f08bf8978a117e8ee5220902e37 commit 06428c006906c9099e430aface3b439ff1d36ecc Author: Andreas Huber <andih@google.com> Date: Wed Dec 22 15:20:38 2010 -0800 Disable random seeks in the streaming tool for now. Change-Id: Ie86fde422dcfc4b2c7a01be51a193fda9c88cd71 commit e19db68f3bea8a61c191f60f6940f30e3a0d5f1b Author: Andreas Huber <andih@google.com> Date: Wed Dec 22 15:20:27 2010 -0800 Tweak HTTP live parameters. Change-Id: If4b71e12485facc523a8a43d8213d0feb190daab commit 1e9942791538c2256b579d96c6c04264b0d8b087 Author: Andreas Huber <andih@google.com> Date: Wed Dec 22 14:48:23 2010 -0800 Enable http live streaming through NuPlayer for http URLs containing the string m3u8 Change-Id: I1691fe12ae8f1507fe3673313959cd50bc324624 commit 4c33f96a6e499ee0efe0e70b687094430cb7c1c0 Author: Andreas Huber <andih@google.com> Date: Wed Dec 22 14:40:27 2010 -0800 Support for HTTP live streaming in NuPlayer. Change-Id: Iacba1c3ebaeb8d3b972185deaf4cff18c8009c54 commit ddf705ce553708bc5b13d89a878484cf839bd674 Author: Andreas Huber <andih@google.com> Date: Wed Dec 22 13:42:47 2010 -0800 StreamingSource now a subclass of abstract NuPlayer::Source Change-Id: Ia6c7c639628910b9d1f37decc55da48b07a70de3 commit 9e04a8406b1882a8e3fdeb7b4d52db5ae70b970a Author: Andreas Huber <andih@google.com> Date: Wed Dec 22 13:33:52 2010 -0800 Refactor media data sourcing to NuPlayer::Source. Change-Id: I1db9fb08c4e527bf7b19c29978cf342c2b0a0bc9 Change-Id: I9610a097481dda58f22142eacda3ac2dba0b63f9
* Initial support for a true streaming player for mpeg2 transport streams.Andreas Huber2010-12-151-0/+69
Change-Id: I153eec439d260a5524b21270e16d36940ec3161a