summaryrefslogtreecommitdiffstats
path: root/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.h
Commit message (Collapse)AuthorAgeFilesLines
* Nuplayer: Flush the decoder if seamless format change is supportedLi Sun2016-03-081-0/+1
| | | | | | | | | | | | In smooth streaming enabled case, flush the decoder if seamless format change is supported. Otherwise,ramdomly video frames with old resolution are queued to the new surface and results in green frames. Calling flush ensures that all the old video frames are cleared. Change-Id: Ia020a01fd0eaa8af8e48b6edb526a3f53875b068
* NuPlayerDecoder: add synchronous call pause() to ensure decoder will not ↵Wei Jia2015-12-191-1/+0
| | | | | | | | | | request or send out data. Port of AOSP commit: 3bc667014875aba35102941b3997d242c303aa0d Bug: 25372978 CRs-Fixed: 941002 Change-Id: Id66ab9b9961d5a3b9fb783ae73c27ed1c8054db8
* nuplayer: Improve offload format conversionsSteve Kondik2015-12-151-2/+7
| | | | | | | * Annotate source buffers with the audio format * Add support for 32-bit signed PCM offload (zero copy) Change-Id: Id758830784740c0a038452d383c8ec8e3e4593bb
* AVCustomizations: Enable 16 and 24 bit PCM offload.Preetam Singh Ranawat2015-10-061-2/+2
| | | | | | | | | | | | -create extended decoder and renderer -add change to pass bit width and format info to renderer. -add change for PCM conversions -add changes for time calucation Conflicts: media/libmediaplayerservice/nuplayer/NuPlayer.cpp Change-Id: I3363140fad441a7746884076c40b46e777f2e06e
* libmediaplayerservice: propagate caller pid to MediaCodec.Ronghua Wu2015-07-211-0/+2
| | | | | Bug: 22630317 Change-Id: I0337d74f4ef04bf96f2de83f33d98d0d7da47c12
* nuplayer: use codec->setSurface when possible to avoid seekingLajos Molnar2015-07-131-0/+4
| | | | | Bug: 22414719 Change-Id: I0442e12af960f86a0fc090b4a469c62ba638a1a0
* NuPlayer: Enhance dumpsys statisticsPraveen Chavan2015-06-101-4/+5
| | | | | | | | Account for dropped output-frames (rather than input-frames) in percentage dropped frames. Print mime and component name for each active track Change-Id: I3491d336c696d8ed0fd1503b80afe1df47c787c8
* stagefright: remove NativeWindowWrapperLajos Molnar2015-04-301-2/+2
| | | | | | | | Now that Surface and SurfaceTextureClient are the same and Surface, it does not add value. Bug: 19489395 Change-Id: I016ecd1cf5cc51ce6244b6fa34ecd75f84e3db01
* DO NOT MERGE libmediaplayerservice: set priority and operating rate for the ↵Ronghua Wu2015-04-271-0/+1
| | | | | | | | codec used by nuplayer. Bug: 20481562 Change-Id: I9806414962352fbcda726f8274f1cd348c961de0 (cherry picked from commit f19f5d716b39a5d9dc1abdcd5a16a7aaf1b1ab8b)
* NuPlayer: queue a deferred scan sources when flushing during scanChong Zhang2015-04-171-1/+1
| | | | | | | also refactor code to move scheduleRequestBuffers to decoder base. bug: 20267388 Change-Id: I48f16adc6b4d4008f8fcda8b3b01c595ad199f8b
* mediaplayer: use async mode in NuPlayerMarco Nelissen2015-04-101-2/+9
| | | | | Bug: 14679336 Change-Id: I5e471a6e13be82a375afc2718599f27cd0255bf5
* NuPlayer: play out pending frames on discontinuityChong Zhang2015-03-101-1/+5
| | | | | | bug: 19567254 Change-Id: Iff689e1eea54283095068d68bcdff4c2674af554
* Fix NuPlayer assertion on failure to create AudioTrackAndy Hung2014-12-031-3/+0
| | | | | | | | | | Under heavy media load or monkey/stress testing, more than 32 AudioTracks may be created or memory resources may be scarce. Remove the assertion on failure to create AudioTrack and signal MEDIA_ERROR. Bug: 17319843 Change-Id: I5d4e200b5f50d800046851a33e035cdc6ff10075
* notify seek complete upon first video output frameChong Zhang2014-12-011-1/+4
| | | | | Bug: 18541814 Change-Id: Ie4e0976885f26eb253460eab371cb181ea85f2db
* tunnel NuPlayer source and decoder inputChong Zhang2014-11-201-85/+34
| | | | | | Bug: 18342383 Change-Id: Ieff1cd3bad2b39d46f127ddd5d5139b919992461
* NuPlayer: tunnel decoder with renderer for data buffer passing.Wei Jia2014-11-141-3/+14
| | | | | | Bug: 18342383 Change-Id: I182928007814c146c01a86196c4fda1d46e74ea4
* NuPlayerDecoder: postpone input message processing when it's not dequeued.Wei Jia2014-10-021-1/+3
| | | | | Bug: 17622642 Change-Id: I67608121bf70d6acb152e4aa64892b11bf167e8c
* Split CEA-608 Closed caption into 4 tracks CC1~CC4Chong Zhang2014-09-031-5/+7
| | | | | | Bug: 16463078 Change-Id: Ib3073090934232016e535fbb8fa56cdf9d7ab6eb
* NuPlayer: remember and resubmit CSDs after flushLajos Molnar2014-08-231-1/+6
| | | | | Bug: 17118001 Change-Id: I09bbefd4c05de0db1c593e8d6d38859358a20ebb
* nuplayer: support widevine sourcesLajos Molnar2014-07-171-0/+6
| | | | | | | | | | | | | | | | | | | | - handle widevine:// scheme - add separate looper for renderer (as it can block initial buffer handling if all buffers are used) - initiate secure codecs before source is started - don't read secure buffers - share ACodec's input buffers with Widevine source on the decoder side - keep track of mediabuffers released by widevine source - keep track of dequeued input buffers (for safety) - release mediabuffer when buffer is subsequently dequeued. (This was hardcoded into OMXCodec to do this when buffer-empties message was handled, but MediaCodec does not support such functionality.) Bug: 15699665 Change-Id: I4a369443294e45c644be8b0257010e52db1d7c9b
* Add support of audio offloading for NuPlayer.Wei Jia2014-07-091-6/+6
| | | | Change-Id: Ic83973339fb46a83b48382e6097925f45d200867
* support for CEA-608 closed captionChong Zhang2014-06-131-0/+30
| | | | | | Bug: 15470448 Change-Id: Ic6a527f5c35a8ee0a08a5b043336e4d193216083
* Added paused state to NuPlayerDecoderWei Jia2014-06-051-0/+2
| | | | | | | | | | This prevents decoder from requesting new buffer until the decoder is resumed, and prevents processing a potential DISCONTINUITY while the player is still flushing. Bug: 13133027 Change-Id: I2f9fa9f00c8583aa6908809cb7c31ddde07cfaf0
* NuPlayer: use MediaCodec instead of ACodecLajos Molnar2014-03-101-6/+38
| | | | | Bug: 11785204 Change-Id: I1455bfc683469c7a69e565b179aceacbc5c459f5
* NuPlayer side support for seamless format switch.Robert Shih2014-02-241-0/+5
| | | | | | Avoid reinstantiating decoder if seamless format switch is supported. Change-Id: I2c2be08d6da90cc835ec747d04a76db2313dfc7c
* experimental support for fragmented mp4 playback in nuplayerAndreas Huber2012-08-031-1/+1
| | | | | | cherry picked from change 170999 Change-Id: I407775f0290154ad4961134839a15c9f296424c0
* Various improvements to nuplayer playbackAndreas Huber2011-09-161-1/+2
| | | | | | | | | | | | | | | | | | | | - Drastically cut down the number of times we supply the AudioSink with data by estimating the time until the sink would run out of data and then scheduling a refill in advance of that. - Use a dedicated looper for video decoders since they are currently taking too long to return from OMX_FillThisBuffer (bug 5325201) - Revise thread priorities for the OMX dispatcher and software codecs, instead of running them at ANDROID_PRIORITY_AUDIO, they now only run at ANDROID_PRIORITY_FOREGROUND - Since threads created by pthread_create inherit all of the parent threads attributes including thread priority, briefly reset thread priority to ANDROID_PRIORITY_FOREGROUND before instantiating OMX components and then restore it. Change-Id: If9332a3a20dad5485333d68c11de0d2d5d3fffc3
* The decoder wrapper is no longer needed. Also disable building old-style ↵Andreas Huber2011-05-121-2/+0
| | | | | | decoders. Change-Id: Ie022f1a6dffe619c1b0385aa13f63e097282cfe4
* Bug 3438258 Add SurfaceTexture as MediaPlayer sinkGlenn Kasten2011-02-231-2/+3
| | | | | | | | | | | | | | 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
* Squashed commit of the following:Andreas Huber2010-12-231-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* Squashed commit of the following:Andreas Huber2010-12-211-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | commit 63be8ceb8b2354fb997a277c0092abae015ecf10 Author: Andreas Huber <andih@google.com> Date: Fri Dec 17 13:45:34 2010 -0800 Enable handling of discontinuities that involve potential format changes. Change-Id: I21848a113db8764abb54bdcf302b0923253eaf4d commit d18a7f80ec09af382026809263dcbbfa9e7a9ec8 Author: Andreas Huber <andih@google.com> Date: Fri Dec 17 13:45:01 2010 -0800 Signal whether or not a format change occured as part of the discontinuity. Change-Id: I06e64f542f4369549c9cebbb892dc612346ae43d commit c400adbd5fdbd65cfef7aed9ec65bcaace4bb69b Author: Andreas Huber <andih@google.com> Date: Fri Dec 17 13:44:46 2010 -0800 A little more instrumentation of ACodec Change-Id: I07f4aeccbbd15cdd9f80f48c3f92ee984ef6d92b commit 1d802ee01f47b3cdc5b89502cec7fbb595e197a3 Author: Andreas Huber <andih@google.com> Date: Fri Dec 17 13:43:58 2010 -0800 Only sync audio/video queues if both types of media are actually present. Change-Id: Ic88edf9bb1ebd4034c08747cce9877a4e28e0d35 commit e402da39d9a4d8b75653a78f728e20a3ef0fb497 Author: Andreas Huber <andih@google.com> Date: Fri Dec 17 13:42:24 2010 -0800 Disable the random seek for now. Change-Id: Iddd597b546e2f229e88214f9bdd6452bb188105e Change-Id: I27c4d9ba916080be94ce6117dbb095e9022ed62b
* Initial support for a true streaming player for mpeg2 transport streams.Andreas Huber2010-12-151-0/+64
Change-Id: I153eec439d260a5524b21270e16d36940ec3161a