summaryrefslogtreecommitdiffstats
path: root/media/libmediaplayerservice/MediaPlayerService.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* - To track the usage of all audio output devicesGloria Wang2011-03-021-2/+110
| | | | | | | | - To track the currently used audio device - The devices are separated as speaker and other audio devices - Provide the collected data to battery application through pullBatteryData() Change-Id: I374c755266b5ac6b1c6c630400f4daf901ea8acc
* Bug 3438258 Add SurfaceTexture as MediaPlayer sinkGlenn Kasten2011-02-231-0/+9
| | | | | | | | | | | | | | 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
* - Add method in MediaPlayerService to collect and pullGloria Wang2011-02-221-0/+92
| | | | | | | codec usage (duration) for the battery app - Collect MediaPlayer decoding usage data Change-Id: I0ef4e32b6a041ba1fe73c19f9c67185c61d03965
* Remove legacy, AwesomePlayer-based http live implementation.Andreas Huber2011-02-161-11/+7
| | | | Change-Id: I455d0faa5612dcd4d2bb6f2b3c7b64a1caaabf69
* Use NuPlayer for HTTP live streaming playback by default.Andreas Huber2011-01-061-2/+2
| | | | | | Reversed the property logic, set media.httplive.disable-nuplayer to true to revert Change-Id: I1057940667aaab56bb75c9ea15c2cdcab736f3c6
* Squashed commit of the following:Andreas Huber2010-12-231-0/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-1/+6
| | | | Change-Id: I153eec439d260a5524b21270e16d36940ec3161a
* Support streaming data across binder boundaries.Andreas Huber2010-11-231-0/+44
| | | | Change-Id: Ifbac61406dcb81343765f99ccba08bd90f9274cc
* Remove all traces of legacy renderer support in stagefright.Andreas Huber2010-11-161-8/+0
| | | | Change-Id: I17b8e0dbf53fca37c96830c41131b4bc0c24ca6d
* Remove legacy PV stuffJames Dong2010-11-151-30/+3
| | | | Change-Id: I60ffea7c65592df4b3a80c590c863f1f79b371fd
* Squashed commit of the following:Andreas Huber2010-10-291-14/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* am 4f21e517: am b37fcbfd: Merge "Added getter for session Id to AudioSink" ↵Eric Laurent2010-10-101-0/+10
|\ | | | | | | | | | | | | | | | | into gingerbread Merge commit '4f21e517d09b9d793d20d64547df330fba705b3c' * commit '4f21e517d09b9d793d20d64547df330fba705b3c': Added getter for session Id to AudioSink
| * Added getter for session Id to AudioSinkEric Laurent2010-10-071-0/+10
| | | | | | | | | | | | | | | | | | | | | | Added a method to expose the audio session id at AudioSink interface so that the AudioPlayer in stagefright can retrieve it. Also: - Fixed audio effect send level not being initialized in mediaplayer. - Fixed compilation error when LOGV is enabled in mediaplayer JNI Change-Id: I4bb55454fd63d646e0e677692d737c4843fb05fb
* | am 7dff9dfd: am 269dea1c: Merge "Fix media.player dumpsys to output ↵Dave Sparks2010-09-281-2/+4
|\ \ | |/ | | | | | | | | | | | | | | open/mapped files correctly. Bug 2866669. The dump function whitelists several directories as filters to the output. The mount point changed for SD card in Froyo, and we started filtering files that w Merge commit '7dff9dfd6176fad1318a27f16318561453a429f0' * commit '7dff9dfd6176fad1318a27f16318561453a429f0': Fix media.player dumpsys to output open/mapped files correctly. Bug 2866669.
| * Fix media.player dumpsys to output open/mapped files correctly. Bug 2866669.Dave Sparks2010-09-271-2/+4
| | | | | | | | | | | | | | | | | | The dump function whitelists several directories as filters to the output. The mount point changed for SD card in Froyo, and we started filtering files that were open on the SD card. This fix changes the filter for the SD card, and adds the directory for data files as well. Change-Id: I61b67c3d11d93dbd530e8b3566000e79bc037137
* | am 9aa05ec2: am 681c5ff2: Merge "Reverse the default setting of ↵Andreas Huber2010-08-301-2/+2
|\ \ | |/ | | | | | | | | | | | | | | media.stagefright.enable-{rtsp,record} in preparation for building without opencore." into gingerbread Merge commit '9aa05ec2cd6bc592074c7bd08d22db46649c7f12' * commit '9aa05ec2cd6bc592074c7bd08d22db46649c7f12': Reverse the default setting of media.stagefright.enable-{rtsp,record} in preparation for building without opencore.
| * Reverse the default setting of media.stagefright.enable-{rtsp,record} in ↵Andreas Huber2010-08-301-2/+2
| | | | | | | | | | | | | | preparation for building without opencore. Change-Id: I1ca6bd8faba0185f9694f9dc04d2b3e6a7ab5ac3 related-to-bug: 2370115
* | Squashed commit of the following:Andreas Huber2010-08-231-1/+9
|/ | | | | | | | | | | | | | | | | | | | | | commit 35cc68814a9537c31fde146e171e7b0bbdfe211e Author: Andreas Huber <andih@google.com> Date: Mon Aug 16 08:48:42 2010 -0700 Only enable support for yuv to yuv conversion on passion, where it's available, use the slower yuv->rgb565 path everywhere else. commit d8ac5a8814103e60d11d2acf61997fc31a1dc58d Author: Andreas Huber <andih@google.com> Date: Fri Aug 13 13:56:44 2010 -0700 The software renderer takes over all rendering, converting from yuv to yuv if possible and rgb565 otherwise. commit 684972074b74318bdcb826ed9b5b0864d2d2e273 Author: Andreas Huber <andih@google.com> Date: Fri Aug 13 09:34:35 2010 -0700 A first shot at supporting the new rendering APIs. Change-Id: Iea9b32856da46950501f1a700f616b5feac710fd
* Added support for auxiliary audio effects to AudioTrack and MediaPlayer.Eric Laurent2010-07-211-1/+46
| | | | | | | | 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
* Add runtime dumpsys support for media recorder clientJames Dong2010-07-081-5/+11
| | | | Change-Id: I4c8a81720f3be2db54678a7e84fe12849255046b
* Added Visualizer effect.Eric Laurent2010-07-071-121/+0
| | | | | | | | | | | | | | The visualizer enables application to retrieve part of the currently playing audio for visualization purpose. It is not an audio recording interface and only returns partial and low quality audio content as a waveform or a frequency representation (FFT). Removed temporary hack made in MediaPlayer for animated wall papers based on audio visualization (snoop() method. This commit also includes a change in AudioEffect class: - the enable()/disable() methods have been replaced bya more standard setEnabled() method. - some fixes in javadoc Change-Id: Id092a1340e9e38dae68646ade7be054e3a36980e
* Remove most stagefright property overrides, remove VorbisPlayer and ↵Andreas Huber2010-06-231-58/+3
| | | | | | | VorbisMetadataRetriever as this functionality is now provided by stagefright. Change-Id: Ieafe75a4550c273ad59b4518d7cd4c0fce0f7cce related-to-bug: 2370115
* Added support for audio sessions in MediaPlayer and AudioTrack.Eric Laurent2010-06-221-15/+27
| | | | | | Audio sessions are used to associate audio effects to particular instances (or groups) of MediaPlayers or AudioTracks. Change-Id: Ib94eec43241cfcb416590f435ddce7ab39a07640
* Initial checkin of preliminary rtsp support for stagefright.Andreas Huber2010-06-071-2/+7
| | | | Change-Id: I0722aa888098c0c1361c97a4c1b123d910afc207
* am 1d628c5d: merge from open-source masterThe Android Open Source Project2010-05-141-1/+1
|\ | | | | | | | | | | | | Merge commit '1d628c5d3dd7998b29c339292a2dc391015d0782' into kraken * commit '1d628c5d3dd7998b29c339292a2dc391015d0782': Accept media files by file extension in case insensitive manner.
| * merge from open-source masterThe Android Open Source Project2010-05-141-1/+1
| |\ | | | | | | | | | Change-Id: I934cf85c4673f9ca3a9549c2074907ad572310f4
| | * Accept media files by file extension in case insensitive manner.Atsushi Eno2010-03-191-1/+1
| | | | | | | | | | | | Change-Id: I8e246010c96802ae87960797607fc8f8f2ab6031
* | | am 8ea45aad: am e083d0a2: Merge "Support for Ogg Vorbis decoding in ↵Andreas Huber2010-05-041-7/+35
|\ \ \ | |/ / | | | | | | | | | | | | | | | | | | | | | stagefright." into froyo Merge commit '8ea45aad100ee25067b2e83703454c71a968ba4f' into kraken * commit '8ea45aad100ee25067b2e83703454c71a968ba4f': Support for Ogg Vorbis decoding in stagefright.
| * | Support for Ogg Vorbis decoding in stagefright.Andreas Huber2010-05-041-7/+35
| | | | | | | | | | | | | | | | | | | | | Set the magic property media.stagefright.enable-vorbis to true to use the new implementation instead of the standalon vorbis player for file-based playback. HTTP streaming of vorbis content will always go through stagefright. Change-Id: Ie3843a99fadb22372f89540d0f8d65196e0c2af8 related-to-bug: 2654400
* | | am 6852b198: am d3d445b1: Merge "Use PV_PLAYER to handle RTSP streaming" ↵James Dong2010-04-141-0/+5
|\ \ \ | |/ / | | | | | | | | | | | | | | | | | | | | | into froyo Merge commit '6852b198fbedd9378ed79ca6528a4d6f33b0b677' into kraken * commit '6852b198fbedd9378ed79ca6528a4d6f33b0b677': Use PV_PLAYER to handle RTSP streaming
| * | Use PV_PLAYER to handle RTSP streamingJames Dong2010-04-141-0/+5
| | | | | | | | | | | | | | | | | | bug - 2594865 Change-Id: Ice5b89b1d53bbc4da033892fe545bdf51ac7267f
* | | Remove legacy NO_OPENCORE code bypass from MediaPlayerService.Andreas Huber2010-04-091-4/+0
|/ / | | | | | | Change-Id: I72db73c91673e0d7f1090e3b033ae915337dc16e
* | Fix build. I screwed up a merge.Dave Sparks2010-03-021-1/+1
| |
* | Add locking to signal in AudioCache::notify(). Bug 2317844.Dave Sparks2010-03-021-1/+2
| |
* | Add some space and total memory amount to the memory dump from the media ↵James Dong2010-02-251-1/+3
| | | | | | | | server process.
* | Implement legacy behaviour for MediaPlayer's behaviour of starting from the ↵Andreas Huber2010-02-181-0/+2
| | | | | | | | | | | | start of the media on a start() call instead of resuming at the current position, if previously reached the end of the stream. Also properly report number of frames played to audio flinger. Finally, delay spawing the queue thread until actually used. related-to-bug: 2453220
* | New API on java's MediaPlayer to suspend/resume a session.Andreas Huber2010-02-121-0/+14
| | | | | | | | related-to-bug: 2231576
* | Implementation of stagefright-enabled MediaPlayerService::decode functionalityAndreas Huber2010-02-101-5/+85
| | | | | | | | related-to-bug: 2359268
* | API Extension: Support for optionally specifying a map of extra request ↵Andreas Huber2010-01-281-4/+7
| | | | | | | | | | | | | | | | headers when specifying the uri of media data to be played. related-to-bug: 2393577 Original change by Andrei Popescu <andreip@google.com>
* | Fix issue 2285561: New AudioFlinger and audio driver API needed for A/V syncEric Laurent2010-01-261-0/+13
| | | | | | | | | | | | | | | | | | | | | | | | Added getRenderPosition() API to IAudioFlinger to retreive number of audio frames written by AudioFlinger to audio HAL and by DSP to DAC. Added getRenderPosition() API to AudioHardwareInterface to retreive number of audio frames written by DSP to DAC. Exposed AudioTrack::getPosition() to AudioSink() to make it available to media player. Removed excessive log in AudioHardwareGeneric.
* | Special-case .wmv and .wma metadata retrieval and playback to use PV if ↵Andreas Huber2010-01-211-0/+13
| | | | | | | | | | | | available. related-to-bug: 2381874
* | b/2353646Marco Nelissen2010-01-121-69/+58
| | | | | | | | | | | | | | | | | | | | | | | | | | Fix music visualizations to also work with audiotrack callbacks, which stagefright uses. This slightly changes the way the data is stored, since before we were relying on the buffers being written always being at least 4K, whereas the callbacks are generally for smaller amounts of data. Now we append all the data to a big circular buffer, then return chunks of that buffer for visualization. When there are multiple things playing at the same time, this will give the wrong result, but (1) that was the case before as well, and (2) will be fixed once we start visualizing the mixer output instead of the mixer inputs.
* | Use stagefright for http streaming if the right property is set.Andreas Huber2010-01-051-3/+7
| |
* | Disable HTTP playback and metadata support in stagefright, use PV instead.Andreas Huber2009-12-171-0/+6
| |
* | am 14f89404: Fix media player decode function. Bug 2317821.Dave Sparks2009-12-101-7/+17
|\ \ | |/ | | | | | | | | | | Merge commit '14f8940472217e8b0164d8f213679710d623d528' into eclair-mr2 * commit '14f8940472217e8b0164d8f213679710d623d528': Fix media player decode function. Bug 2317821.
| * Fix media player decode function. Bug 2317821.Dave Sparks2009-12-091-7/+17
| | | | | | | | | | | | | | | | | | There was a recent change to OpenCORE that broke the MediaPlayer::decode() function for all OpenCORE supported formats (MP3, AAC, and AMR-NB/WB). The affect is that SoundPool is unreliable for all of these formats. This patch changes the logic in the AudioCache object that processes messages from the media player. The old logic was fragile. This change should make it more robust against changes.
| * DO NOT MERGE: Squashed commit of the following:Andreas Huber2009-11-051-2/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | commit 08259dd3dc9026887f9bbfedaf45866eb56ea9bc Author: Andreas Huber <andih@google.com> Date: Thu Nov 5 12:02:31 2009 -0800 DO NOT MERGE: Use PV for metadata extraction even if stagefright is used for playback. commit 991832fe4dc012e51d3d9ed8d647c7f09991858f Author: Andreas Huber <andih@google.com> Date: Thu Nov 5 11:24:11 2009 -0800 DO NOT MERGE: Do not assert if we encounter OMX_StateInvalid. All bets are off though. commit cec45cf302d9218fe79956cbe8a462d7ca3a10bb Author: Andreas Huber <andih@google.com> Date: Mon Oct 26 16:11:54 2009 -0700 DO NOT MERGE: When freeing an OMX node, attempt to transition it from its current state all the way to "Loaded" in order to properly free any allocated buffers. commit 34a1e885ef9113d68acbc26d36fcc47fdebbed84 Author: Andreas Huber <andih@google.com> Date: Thu Nov 5 11:10:49 2009 -0800 DO NOT MERGE: Fix heap corruptin in OMXNodeInstance. commit 5a47f7439a1298b330541a7e4e647a8b44487388 Author: Andreas Huber <andih@google.com> Date: Thu Nov 5 11:08:19 2009 -0800 DO NOT MERGE: Fix seek-on-initial-read behaviour of OMXCodec. commit 45bed64722501b9f411a2940aff5aff4cc4d2e98 Author: Andreas Huber <andih@google.com> Date: Thu Nov 5 11:02:23 2009 -0800 DO NOT MERGE: Renaming string.h to stagefright_string.h to avoid conflicts. commit 6738e306a50196f31a73d4fc7b7c45faff639903 Author: Andreas Huber <andih@google.com> Date: Thu Oct 15 13:46:54 2009 -0700 DO NOT MERGE: Reimplement the OMX backend for stagefright. Besides a major cleanup and refactoring, OMX is now a singleton living in the media server, it listens for death notifications of node observers/clients that allocated OMX nodes and performs/attempts cleanup. Changed APIs to conform to the rest of the system.
* | Remove old hack A/V sync hack that is no longer needed.Dave Sparks2009-12-031-2/+1
| |
* | am 1d9246e8: Merge change Id095e180 into eclairMarco Nelissen2009-11-021-0/+1
|\ \ | |/ | | | | | | | | | | Merge commit '1d9246e8bb8de624e14c55dce57e93da18cfd7a8' into eclair-mr2 * commit '1d9246e8bb8de624e14c55dce57e93da18cfd7a8': Make sure the visualization stops immediately when sound stops, instead of continuing for a fraction of a second.
| * Make sure the visualization stops immediately when sound stops, instead of ↵Marco Nelissen2009-11-021-0/+1
| | | | | | | | continuing for a fraction of a second.