History log of /frameworks/av/media/libstagefright/AwesomePlayer.cpp
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
14744c076e2e361f049e8c3c43cef502ba3fcbd5 23-Oct-2012 Andreas Huber <andih@google.com> Don't attempt to seek audio and video separately.

The widevine extractor doesn't deal too well with that...

Change-Id: Iadfeede4fe0c086af788c5639782854e4fbb98ff
related-to-bug: 7262386
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
ccd08439c7914d86264c7ad81bfd03cf39aaa9f7 17-Oct-2012 James Dong <jdong@google.com> Added some extra failure logging messages

o related-to-bug: 7282066

Change-Id: I0896551a45aab61fb571fef19061397ff84321d9
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
a3fafcb4ee6d6344f2b5b602d095a4ffebc8dbb7 01-Oct-2012 Jeff Tinker <jtinker@google.com> [WVDRM] Fix for stuttering on low bandwidth

Reintroduces the play/pause rebuffering logic we eliminated
in JB zero day to fix double spins and slow startup - but
activates that logic only based on a comparison of the
current bandwidth measurement and the lowest bitrate track
in the movie.

Needs to be submitted with related changes in /vendor/widevine

bug: 7230071
Change-Id: If4f5ecda36c4858ce8bf5c4abb722f90a329ecdb
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
8a74c9b8e2627560ae5a92d4261f0de4464490ad 06-Sep-2012 Edwin Wong <edwinwong@google.com> Add getError and setError to propagate error code from WVMMediaExtractor up to player.

The two virtual functions provides a path for the player(AwesomePlayer) to retrieve
the last error from WVMMediaExtractor container.

Change-Id: Iee8d4a3eccf82af95eb3d4d465f069daced4aa1a
related-to-bug: 7073630
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
f10f36d34812bae602ff018fb503ad07eaf550b1 23-Aug-2012 Jeffrey Tinker <jtinker@google.com> Send current bandwidth info event when buffering occurs

There is a dependent change in vendor/widevine repo.

Change-Id: If063f4b1c8857e5bfc7be54ab0f97a4ed169b303
related-to-bug: 5883234
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
53ae1640ffbfc690962f7f94694b02680c6f66cb 17-Aug-2012 James Dong <jdong@google.com> Don't log streaming url.

o related-to-bug: 6994761

Change-Id: I79d5549a70b3bde67ddf496cfc6283ac92b1f569
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
c374dae535b83d9b499dd9fe8f9dabdb8b0ac9fd 20-Jul-2012 James Dong <jdong@google.com> Added a callback to signal when the rendering of the video frame just occurred

Change-Id: Ifbd78606ffc33483aecebf02cb18e0e52af9624d
related-to-bug: 6851811
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
6f434482331b55876cb09c638149c21ca40c7690 20-Jul-2012 Marco Nelissen <marcone@google.com> Ensure MEDIA_INFO_BUFFERING_END is always sent

b/6620761

Change-Id: Iafd2eeac7b3cbbeb42af3638628a32dc6c2bb414
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
1e5b2b3361ddd07259bf4b29820ca4aa5f3a861b 14-Jun-2012 Jamie Gennis <jgennis@google.com> Update ANativeWindow client code for sync

This change updates all the uses of ANativeWindow to use the new ANW functions
that accept and return Sync HAL fence file descriptors.

Change-Id: Id7db42d8d6380f8b440d88476ce9211c6225fb16
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
8a15dfba686b50f2b8163af247e236d52150321f 15-Jun-2012 Insun Kang <insun@google.com> Fix track selection code in AwesomePlayer

Change-Id: I1c5a2f13f562a0ba253a93b4346cbe2c60099ddd
related-to-bug: 6671977
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
ce3d3ef78d6512cc272d469e236fba4fca1189b0 13-Jun-2012 James Dong <jdong@google.com> Fix one of the potential ANR issues from AwesomePlayer

Change-Id: I8ac7bbb5fe219f65bdbdd223538fbac0575e2957
related-to-bug: 6565826
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
dadc0ddbfe309086801b479ddc91c55eeb2a9cbb 01-Jun-2012 Jeff Tinker <jtinker@google.com> Part of fix for double spins & faster startup

This change alters the way that the media player
interacts with the Widevine adaptive streaming buffer
logic. It eliminates the reliance on cached buffer
duration to determine pause/play states and instead
only generates buffering events when the widevine
library is not producing data (i.e. when it is
buffering). This eliminates unnecessary pause and
rebuffer cycles, reducing startup time and the
frequency and duration of spinners.

Multi-repo commit, depends on related changes in vendor/widevine

Change-Id: I387db2decd83841775a8351bddf5a6381fe4104f
related-to-bug:6503294
related-to-bug:6463780
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
a6490c65f93e1cbe969fba499978e8d64214108a 22-May-2012 Andreas Huber <andih@google.com> Only mark the audio player as started if it did so successfully.

Change-Id: I4683f5ca243f9f1b80990028d225d0f6c5973899
related-to-bug: 6500580
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
ab7a2e544643edcb2e09ed5f204580afd763edc1 27-Apr-2012 James Dong <jdong@google.com> Switch audio tracks at runtime

o The switching is not allowed if there is an audio seek operation ongoing.

o related-to-bug: 6110705

Change-Id: Ib92a165f3984aa033d97800184d3d17319522db5
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
2163320110d2f971becbad82e15b2ab360a1ddb6 11-May-2012 Jamie Gennis <jgennis@google.com> stagefright: add tracing to AwesomePlayer.

Change-Id: Id84419a1c54e41e158b24477f0676071e90f6922
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
49e7daaf6c2fd7f3e3d06d350de73de1ffeff5dd 03-May-2012 Andreas Huber <andih@google.com> Revert our seek behaviour to SEEK_CLOSEST_SYNC instead of SEEK_CLOSEST.

Change-Id: I375ca724b228cb0bb4776b87eeaab788e365be84
related-to-bug: 6437985
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
6a3969cc3bcbfc84dbcc27aa726eb96bc03a830b 03-May-2012 Edwin Wong <edwinwong@google.com> Removed mutex lock in addTextSource, and rename to addTextSource_l
to indicate this method needs to be called with a lock hold.

Change-Id: I7e99f0a622e7de49c288be09dd4fc955bbca390b
related-to-bug: 5629511
related-to-bug: 5542712
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
4f6eed0d1c7972a983c075bdcf03089569e13fe1 30-Apr-2012 James Dong <jdong@google.com> Impl for supporting two video scaling modes

o allows the video scaling mode to change at any time
o also remove the scaling mode logic in OMXCodec.cpp

o related-to-bug: 5454345

Change-Id: I6f1714eb0c2774591ce650d56c1e779b8afd085f
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
514bcaf1e842e8e90fbeabf35e7e654622b75b02 17-Apr-2012 James Dong <jdong@google.com> Handle the case when there is no timed text track

o also replaced mTimedTextLock with mLock, since there is no particular reason to use a separate lock for timed text

o related-to-bug: 6110705

Change-Id: Ia687e96956692c42d492e57992e5721ca1e8e18b
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
1948eb3ea6eee336e8cdab9b0c693f93f5f19993 14-Apr-2012 Eric Laurent <elaurent@google.com> Add support for deep audio buffers

Allow AudioSink to use deep audio buffering when the
source is audio only and its duration is more than
a certain threshold.
This helps improve battery life but implies higher
audio latency.

Change-Id: Ie79915b61c370292f05aabda9779356570e03cbb
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
eec46abb88dcc50621fd2d3f17a6b8d24fd07a19 12-Apr-2012 James Dong <jdong@google.com> Fix for multiple audio/timed track feature implementation - part one

o getTrackInfo now returns all tracks, rather than just the timed text tracks.
o the index of the track info is kept to the same as the track index if the
track is not from an external source
o correctly maps the selectTrack() and unselectTrack() calls to the right
track index

o TODO:
1) note that the selectTrack() and unselectTrack() only works for timed text
track at present; 2) the lock is timed text specific

o related-to-bug: 6110705

Change-Id: Ib1feeef2184bc992930ace0d1197b6c00a2636d7
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
613c8ae1b7a2b4f43b33a72dc2fff0bc8b7d4c6f 13-Apr-2012 James Dong <jdong@google.com> Add external timed text source using a passed file descriptor

o Also fixed a minor issue where the file length should be of type off64_t rather than size_t

o related-to-bug: 5542712

Change-Id: I35fd8ceea0bc75e553b7f4a99932cf58ea560c4e
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
7c5afe93c9ca2f9f3958663bc3fa9649ec2f5331 15-Mar-2012 Insun Kang <insun@google.com> Fix a bug in MediaPlayer's addExternalSource().

Change-Id: I035cbfb7acccc7ff88d659861ece7d0f61314fda
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
f9d660a5e0196240add5daf0199f128d471e592c 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/av/media/libstagefright/AwesomePlayer.cpp
5e5631bbf2403b8242e77977792318d65362ed91 09-Mar-2012 Jeff Tinker <jtinker@google.com> Merge "Fix videos app bandwidth accounting for 4G streaming"
41acadea86b763f4cc6f7aeb292f943d4570ac90 29-Feb-2012 James Dong <jdong@google.com> Merge "Moves TimedTextDriver.h into include/media/stagefright/timedtext."
df712ea86e6350f7005a02ab0e1c60c28a343ed0 26-Feb-2012 Mathias Agopian <mathias@google.com> fix libgui header location

Change-Id: Iec71706cdd4f29c6904993648ce873e83ef9cafe
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
3254b25e8b0f674ccc2226609e01dd86a600802e 27-Feb-2012 Insun Kang <insun@google.com> Moves TimedTextDriver.h into include/media/stagefright/timedtext.

So that other players can include TimedTextDriver.h properly.

Change-Id: I15e72bf655de8555eef6244a6c853c27a0828a1d
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
dce4161f7d4d39498f69591e876f5fecdde95833 14-Feb-2012 Jeff Tinker <jtinker@google.com> Fix videos app bandwidth accounting for 4G streaming

Register the app uid with the WV extractor so it can
attribute bandwidth usage to the proper process.

Multi-repository commit, also changes in vendor/widevine

Change-Id: I42395fd08bf0bfc7e224745f820a714400066456
related-to-bug: 5434244
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
7a8b0ed6419e57dd8b41d3806893d63d3df91aab 02-Feb-2012 Jean-Michel Trivi <jmtrivi@google.com> Playback rate on MediaPlayer

Add support for modifying the playback rate of a MediaPlayer
by altering the sample rate of its AudioTrack.
The playback rate is expressed in permille, where 1000 is the
playback at normal speed.

Change-Id: I981d060ab32f7bae7a767e82c60c88ae635dceed
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
7c5b72c1ea1a7a8ec40c1364e5e32043799c811f 10-Feb-2012 James Dong <jdong@google.com> Change the signature of method addTextSource() in AwesomePlayer

o avoid a unnecessary copy constructor call

Change-Id: Ib598bbe42d42a835549e2d29502c6f196f859874
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
5ec58d925520e6913fba3fc54413881af751c610 09-Feb-2012 Andreas Huber <andih@google.com> Experiment with seeking to closest frame instead of closest syncframe

Also supports SEEK_CLOSEST mode in the Matroska/Webm extractor.

Change-Id: I257771648dfe41392a4cf8932f625489dcb9f234
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
6655174826330afe66ef766258181ae8c11f3f6c 11-Jan-2012 Insun Kang <insun@google.com> First step of refactoring 'timedtext' code.

Goal
1. Removed dependency of TimedTextPlayer on AwsomePlayer.
2. Generalized TimedTextParser to TimedTextSource and its subclasses.

Summary
1. Introduced TimedTextDriver, TimedTextPlayer (new implementation),
TimedTextSource (and its subclasses).
2. Removed TimedTextParser.

Remaining TODOs
1. Revise VideoVidew, Gallery3D app, AwesomePlayer to check if
'pause' and 'resume' works well.
2. Consider revising MediaPlayer APIs such as setParameter() ->
addTextSource(). Need more thoughts.

Change-Id: Ie0c4f15b9690102de755cef6940f8c31ccf78e27
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
9d2f386dd2885eaffa11fd494ae258bb09fe6397 10-Jan-2012 James Dong <jdong@google.com> Separate sniffing from session initialization

This avoid lengthy/duplicate sniffing for drm plugins when a decrypt session is opened

o The change is backward compatibile in that no update is required
for existing drm plug-ins if they do not plan to provide separate
sniffer/extractor

related-to-bug: 5725548

Change-Id: I7fc4caf82d77472da4e2bc7b5d31060fb54fd84c
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
e51dd6dd7b7034c171246ebf5e08b187ef17150c 11-Jan-2012 Eric Laurent <elaurent@google.com> am 05985a2e: am c15cf3d2: Merge "stagefright: limit audio gap for looped playback" into ics-mr1

* commit '05985a2e2ae5c21fbf69d2884c59ea475fce7f6d':
stagefright: limit audio gap for looped playback
86d24aa35adf82512d341d9aaebd62b36b0a0847 09-Jan-2012 Eric Laurent <elaurent@google.com> stagefright: limit audio gap for looped playback

The audio gap when looping audio is mostly due to
a delay requested by the audio player when executing
the end of stream message. This is to allow the audio
to be drained out of the pipe before actually stopping the
AudioTrack.
This delay is not needed when looping as the AudioTrack
is not stopped.

The fix consists in ignoring the requested delay when the
looping flag is set in awesome player.

Issue 5800981.

Change-Id: Ib32d2930c53ecebc21ca8440e6e054c7e20db4a5
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
29357bc2c0dd7c43ad3bd0c8e3efa4e6fd9bfd47 06-Jan-2012 Steve Block <steveblock@google.com> Rename (IF_)LOGE(_IF) to (IF_)ALOGE(_IF) DO NOT MERGE

See https://android-git.corp.google.com/g/#/c/157220

Bug: 5449033
Change-Id: Ic9c19d30693bd56755f55906127cd6bd7126096c
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
df64d15042bbd5e0e4933ac49bf3c177dd94752c 04-Jan-2012 Steve Block <steveblock@google.com> Rename (IF_)LOGI(_IF) to (IF_)ALOGI(_IF) DO NOT MERGE

See https://android-git.corp.google.com/g/156801

Bug: 5449033
Change-Id: Ib08fe86d23db91ee153e9f91a99a35c42b9208ea
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
b8a805261bf0282e992d3608035e47d05a898710 20-Dec-2011 Steve Block <steveblock@google.com> Rename (IF_)LOGD(_IF) to (IF_)ALOGD(_IF) DO NOT MERGE

See https://android-git.corp.google.com/g/156016

Bug: 5449033
Change-Id: I4c4e33bb9df3e39e11cd985e193e6fbab4635298
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
2a3d6e1b6cfd2d564a48371598fdc664ea40fa8c 14-Dec-2011 James Dong <jdong@google.com> am 3f6a7d1e: am d70c64db: Revert the following patches because they may lead to power regression because SHA/MD5 module is stuck 1. Revert "Fix drm flag setting missed in false drm recognition fix." This reverts commit 9f704f6c46a171357e49c411c83458b9d4565f3b.

* commit '3f6a7d1ee961a4544563932b7499535dc1cac1ec':
Revert the following patches because they may lead to power regression because SHA/MD5 module is stuck 1. Revert "Fix drm flag setting missed in false drm recognition fix." This reverts commit 9f704f6c46a171357e49c411c83458b9d4565f3b.
785ee06d106cd7958e0c151ebc6b7174d9ba861e 14-Dec-2011 James Dong <jdong@google.com> Revert the following patches because they may lead to power regression because SHA/MD5 module is stuck
1. Revert "Fix drm flag setting missed in false drm recognition fix."
This reverts commit 9f704f6c46a171357e49c411c83458b9d4565f3b.

2. Revert "Fixed the false drm recognition."
This reverts commit aadbd80b307c817698ce5110ff8e002804d1b230.

3. Revert "Fix drm enumeration order, resolves failure to play forward lock ringtones"
This reverts commit a5cbf023e349f2394ba6fc58d73b4375cfec4369.

4. Revert "Fix ANRs due to Widevine DRM plugin sniff taking too long."
This reverts commit d0d19db1ca1c289b069db33f4665bcb9386064e9.

As a result of the reverting, many ANRs from WV sniffing are back.

related-to-bug: 5739618
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
fec2284d520fa2856358692095a715678225abcb 13-Dec-2011 Jeff Tinker <jtinker@google.com> am dc44e06e: am ef664f62: Merge "Fix drm flag setting missed in false drm recognition fix." into ics-mr1

* commit 'dc44e06ef305be8de060af69a468e003e231ba05':
Fix drm flag setting missed in false drm recognition fix.
f2d86c8afe5e80bc178c1758d41b7bf154960318 13-Dec-2011 James Dong <jdong@google.com> am 406dd5d1: am aadbd80b: Fixed the false drm recognition.

* commit '406dd5d1e48752177753666867403542e1f400ca':
Fixed the false drm recognition.
901e78d96eec495bda0dbe2e2b73009951301817 09-Dec-2011 Jeff Tinker <jtinker@google.com> am a5038d16: am a693a4b5: Merge "Fix ANRs due to Widevine DRM plugin sniff taking too long." into ics-mr1

* commit 'a5038d169f47b2e2278c0056495dfd4808803f8a':
Fix ANRs due to Widevine DRM plugin sniff taking too long.
7e976e926dd8085a64a7add97ce09bfeca26e088 09-Dec-2011 Jeff Tinker <jtinker@google.com> Fix drm flag setting missed in false drm recognition fix.

Change-Id: Ie38668c8a32969ef7c7df4ca3350e2364291953c
related-to-bug: 5732033
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
d1fa3ca0eee42ffd450d579b357f39163a716ee3 09-Dec-2011 James Dong <jdong@google.com> Fixed the false drm recognition.

Change-Id: If0198e52ff7bbd7422f219f55a37aae97f7d74f1

related-to-bug: 5732033
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
894f3ca9a9f94225bb64f36847508a91d0b17a6e 08-Dec-2011 Jeff Tinker <jtinker@google.com> Merge "Fix ANRs due to Widevine DRM plugin sniff taking too long." into ics-mr1
8e49b604c806eabe3eea2bd24813cdfc4b87c64c 08-Dec-2011 Jeff Tinker <jtinker@google.com> Fix ANRs due to Widevine DRM plugin sniff taking too long.

Add a Widevine-specific format sniffer to avoid having to
refetch data from the remote server.

Change-Id: I5fdb21fe7a0d6e74f2a6f06e6fbf8070b068ac60
related-to-bug: 5725548
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
eebeceec684a36222b4559e3157b0db04c0a67ed 07-Dec-2011 Dave Burke <daveburke@google.com> am 6727a43f: am 54a53841: Merge "Fetch at least 192KB to avoid our mp3 sniffer from blocking on data." into ics-mr1

* commit '6727a43f6d8ff193b86ca90b2daa761c47157638':
Fetch at least 192KB to avoid our mp3 sniffer from blocking on data.
bab412099ab1bd3e9e942453cbb42c87ea9a59ec 07-Dec-2011 Andreas Huber <andih@google.com> Fetch at least 192KB to avoid our mp3 sniffer from blocking on data.

Change-Id: Icb10c129249bb9b69e91f6633a385840c94efa59
related-to-bug: 5666532
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
456caf3f5f0af673dc120c17c23635f40d8f5ac2 05-Dec-2011 Andreas Huber <andih@google.com> resolved conflicts for merge of 07bacabe to master

Change-Id: Idb56996f7c1b78d96e3d3d3f08419c4d122db0b1
a0f2bf56e30f580535229fa6a58e7d48b762727c 05-Dec-2011 Andreas Huber <andih@google.com> Properly identify how much metadata we need to cache in order to instantiate

the extractor without blocking (and therefore be able to abort).

Change-Id: Id2acdde897e02baaeabadae70b7c95b66c9041b3
related-to-bug: 5666532
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
60047ae30cc816e98ddb4b0b48e58c34c3d1f486 17-Nov-2011 Andreas Huber <andih@google.com> am 624efe45: am c1b1709b: Merge "Make sure not to cancel pending seek/EOS notifications on a cache underrun..." into ics-mr1

* commit '624efe45671131903fb5165f6133ba39486092ab':
Make sure not to cancel pending seek/EOS notifications on a cache underrun...
c34233e673c9791e137456d0c427d58db184b690 16-Nov-2011 Andreas Huber <andih@google.com> Make sure not to cancel pending seek/EOS notifications on a cache underrun...

or they are lost for good.

Change-Id: I2f9f53efb05db4077961137c9dc8c27edac4ec62
related-to-bug: 5544907
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
471af5aaea2d2491a77dba379771f7c96b9ca3c3 08-Nov-2011 Andreas Huber <andih@google.com> resolved conflicts for merge of 26f70db9 to master

Change-Id: Ib1536b1a4c9eeff80e0726b3e61cee12057cd120
3901e5d87573447db33fb9930871a1f5266a9b2c 25-Oct-2011 Andreas Huber <andih@google.com> Remove surface legacy APIs and code.

All surfaces are now supported through surface textures.

Change-Id: I95dd823e7099c0c32a48a1121624149dcc29d9c6
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
bd1970ae5c97cf423cbc5b591e9c8eab05a76a37 27-Oct-2011 Andreas Huber <andih@google.com> am 1388aced: Merge "Fix a reference to a stale pointer in AwesomePlayer." into ics-mr1

* commit '1388aced2a5ce3aafa8b0ae922925efafb61a5e1':
Fix a reference to a stale pointer in AwesomePlayer.
32bdfd5acb76a02e82e0059c8bd892bc1f73a7e3 26-Oct-2011 Andreas Huber <andih@google.com> Fix a reference to a stale pointer in AwesomePlayer.

The pointer returned by MetaData::findCString may become stale if the metadata
object is modified. Make a copy of the returned mime type in order to prevent
MediaPlayer::dump log corruption.

Change-Id: I9077aee36c4316d83b37fb909bf91e6b3f75d5d2
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
3856b090cd04ba5dd4a59a12430ed724d5995909 20-Oct-2011 Steve Block <steveblock@google.com> Rename (IF_)LOGV(_IF) to (IF_)ALOGV(_IF) DO NOT MERGE

See https://android-git.corp.google.com/g/#/c/143865

Bug: 5449033
Change-Id: I0122812ed6ff6f5b59fe4a43ab8bff0577adde0a
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
2bfdd428c56c7524d1a11979f200a1762866032d 12-Oct-2011 Andreas Huber <andih@google.com> NuPlayer is now taking on the task of streaming over RTSP.

Change-Id: Ie204db8810807f1e7981959e34dc0149e5d9563a
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
f337772630b0a1b48d7828647d1079ebdc22919d 13-Oct-2011 Andreas Huber <andih@google.com> Merge "Support for an MPEG2 Program Stream extractor."
49c59815369616b0fd5451ccabd377e8fe1dc3fa 07-Oct-2011 Andreas Huber <andih@google.com> YouTube can now request custom cache/prefetch parameters and disconnect-at-highwater

through the use of pseudo http headers specified in the setDataSource call.

x-cache-config: -1/-1/0
x-disconnect-at-highwatermark: 1

turns off keep-alives and disconnects every time the cache is full (will attempt
to reconnect once it run below lowwater mark)

related-to-bug: 5433309

Change-Id: Id2f942fc956e0e156834cfcd6bb08dae6a29fae1
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
2944eca607304a095ea43ba2b8f0b9de61249f9f 08-Sep-2011 Andreas Huber <andih@google.com> Support for an MPEG2 Program Stream extractor.

Change-Id: I606d87c278f72b22a5b6d7ee57bce6b02e280d41
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
c32589a79f8120ac0060945fffc50279143989aa 28-Sep-2011 Andreas Huber <andih@google.com> Cut down on AwesomePlayer and OMXCodec's verbosity.

Change-Id: Ifd95717e8ea0fb0327099b16d72a6ed58c7c9924
related-to-bug: 5382014
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
f7eade99250520f2c9c8366a20a9256c4b34abc1 08-Sep-2011 Andreas Huber <andih@google.com> Audio player must not be used as a timesource before it's started.

Otherwise it'll trigger a division-by-zero exception since the audio sample rate
is as yet unknown.

Change-Id: I0793aa7c1c348ffa2611272bb646eff6ecf6ff53
related-to-bug: 5242451
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
02f6e988107bc13ebe4828b734ea0fc3d9d11ae0 01-Sep-2011 Andreas Huber <andih@google.com> Guard the audio notifications with a separate lock to avoid deadlocks during reset.

Change-Id: I9a97372e1f777d1cbd6774cac2ed34b4b8cd9392
related-to-bug: 5179827
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
5b75fdc8fbc026453888cbb2d3fe31345394618b 31-Aug-2011 Gloria Wang <gwang@google.com> Stop the AudioSource in reset() of AwesomePlayer if AudioSource is not NULL
and AudioPlayer was not started.
Fix for 5236419.

Change-Id: I5eadd069118c3533a19b5d6f6dca2ce16d8505fb
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
63970b42f101c87db7cfd26d43b0d300260b1582 29-Aug-2011 Andreas Huber <andih@google.com> Return an error to the client instead of asserting if decoder instantiation fails

after a surface change.

Change-Id: Ic7758cbeb107032db68a1c3b8e2984710a12dd8b
related-to-bug: 5212725
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
1a49a13f20a06c2b58b97ad311a90d8eb0956052 25-Aug-2011 Gloria Wang <gwang@google.com> Set mSeekNotificationSent as false for RTSP seeking.
Fix for bug 5208736.

Change-Id: Ib1d74608ec289509082d8dcad080769f48098853
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
50bb96ca6d19846b20b8016cf020e6a3a80e495e 19-Aug-2011 Gloria Wang <gwang@google.com> Merge "When switching surface, do not set mSeekNotificationSent as true, because there could be a previous uncompleted seeking which needs to send back MEDIA_SEEK_COMPLETE message. If we set mSeekNotificationSent as true here, then mediaplayer.cpp will be waiting for message MEDIA_SEEK_COMPLETE. The getCurrentPosition() will always return the seek time before MEDIA_SEEK_COMPLETE being received by mediaplayer.cpp. Fix for bug 5181272."
af64a8a6ad89f52685e822dca30742a4132c9ae6 18-Aug-2011 Gloria Wang <gwang@google.com> When switching surface, do not set mSeekNotificationSent as true,
because there could be a previous uncompleted seeking which needs
to send back MEDIA_SEEK_COMPLETE message. If we set mSeekNotificationSent
as true here, then mediaplayer.cpp will be waiting for message
MEDIA_SEEK_COMPLETE. The getCurrentPosition() will always return
the seek time before MEDIA_SEEK_COMPLETE being received by mediaplayer.cpp.
Fix for bug 5181272.

Change-Id: I290aff29b6d9ec8db67c66abbe1f352a43f57073
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
7341123ed8fed903c593a38d57ffabad3ad62860 18-Aug-2011 Andreas Huber <andih@google.com> Merge "Some decoders require more gentle treatment"
14f95746466fb6abdbbf33ee26d92ebf3fbef98f 12-Aug-2011 James Dong <jdong@google.com> Some decoders require more gentle treatment

We sacrifice A/V sync to some extent to enable the decoder to recover from
temporary bottlenecks.

Change-Id: I16195091ad752bfad4c70869cdd7e9f28ca3a118
related-to-bug: 5180142
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
cdef698dae0c6dd89755f6494cc3d4b163f410ef 18-Aug-2011 Andreas Huber <andih@google.com> Disable vorbis-auto-looping if the audio sink used is not realtime, i.e. recording.

Change-Id: I982e740e8488ff8717ca5f081db9def55aabc9ec
related-to-bug: 5179033
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
99590d29c9d3081cadfccd036842f5ce9a7debef 16-Aug-2011 Andreas Huber <andih@google.com> Properly initialize some instance variables.

Change-Id: I190b889be343dca14fe8109528be14cc3cdd4c34
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
8adb83ba4837b3c9de1a4221a5ca4c371a62e38c 10-Aug-2011 Gloria Wang <gwang@google.com> Merge "To reduce the bytes need to be buffered before start playing the streaming video. We might revert this change if too many spinnings were introduced. For bug 4448008."
83ed9d41b5aea53a5f3f0ae2fa14e101c079a12a 10-Aug-2011 Gloria Wang <gwang@google.com> To reduce the bytes need to be buffered before start playing the streaming video.
We might revert this change if too many spinnings were introduced.
For bug 4448008.

Change-Id: I3248bba9237d71c2bd99feebc9c73f7bd45260de
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
80ec929862bcfe8582984f3a28e7a4ca5f4f27bb 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/av/media/libstagefright/AwesomePlayer.cpp
cd25fed09742235fac10953b9d4b77268c695063 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/av/media/libstagefright/AwesomePlayer.cpp
dc3d6784c73882c888423f0cb9b4de1b14e1dc02 15-Jul-2011 James Dong <jdong@google.com> Merge "Revert "Add some logging to track down where ANR happens during MediaPlayer._release().""
a3f4d7f096e5c91dc6af085761b1459866c043d9 15-Jul-2011 James Dong <jdong@google.com> Revert "Add some logging to track down where ANR happens during MediaPlayer._release()."

This reverts commit a5293d1ca4459293f4993ea39c09ea703a022844.

Conflicts:

media/libstagefright/AwesomePlayer.cpp

Change-Id: I2a5960208a6780b9a44ab5cce0ffc0e2fb28f426
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
5442cb59e8483e18b3a02400d431d167ea7074b3 14-Jul-2011 Andreas Huber <andih@google.com> If audio startup fails while executing MediaPlayer::start() do NOT post an error

notification, the error returned by MediaPlayer::start() will suffice.

Change-Id: I49bd8d42078f039e5e6d8d4fed4f7f55dc5ff82a
related-to-bug: 5020200
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
d26edf9435bf5bdb43b5a1f71192bb1477a1cc7f 02-Jul-2011 Glenn Kasten <gkasten@google.com> Merge "Bug 4571308 Provide correct video frame timestamps"
9b80c2bdb205bc143104f54d0743b6eedd67b14e 01-Jul-2011 Andreas Huber <andih@google.com> Charge network traffic to the uid of the process using the MediaPlayer.

Change-Id: I2bcb54b8232afd3fc7ee16289f37c7a7b3f23067
related-to-bug: 4517282
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
593e2773f616a926af45e74359e21a898c89875f 27-Jun-2011 Glenn Kasten <gkasten@google.com> Bug 4571308 Provide correct video frame timestamps

Change-Id: I0f726817fc02d3e2a4cf82ed801ef977994e6bcc
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
a0b1d4b161599c2bb2a47119e50c51e75bbe980e 08-Jun-2011 Andreas Huber <andih@google.com> Make dumpsys(media.player) more useful by having AwesomePlayer populate it.

Change-Id: I12ba7d542331a8293d67a0d47378b8be4f777759
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
b33d2ac90cfce0fe6db8c3e979e7ae2bbfc28163 02-Jun-2011 James Dong <jdong@google.com> Do not call getEstimatedBandwidth if the streaming is not HTTP-based

Change-Id: I4ab6c57e5b2b989676b8dfbb98402d10a5752261
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
5b1b8a93a07326f1cbc627f09e02988375189e0a 26-May-2011 James Dong <jdong@google.com> Send estimated bandwidth value as informational event when cache fetcher pauses

o Application can make informed decision about the available network bandwidth
when cache fetcher pauses.

o Application can also adjust how frequently the bandwidth is estimated within
a range from one second to one minute.

Change-Id: I90068001343e79da1886de03c565537787e1580b
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
ecc0840163093942f3418aa4b27e9279c187b173 26-May-2011 Gloria Wang <gwang@google.com> Merge "For out of band timed text support (timed text in a separate file)."
965d08ba16ee82bc85f69546360c18e7da907406 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/av/media/libstagefright/AwesomePlayer.cpp
9eff287f4f59d6a0c9ca1d5dd8a7bb6e64acf5a4 24-May-2011 James Dong <jdong@google.com> resolved conflicts for merge of d5762583 to master

Change-Id: Icba2bcdbc9f967288a65c930b198405fd8566abd
37b2d62df28a1f8e9489ee8adad030a3d24213d7 20-May-2011 James Dong <jdong@google.com> Add some logging to track down where ANR happens during MediaPlayer._release().

o add a log message in AwesomePlayer::reset before acquiring the lock

Change-Id: I9f228f615f99c03c394e9d0dd78c855c0b9fcfbb
related-to-bug: 4409547
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
e39350924f4e743ec04cc9640526e06990c8cbda 19-May-2011 James Dong <jdong@google.com> resolved conflicts for merge of a8939e0d to master

Change-Id: I090479ed09618e1aa3685ca79e16202d9c82f523
5a4e4804aa5340a4cf7ef4250d31fd901f53ddb2 19-May-2011 James Dong <jdong@google.com> Merge "Using widevine:// to stream adaptive bitrate wvm content no longer" into honeycomb-mr2
2352f4854a5cbfb4ba180f1c19f3e9a3b2315327 13-May-2011 Gloria Wang <gwang@google.com> DO NOT MERGE
For bug 4422428
Squashed commit of the following:

commit ae2e13783db2284f40d3891e70e152dab941edfc
Author: Gloria Wang <gwang@google.com>
Date: Fri May 13 11:43:11 2011 -0700

Add one more DRM error code. For bug 4422428.

Change-Id: I4e333f474c96c0e0f162dde4013ad32b336bebd6

commit 0f88249d0cb5221f622cf1d1ac3cdccefb8f58a2
Author: Gloria Wang <gwang@google.com>
Date: Fri Apr 29 10:44:46 2011 -0700

Add DRM errors in the DRM frameworks to MediaErrors also.
For bug 4350156.

Change-Id: Ib5711ec642178a49203a448b7f5114e675d49394

Change-Id: Ia02de462159400eef8c015d28531bf1dd6796a18
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
bbba88cb1bdc34705d1477208990a06904c022e7 11-May-2011 Andreas Huber <andih@google.com> Squashed commit of the following:

commit c80992e419ed567abef451042f09c4958534b90d
Author: Andreas Huber <andih@google.com>
Date: Wed May 11 14:00:07 2011 -0700

Support for the mp3 audio decoder as a software OMX component.

Change-Id: I66e10c4d0be4c3aecdef1c21b15a2c7359ceb807

commit a358d0e1bf2a88897887445f42ccdda0f5f2f528
Author: Andreas Huber <andih@google.com>
Date: Wed May 11 13:11:23 2011 -0700

Support for G.711 alaw and mulaw decoders as software OMX components

Change-Id: Ia5c76c02cb83a9f94ce39a27b2251e5880218f03

commit 79088b9c9a5c8b8c97ea66cb4f90a2b0f0d34553
Author: Andreas Huber <andih@google.com>
Date: Thu May 5 15:43:32 2011 -0700

Instead of using an RGB surface and conversion yuv420->rgb565

convert from OMX_COLOR_FormatYUV420Planar to HAL_PIXEL_FORMAT_YV12 instead.

Change-Id: I8c4fc3c54c963f0d4ba6377f3c4ab4e0013152e5
related-to-bug: 4394005

commit 69469d3bd84425777b11b9fc938c5e0c61af26a7
Author: Andreas Huber <andih@google.com>
Date: Tue May 10 15:46:42 2011 -0700

voip mustn't link against libstagefright.so

Change-Id: I4d0ba9a8b9dc9380b792a1bd04bcda231964862c

commit 2a9a9eeeeeb36ae3a9e680469c3016d509ff08c3
Author: Andreas Huber <andih@google.com>
Date: Tue May 10 14:37:10 2011 -0700

Remove most non-OMX software decoders by default

Change-Id: Ic56514bc1b56b8fa952e8c4a164ea7379ecb69d0

commit a4de62c37b335c318217765403a9fb282b20a216
Author: Andreas Huber <andih@google.com>
Date: Mon May 9 16:50:02 2011 -0700

Conditionally build the old-style software decoders.

Change-Id: I5de609e1d76c92d26d6eb81d1551462258f3f15f

commit 5d8b039f9449dc3dad1e77c42c80cc0b54b0c846
Author: Andreas Huber <andih@google.com>
Date: Mon May 9 16:13:12 2011 -0700

Support for MPEG4 and H.263 video decoders as soft OMX components.

Change-Id: I5e3a4835afab89f98e3aa128d013628f5830eafe

commit b25a1bfbeb0ff6e62e1cc694ce2599c91489c7d0
Author: Andreas Huber <andih@google.com>
Date: Mon May 9 11:49:10 2011 -0700

Boost Soft OMX thread priority, fix timestamp handling in vorbis Soft OMX decoder.

Change-Id: I68d26d4999f06fcc451d69e5303663fab0cba9e8

commit c0574362f8dc3319ce84d981097867062a698527
Author: Andreas Huber <andih@google.com>
Date: Mon May 9 11:28:53 2011 -0700

Support for the AMR decoders (NB and WB) as Soft OMX components.

Change-Id: Ia565f59833fb52653e23f26536e7e41fc329a754

commit 3e5575a8f0e27a490cb7bde77bd9456087837f08
Author: Andreas Huber <andih@google.com>
Date: Wed May 4 13:41:25 2011 -0700

Signal an error if the aac decoder failed to initialize from codec specific data.

Change-Id: I01da7831bdf722edd7d6dc5974486daa2cf2b209
related-to-bug: 4272179

commit f94aeaa9886e772ff4823e671ed237096649f4af
Author: Andreas Huber <andih@google.com>
Date: Tue May 3 13:07:38 2011 -0700

Software OMX nodes don't (yet?) support native_window mode.

Change-Id: I7d9ca9164ef4abf66b573ca21dba12d672f8b12d

commit eefdfabac8dc659e00daa56da69aea705c49cb67
Author: Andreas Huber <andih@google.com>
Date: Tue May 3 12:57:16 2011 -0700

Fixing the OMX tests to refer to appropriate files from test content.

Change-Id: I5b61c3498749bfb876abbd3946a5132356e3f6ff

commit f31b7326aef14b6a1b7946520a9688f092e844d5
Author: Andreas Huber <andih@google.com>
Date: Tue May 3 11:08:38 2011 -0700

Soft OMX components are now dynamiclly loaded/unloaded, not directly linked against.

Change-Id: I1e2ecfbfab67a8869886f738eaf0c7b3c948b6d9

commit b7f0343879e4df06f0a1c9bfece24df557954e2f
Author: Andreas Huber <andih@google.com>
Date: Mon May 2 15:58:36 2011 -0700

Support for the AVC software decoder as an OMX component.

Change-Id: I13c12df435ba4afbd968a9fc659f66b91c818bc2

commit 5bb9e616d6c8e1b13d531fe996b9a9affdfb2977
Author: Andreas Huber <andih@google.com>
Date: Fri Apr 29 12:05:37 2011 -0700

Fix Vorbis OMX decoder's component role.

Change-Id: I5e871e5e11b3f951c93590210e63fd7987c467b5

commit 089c91f2333062e196c7afd5fb0ca914878aa474
Author: Andreas Huber <andih@google.com>
Date: Fri Apr 29 12:05:18 2011 -0700

Support vorbis_decoder OMX testing.

Change-Id: I1985be178a12ae3f8768bc72067d9236238be170

commit 56e241fa36fc37219bc536b823bdc2ab82dc1fad
Author: Andreas Huber <andih@google.com>
Date: Fri Apr 29 12:01:46 2011 -0700

SoftVorbis OMX component now respects the number of valid frames per page.

Change-Id: I82a117a064d9b083fc58a54ad900a987a763ef03

commit fcd618ec520c376fdb78f4cbb44b8d9f5d213e2b
Author: Andreas Huber <andih@google.com>
Date: Fri Apr 29 10:59:38 2011 -0700

Support for the vorbis audio decoder as a soft OMX component.

Change-Id: Iaeb057e58ca306d3dce205c0445b74d5aefef492

commit d1fcc3203fc8003ad79c6e96b3a1fc4261743f16
Author: Andreas Huber <andih@google.com>
Date: Fri Apr 29 10:07:50 2011 -0700

VPX decoder now properly resizes buffers after a port settings change.

Change-Id: I110749a31b6cba087891d8e5dfe420830bdbf831

commit 35c7168243cb69849d88911144a2c7fdfed5c54e
Author: Andreas Huber <andih@google.com>
Date: Thu Apr 28 13:23:34 2011 -0700

Support for the VPX video decoder as a Software OMX component.

Change-Id: Ic345add2d6d768d4af631160153f2e9b97fcea71

commit 923b2534b4211fc5405377b5190bfa6f2dd27f32
Author: Andreas Huber <andih@google.com>
Date: Thu Apr 28 11:34:40 2011 -0700

Table-based registration of soft omx components.

Change-Id: I7f45f0fa5b3a7950776e69c66349731f7674e937

commit 04a88f3edb2266a463da9c4481b80178be460902
Author: Andreas Huber <andih@google.com>
Date: Thu Apr 28 11:22:31 2011 -0700

Apparently OMX_GetParameter is valid in any state other than OMX_StateInvalid

OMX_SetParameter is still constrained to OMX_StateLoaded or a disabled port.

Change-Id: I1032d7cf4011982d306aa369d4158a82830d26fb

commit 9d70ca68445e7c40f5c9b2d12466e468f514de88
Author: Andreas Huber <andih@google.com>
Date: Wed Apr 27 15:03:18 2011 -0700

Use the new soft OMX aac decoder for HTTP live playback.

Change-Id: Ifbcfb732a9edb855cb46b49f6d0ac942170ee28f

commit 213fe4a10ea93cce08e8622dc3908053f29878a1
Author: Andreas Huber <andih@google.com>
Date: Tue Apr 12 16:39:45 2011 -0700

Foundation for supporting software decoders as OMX components

Change-Id: I7fdab256563b35d1d090617abaea9a26b198d816

Change-Id: I83e9236beed4af985d10333c203f065df9e09a42
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
681755fc0d0797506456f46a2a10555916d6be32 21-Apr-2011 Andreas Huber <andih@google.com> Using widevine:// to stream adaptive bitrate wvm content no longer

uses stagefright's http cache but defers caching to the WVMExtractor, which
now has the responsibility of reporting buffer status/duration.

Change-Id: Ieec64a20203977fd0a61d0c6834da124de78bfa2
related-to-bug: 4390283
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
c0dfc5b02d4179769bbdd25c10d430576ec09568 10-May-2011 Andreas Huber <andih@google.com> Properly honour any pending seek request when reading the first buffer after

starting the audio player.

Change-Id: Ibedc1804a8c444e4d0f5be4eb87b22ed5d2c367d
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
7a1e3e81264189e23a1db2b174e1b5a5d4c7d1c3 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/av/media/libstagefright/AwesomePlayer.cpp
d2b0088df550e3ddfa44dbdfd1cd9a79ff80a2de 30-Apr-2011 Gloria Wang <gwang@google.com> Merge "Add setParameter/getParameter to MediaPlayer API. for bug 1982947"
7340743ce30766af6334bbd9acf813eb66dd5a60 29-Apr-2011 Gloria Wang <gwang@google.com> Add DRM errors in the DRM frameworks to MediaErrors also.
For bug 4350156.

Change-Id: Ib5711ec642178a49203a448b7f5114e675d49394
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
4f9e47f2c03ce36261c4717cd7e131d7940bb068 26-Apr-2011 Gloria Wang <gwang@google.com> Add setParameter/getParameter to MediaPlayer API.
for bug 1982947

Change-Id: If3f40e4f18cbba155af29944af38bdc627f8cd53
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
53e1c0497b720d0e4f00dd7ca61838b865d41add 13-Apr-2011 Glenn Kasten <gkasten@google.com> am 8d2e14da: am 34cd123a: am b0d6f10e: Bug 4167061 remove debugging code

* commit '8d2e14daa752d657b9747fc9734fbfd7b34c1f7a':
Bug 4167061 remove debugging code
6c00983982d167bdb348c437f0480a480f38696c 13-Apr-2011 Glenn Kasten <gkasten@google.com> Bug 4167061 remove debugging code

Change-Id: I1cb46a7bbf885c72e75d32f3f7675d90ab611e85
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
c33b033d11b781719d7f8dd2a63a826f09bb3593 12-Apr-2011 Andreas Huber <andih@google.com> Merge "Experimental support for changing the video surface/texture on an active mediaplayer"
fb50c0ba482dddfb030a2cff6874586949dc8ffe 11-Apr-2011 Glenn Kasten <gkasten@google.com> am a7e8385c: am 87ee132a: am c6c2285b: Enable HDCP debugging in Stagefright (1 of 2)

* commit 'a7e8385cb34a19e47fb67bf8f632a8b47503242d':
Enable HDCP debugging in Stagefright (1 of 2)
449d8ad81402c2758793db99850a4d390c191f4f 11-Apr-2011 Glenn Kasten <gkasten@google.com> Enable HDCP debugging in Stagefright (1 of 2)

Change-Id: Ia3ea555d5fa45547ed6bfce59f299087ced7809c
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
bd7b7177f88ae6e83bd7bb8bfd9b7018be923931 04-Apr-2011 Andreas Huber <andih@google.com> Avoid a race condition while signaling audio EOS/seek complete by acquiring the lock.

Change-Id: Idfea452ff661b264e013fe515bcd2a2762bd959c
related-to-bug: 4193552
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
dab59b5a4956b7e9b1ffc64a0676e7990579934e 01-Apr-2011 Andreas Huber <andih@google.com> Remove legacy hack to only drop frames every other late frame

Change-Id: I197e568d292341c330efb394c41aa9af0e74b081
related-to-bug: 4203195
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
d5109dc76e943d4d2f90d1681dfd728011b2173f 31-Mar-2011 Glenn Kasten <gkasten@google.com> am 69250839: am 4ed59de6: am ffa670b5: Bug 4167061

* commit '69250839bb0ae94305ee1ac9a452b98d67acc5cf':
Bug 4167061
5b3635efd12466e957a59d93a9167c9a01e9c933 31-Mar-2011 Glenn Kasten <gkasten@google.com> Bug 4167061

Change-Id: I9bf7c0f9387ad23501261b8c2d10fa6fdaba8aef
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
6511c9755c3a3360ba869772600c7aae048a7ffc 30-Mar-2011 Andreas Huber <andih@google.com> Stagefright DataSources now expose the underlying content mime type.

Use that mime type to determine if we should do upfront buffering at the start of
playback and don't for audio streams to ensure playback starts fairly instantly.

Change-Id: If21e36d1b024f0e5c723911bceadaa2e0307ab42
related-to-bug: 4090916
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
06570ecee7cab4d89030ad89307882ac1f6570d1 26-Mar-2011 Andreas Huber <andih@google.com> am e2cb08bd: am 2fee96bc: am 1457ef74: Merge "Make sure we post a video event when seeking after seeing video EOS before." into honeycomb-mr1

* commit 'e2cb08bd4c3bc7e7045e107af41f7228d780be04':
Make sure we post a video event when seeking after seeing video EOS before.
5dac87b088556b8ed7f2a4f5546d31be0bb68680 25-Mar-2011 Andreas Huber <andih@google.com> Make sure we post a video event when seeking after seeing video EOS before.

Change-Id: I513bf94c0732a85324160977ea5723d8aafd6aba
related-to-bug: 3316960
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
f490e1765c44f63bde8e8acd905f36f92a840ddf 25-Mar-2011 James Dong <jdong@google.com> am 70a5b031: am 9fb98238: am 837430dd: Merge "Switch to use SF cached source" into honeycomb-mr1

* commit '70a5b0317d5029b34be26a423c0ebeaa74b728ed':
Switch to use SF cached source
3318523222e31fb4a7fcc345ddb4ec845d30ef96 25-Mar-2011 James Dong <jdong@google.com> Switch to use SF cached source

bug - 3500025

Change-Id: I96c416d39af498f091d2d52f5923f556382a9c1f
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
a61e0f254f586d59c575e3087992889c0cf026cb 24-Mar-2011 Glenn Kasten <gkasten@google.com> am 64233b86: am 503f4daf: am 0b1b2a32: Merge "Bug 4159373 Use HDCP debug settings" into honeycomb-mr1

* commit '64233b86f3a78d2c4a21092b242ad071a6b38bd5':
Bug 4159373 Use HDCP debug settings
eabd34665adc284525fe7337ad5c56a8b92964ef 23-Mar-2011 Glenn Kasten <gkasten@google.com> Bug 4159373 Use HDCP debug settings

Change-Id: Iefc0a0d4b574ee94fbc83bf74b57c1d3465c821c
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
84b343f29063fbfa2ee61b2e3d37ba059ca507d4 22-Mar-2011 Andreas Huber <andih@google.com> Delay signaling the end of audio playback until all frames have actually played.

Change-Id: I1fa07358a885a818fd0a5d7da425740f86095e10
related-to-bug: 3404000
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
9cbb1a6f99003a9cd8765e11b9d7380e67839f82 18-Mar-2011 James Dong <jdong@google.com> Handle display dimension scaling event due to SAR embedded in AVC videos

bug - 3379293

Change-Id: I03cb548e61d31bc0a2fb40916d207aaf840fafce
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
512895089f2035bc86d3f502255199809aca721b 16-Mar-2011 Andreas Huber <andih@google.com> Don't send the seek-complete notification twice.

Change-Id: Ie994de2d57e20dde12b8d59af4968d03569c7efa
related-to-bug: 3489432
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
ae03031ab6af9505335e888b709ee661fe04ed83 16-Mar-2011 Andreas Huber <andih@google.com> DO NOT MERGE: Fix a race condition when playing an audio-only stream and seeking before starting.

Change-Id: I70dfdfb7c27e3c713079c359ef89a570eb600dc7
related-to-bug: 4039068
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
b874cd085bba63528c570f74c493bfea835190d9 16-Mar-2011 Andreas Huber <andih@google.com> Fix a race condition when playing an audio-only stream and seeking before starting.

Change-Id: Id3883293caf316ce492f5eb16428c15ced82da38
related-to-bug: 4039068
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
150694cda0842d38a9358fe8d1fcb4fb4a76599e 14-Mar-2011 Andreas Huber <andih@google.com> Experimental support for changing the video surface/texture on an active mediaplayer

Change-Id: Ia7a5126e9311dc1c721ab2aef54bd698151c88cd
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
884d064fbf7f45f8089abd7d87bdca5d325cc2ab 11-Mar-2011 Glenn Kasten <gkasten@google.com> am 055066e1: am 92f2f3ff: Merge "Bug 3012968 DRM output control" into honeycomb-mr1

* commit '055066e1e77d944383360d50057f5b8187f23c0b':
Bug 3012968 DRM output control
2eb62955eb84b97695e8a7e56e14310cbb86412b 28-Jan-2011 Glenn Kasten <gkasten@google.com> Bug 3012968 DRM output control

Modifies Stagefright to verify that there is a hardware-protected path
to video sink for DRM content.

Change-Id: I18b8741390e803a05a88c7f180b860a24ba88a10
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
b5ce361d19e69fe156f7188c9ee0f4734b259874 25-Feb-2011 Gloria Wang <gwang@google.com> Fix for bug 3477330
This patch fixs a crash bug caused by using a NULL DecryptHandle pointer.
Fix by using sp<DecryptHandle> instead.

Change-Id: Icbd59858385e8256125a615a3c82656b25319d44
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
1156dc913a5ba7b2bc86489468d4914430f03d14 09-Mar-2011 Andreas Huber <andih@google.com> An HTTP datasource for stagefright using the chromium code.

Use of this new datasource is now the default unless overwritten by

adb shell setprop media.stagefright.use-chromium false

Change-Id: I156a8eb9a1fff1cb537b4aec6cf3e8e6052be81e
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
18eb42eca6949158e630eae38a70db8f837c17c8 25-Feb-2011 Andreas Huber <andih@google.com> Merge "Alternate patch for late video issue: seek only the video ahead to the next"
827b55c5f3409b68ef57816208220d8804693e44 24-Feb-2011 Andreas Huber <andih@google.com> Merge "Suppress the logging of URLs when in incognito mode."
7314fa17093d514199fedcb55ac41136a1b31cb3 24-Feb-2011 Andreas Huber <andih@google.com> Suppress the logging of URLs when in incognito mode.

Change-Id: Ib951b495eae15669e160ef54686eab0eeb9b366a
related-to-bug: 3336575
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
64bb6983690bf994d904591145a3cdd6373bdbe6 24-Feb-2011 Andreas Huber <andih@google.com> Alternate patch for late video issue: seek only the video ahead to the next

syncframe after the current audio media position, leave audio untouched.

Change-Id: Ia9fa8e205467e5460c8219afd396bddd09fcfb46
related-to-bug: 3375737
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
1173118eace0e9e347cb007f0da817cee87579ed 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/av/media/libstagefright/AwesomePlayer.cpp
7cf180c9bff69e5cc4a2f4e53b432db45ebbebab 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/av/media/libstagefright/AwesomePlayer.cpp
8cb0c4168bf4b678e4a6edfcf409247016be20d5 17-Feb-2011 Andreas Huber <andih@google.com> Experimental support for https transfers in stagefright.

Change-Id: If1bd0f265dda136c7c34b53317f64383023b53a3
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
ed8d14f6a934072cd012992c4ef16990a54baa9a 16-Feb-2011 Andreas Huber <andih@google.com> Remove legacy, AwesomePlayer-based http live implementation.

Change-Id: I455d0faa5612dcd4d2bb6f2b3c7b64a1caaabf69
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
43270a821f418f57140220b4c78c559d880850ef 16-Feb-2011 Andreas Huber <andih@google.com> Revert "Make AwesomePlayer's reset process more verbose to track down ANRs (yet again)"

This reverts commit e7c83d4a711241923854d6bbd5de0e24f9192f93.

Change-Id: I5151c7c72d79154528c55aa01bf006c8e38e7af7
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
f1958f9442bc937e1f8c8d9175901500b944b021 14-Feb-2011 Andreas Huber <andih@google.com> Enable cancelling the rtsp connection process early.

Change-Id: Ie2059c54541ad8c675944d71b39c772b0f6f04c8
related-to-bug: 3452699
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
f03034408506051f2f836e59305fcd5f662bf19a 11-Feb-2011 Andreas Huber <andih@google.com> Start playing (and decoding) audio only after the first video frame has been decoded.

if there's both audio and video content. This gives the video decoder an opportunity
to fill its internal buffer queue at the start of playback.

Change-Id: Ib2c95753b430e4e47207953b913b607024a328d7
related-to-bug: 3431702
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
100a4408968b90e314526185d572c72ea4cc784a 08-Feb-2011 Andreas Huber <andih@google.com> Change timestamp handling in RTSP, remove unused, experimental, gtalk support

related-to-bug: 3216447

NTP timestamp handling is now done at a higher layer than before.

Change-Id: I9fb23f1335110ec59e534f9aa0fe6f6a6406dd52
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
8f64134f749e4f7861a08a3063450fc714c4651d 08-Feb-2011 Gloria Wang <gwang@google.com> Add more check before using the DRM manager client.

Change-Id: I7369dcd6b6abd1945430373200fd5353bca70652
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
b93d55d9f6e154629d47270970e0a0ace5a1b0a0 08-Feb-2011 Gloria Wang <gwang@google.com> Merge "- Do not use global DrmManagerClient - Release the DrmManagerClient and DecryptHandle in DataSource Fix for bug 3429811"
889b340ec736a9d3e3e690256d305cc8740f0c4b 07-Feb-2011 Gloria Wang <gwang@google.com> - Do not use global DrmManagerClient
- Release the DrmManagerClient and DecryptHandle in DataSource
Fix for bug 3429811

Change-Id: I549f72b75225751877eb0e630ce8098f8ec6316f
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
2b1222f8938356669672f35e0e53e176c78c40ef 07-Feb-2011 Andreas Huber <andih@google.com> Display a single (still-)frame of video after seeking while paused.

Change-Id: Ia78bf29ba6d649043e70c49913725cecdf918c03
related-to-bug: 3392259
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
553ab646159d94747dab5c3893ea51c8ec2463d9 04-Feb-2011 Andreas Huber <andih@google.com> Make AwesomePlayer's reset process more verbose to track down ANRs (yet again)

Change-Id: Ie1d853c31ad75ec5b12303c1131c9a74eb8cfc9f
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
db207461a16ebcab38b52906ef88228393efca41 28-Jan-2011 Andreas Huber <andih@google.com> Revert "Make AwesomePlayer's reset process more verbose to track down ANRs (again)"

This reverts commit aac2e9e1566a3bb0ef811ebd3a56b538324c95c1.

Change-Id: Ic84dfa829981fdc1a1330ccfe6b9dccf64a80719
related-to-bug: 3392386
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
e20e15bcfd0317f63ecf76e6b8e9fbd9196fde0b 24-Jan-2011 Andreas Huber <andih@google.com> Make AwesomePlayer's reset process more verbose to track down ANRs (again)

Change-Id: I0d66994cc4295fd5ceeaaf151ce913ed0dd995f9
related-to-bug: 3362836
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
8aded52c4d6962da5357d4bfc0bca4be3aa331ef 21-Jan-2011 Carl Shapiro <cshapiro@google.com> Revert "Make AwesomePlayer's reset process more verbose to track down ANRs."

This reverts commit 90c656574175bd54ed8d258f406f158177e5e91c.

Bug: 3378444
Change-Id: Id845bc0bc213f18c73fec12e6a2084cb2075c2d9
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
ac05c317cd818701535c5d72ce90da98c4bae75b 20-Jan-2011 Andreas Huber <andih@google.com> Prefill the cache before trying to instantiate the media extractor.

The latter is an operation that otherwise could block on the datasource
for a significant amount of time. During that time we'd be unable to
abort the preparation phase without this prefill.

Change-Id: Ia42496d88a11314386ea8797d665bf4e94871e30
related-to-bug: 3362836
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
b45c01c2b8588ff431b511151666a55a39f0a6ae 16-Jan-2011 James Dong <jdong@google.com> Fix the presentation video resolution when it is different from the actual image resolution of the video.

bug - 3352413

Change-Id: I8f08f3896e9fb90f09119dccdb88b82af60f79f2
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
1bd233ce7e1aa7730bc18d46ffd57791391738cd 18-Jan-2011 Bryan Mawhinney <bryanmawhinney@google.com> Don't report 100% buffered when the stream ends prematurely.

Change-Id: Ia4e80d02f28104427a3309e3d5b155faa5702757
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
145e68fc778275963189b02a1adcbe27cce4d769 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/av/media/libstagefright/AwesomePlayer.cpp
aee6c07b3572bf2510cd9e7d29c454fcfedde31d 06-Jan-2011 pmehendale <pmehendale@nvidia.com> Awesomeplayer : Frame dropping logic change

Changed late frame drop policy, now we are dropping only 1 in 8,
late (> 40ms) frames. Dropping every late frame result in lot of noticible
pauses, usually with peaky bitrate activity these pauses become more prominant.
Dropping few frames is still required to allow overall playback chain,
to regain the performance.
Experimentally decided to drop Max one late frame in 8.

Change-Id: If20848d619a76aaf8179b1e5c3155610e3bc85fd
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
65a170e3ac593a29abd0c76e9aa531fabad7f56d 04-Jan-2011 Andreas Huber <andih@google.com> Make AwesomePlayer's reset process more verbose to track down ANRs.

Change-Id: I8c9fa872263796ba61b3e8de6bc05d50f57833f5
related-to-bug: 3302399
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
85704836f33a199d7e442a23db82abbd5620d35d 16-Dec-2010 Andreas Huber <andih@google.com> Remove now obsolete implementation of streaming from AwesomePlayer.

Change-Id: If62bedbf74c8e987d6651604d7bebc9da381e86a
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
14acc736e336cbd6026df781d4f411e908831815 06-Dec-2010 Andreas Huber <andih@google.com> API Support for both synchronous and queued commands, optionally associated metadata.

Change-Id: Idb90d64cb638942210c5822b3cba2f05b087d601
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
a44153c1a57202fb538659eb50706e60454d6273 04-Dec-2010 Andreas Huber <andih@google.com> Squashed commit of the following:

commit 9254c845d7c82976fd4b8be406ce4b17eeb0e119
Author: Andreas Huber <andih@google.com>
Date: Fri Dec 3 15:26:12 2010 -0800

Remove obsolete code from the cached data source.

Change-Id: I794b986ac8977cbc834dff189221a636ba564e36

commit 2ee33711064c58c53ba65ed9e63dd4b01ec2380e
Author: Andreas Huber <andih@google.com>
Date: Fri Dec 3 15:23:13 2010 -0800

LiveSource is dead, long live LiveSession.

Change-Id: Ibcd0731ecf9c94f0b3e5db3d53d012d9da2a1c66

commit 9eabb2c3cd8571ab859bdeae0aa7f655c414d8fa
Author: Andreas Huber <andih@google.com>
Date: Fri Dec 3 12:49:31 2010 -0800

Respect explicitly signalled discontinuities.

Change-Id: I3c0c16a2de7a99742d25db7d1b2ff0258de52271

commit 7f7f7b6b906b6ece6e4d43af7fd5f494e805c5e5
Author: Andreas Huber <andih@google.com>
Date: Fri Dec 3 11:45:57 2010 -0800

Better protection against syncword emulation in AAC ADTS content.

Change-Id: I867e80a4556dd46d24ab3e781177c248a5221719

commit fe765766582efcc350aed01135ea603576adccf6
Author: Andreas Huber <andih@google.com>
Date: Fri Dec 3 09:15:59 2010 -0800

New implementation of http live driving code.

Change-Id: I31ddf3d6a0d5929b121be704a2b9c3d6775f7737

Change-Id: Id8d1829c8fcb173756965013f848c1d426ef1048
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
decd96988e495133e4a1728f612d4c9fdb4d218e 02-Dec-2010 Andreas Huber <andih@google.com> Squashed commit of the following:

commit de99ae4a523ff5ec40b47071f22fdde1a4b2a0bf
Author: Andreas Huber <andih@google.com>
Date: Thu Dec 2 13:18:40 2010 -0800

Scan for sync words to find H.264 frame/AAC frame boundaries if PES packets do not start with them.

Change-Id: If2861982ecb3006fac806105dbfcd1d43c2a4205

commit be23791ff0d037aa7073589cdc8bfc362e1c281d
Author: Andreas Huber <andih@google.com>
Date: Thu Dec 2 13:12:39 2010 -0800

Properly expand relative key URLs and strip surrounding quotes in the M3UParser.

Change-Id: I013a6d83a64f095d090e5c7730298bdac7d03ab4

commit 0f1d8f65effe0cc42a265dd91d8b91dce6534325
Author: Andreas Huber <andih@google.com>
Date: Thu Dec 2 13:11:27 2010 -0800

Ugly hack that assumes that any http url containing "m3u8" refers to an httplive stream.

Change-Id: I05d7bbc5dab0f9822558122b5b9dc2a109ed8518

commit 255f0d5cdb1072ecd66b47ee614bf574f1388e5a
Author: Andreas Huber <andih@google.com>
Date: Thu Dec 2 13:10:56 2010 -0800

Add one more mimetype "application/x-mpegurl" to identify httplive playlists.

Change-Id: I63fd3b8c2539c9ee23c077df533157af78b10863

Change-Id: I135687383009dbe32d690c9ba8dea60159adc616
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
e2b1028852120bcfded33b8f06f66b780437fe92 23-Nov-2010 Andreas Huber <andih@google.com> Support streaming data across binder boundaries.

Change-Id: Ifbac61406dcb81343765f99ccba08bd90f9274cc
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
31d7235c79667f88002d9ad87207099ed438a197 23-Nov-2010 Gloria Wang <gwang@google.com> am 3e18dfab: am 4da48ec8: Merge "Notify the playback status to DRM agents before the playback starts"

* commit '3e18dfab3417e139c7ec3896cea9e303fdc8fa63':
Notify the playback status to DRM agents before the playback starts
e81e8153c85fa0b0aebae686f6ba51ed2c3a2d11 23-Nov-2010 Gloria Wang <gwang@google.com> am 4da48ec8: Merge "Notify the playback status to DRM agents before the playback starts"

* commit '4da48ec88338af2df6f9abba850fb4c65918bb82':
Notify the playback status to DRM agents before the playback starts
f5ab57c2d5e02af7483c94eddb177e4f5c9e9892 22-Nov-2010 Andreas Huber <andih@google.com> Squashed commit of the following:

commit 0870f7bdd10a7cd36087d723d1957d8e1b967ca7
Author: Andreas Huber <andih@google.com>
Date: Mon Nov 22 12:57:04 2010 -0800

set_surface_crop doesn't seem to work right yet, stop using it in the SoftwareRenderer.

Change-Id: If0a24f78b7810a6cecaa82eb4f23d0f90c22cc42

commit 4767b52bee3a54ae117a8708d6832276a44e6a6a
Author: Andreas Huber <andih@google.com>
Date: Mon Nov 22 11:14:57 2010 -0800

info->mMediaBuffer may still be NULL at this point...

Change-Id: I25a71569015b1bb87f1ea7efff7588958774426f

commit 0cef79874e1f1ddb10b7402177a87d3cffc7de92
Author: Andreas Huber <andih@google.com>
Date: Mon Nov 22 10:55:12 2010 -0800

QCOM's YVU420 color format conversion has now been tested.

Change-Id: I7fef4b642a928af15d42f006f7cdc107d5ff1d67

commit 84fe05a6c969ede0ce8a85a530e110afca07c7a7
Author: Andreas Huber <andih@google.com>
Date: Mon Nov 22 09:59:50 2010 -0800

Removed remaining traces of suspend/resume. Proper reporting of video dimensions based on cropping rectangle.

Change-Id: Ib238b80cbc1f19e7d312f2422eb5e9ab6b06b1bc

commit 50970cdc837c5c498bcf0cb61b436196ca9e2ef7
Author: Andreas Huber <andih@google.com>
Date: Fri Nov 19 16:11:06 2010 -0800

Revamped Software Renderer respects the crop rectangle.

Removed obsolete ADRENO support code.

Change-Id: I984cbc8a99c4d97e09e7d1b1292099c88b9ae535

commit 8abbc6a5608bff650f968540f24a2eab75f254ed
Author: Andreas Huber <andih@google.com>
Date: Fri Nov 19 16:10:41 2010 -0800

The metadata retriever now respects the crop rectangle while capturing a video frame.

Change-Id: Id3377176060086d16717f62c77ce26fabe899050

commit 2d42e4466609d304e88bd2cdd6eb7b297340cc21
Author: Andreas Huber <andih@google.com>
Date: Fri Nov 19 16:09:50 2010 -0800

Changed ColorConverter APIs to be more general.

Clients can now refer to crop rectangles in both source and destination.

Change-Id: Ief151d736818396d0389ec04e7df5650e3ad7c04

commit 273184303d54a54febd3e9c3dd4df30507ea78b5
Author: Andreas Huber <andih@google.com>
Date: Fri Nov 19 15:04:06 2010 -0800

The stagefright commandline tool now writes the extracted video frame to /sdcard/out.jpg

Change-Id: Ieb2ab3fda7a7cd9294beccb8db0eed75096eeef4

commit 2d43390328cadf4ba94c1c3c02e4fb30baa29690
Author: Andreas Huber <andih@google.com>
Date: Fri Nov 19 14:36:55 2010 -0800

The AVC software decoder now properly advertises the cropping rectangle.

Change-Id: Idb7a8a7e2fde5740f0fc34b7e8c92eca2577104b

commit 9a7ed23c2fac8ce19dce7a34a603acee945a89f6
Author: Andreas Huber <andih@google.com>
Date: Fri Nov 19 13:40:39 2010 -0800

OMXCodec now signals a format change if the cropping rectangle changes.

...and puts the cropping info into its output format.

Change-Id: I3ffbd8e877ba286fe06a82c536ef20d92548d2e2

commit efe0323947029df1c502599ccc288c8d676dfd31
Author: Andreas Huber <andih@google.com>
Date: Fri Nov 19 11:29:39 2010 -0800

Stagefright's MetaData object now supports rectangle items.

Change-Id: I5667bb5ee6622c76104b99fb57f60abb802a8504

Change-Id: I27cb78f2c5e0353f95fdfc5cb53991949ed75b70
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
c130b5bf563d049bd391ccd96985ac278ef8ff8d 05-Nov-2010 Gloria Wang <gwang@google.com> Notify the playback status to DRM agents before the playback starts

Change-Id: I288eae2d35ab175c720bb0dd9f69e3e08ada9b8a
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
c7fc37a3dab9bd1f96713649f351b5990e6316ff 16-Nov-2010 James Dong <jdong@google.com> 64-bit file size/offset support for media framework

Change-Id: I3452bc2c0f1d990cc67285df2fce1f9f86ff8e10
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
ba529e486dde15fe75ea1b48570f9d60a4cf3c48 17-Nov-2010 Andreas Huber <andih@google.com> Support post-decode video rotation.

Change-Id: I9ac90871269c5e132e98a9bf3ad8cae00f329f17
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
0a5ca668c6f7d45706e9aec4a1dfec0aacc6d233 16-Nov-2010 Andreas Huber <andih@google.com> Remove all traces of legacy renderer support in stagefright.

Change-Id: I17b8e0dbf53fca37c96830c41131b4bc0c24ca6d
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
e332a9181cf6a3155ed1a0fd2afc212ccb1f2753 15-Nov-2010 Andreas Huber <andih@google.com> More HTTP live support, AES encryption etc.

Change-Id: Ia5088042dd0a2181cb73cf8c7a2ff81e34b3064c
related-to-bug: 2368598
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
34ef0f32c8fc0186236a27e07405328cc1f7c56d 12-Nov-2010 Andreas Huber <andih@google.com> Make sure the prefetcher is actively fetching data if we pause playback due to cache underrun.

Change-Id: Id5f4b7a0387137380dcd39995390a8e0d084b4b3

Conflicts:

media/libstagefright/AwesomePlayer.cpp
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
3baff73198ce852fa60080bd32703028298b4d65 08-Nov-2010 Andreas Huber <andih@google.com> resolved conflicts for merge of 31dc911a to gingerbread-plus-aosp

Change-Id: I2f51b2120b3c552566d91a7dc498a5e8b130205f
85d9b4225d024bb0d602b48bd6d5219cbebd7b8e 04-Nov-2010 Andreas Huber <andih@google.com> Support post-decode video rotation.

Change-Id: Ia371316e73a57e44610de86adce3eaa560afbf84
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
b371426ce4cf2fa6d8c3d1903b61322feb165d35 01-Nov-2010 Gloria Wang <gwang@google.com> Add support for WV DRM

Change-Id: I0408c5e0a488f112a84337b21b0cd4613a4da461
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
bf3122eed31cd24acdf5cfd25541db0beb77e6f0 03-Nov-2010 Gloria Wang <gwang@google.com> am cf393faa: Merge "resolved conflicts for merge of c1c45a4d to gingerbread-plus-aosp" into gingerbread-plus-aosp

* commit 'cf393faaa871333496a63c13196fdbc0f2bd9118':
- Move the business rule management down to DRM agents. - Do not register DRM sniffer because drmserver is not enabled.
606649635ecb5a7f1378f2538a25fee64214ff42 02-Nov-2010 Gloria Wang <gwang@google.com> resolved conflicts for merge of c1c45a4d to gingerbread-plus-aosp

Change-Id: I5411eaa0426cf208c6db3570f707d1b6b4baf455
55426ce7eded04c9993149edd86f861cfccb4d19 29-Oct-2010 Gloria Wang <gwang@google.com> - Move the business rule management down to DRM agents.
- Do not register DRM sniffer because drmserver is not enabled.

Change-Id: I7a1052fe406f5087051a482b7e85a458f3ec7b8f
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
02a1db7dc1de2f2df306ec10bab992bc8bbaaca8 30-Oct-2010 Andreas Huber <andih@google.com> After seeking display the first new video frame right away without concern for A/V sync. This looks much more responsive to the user.

related-to-bug: 3152363
Change-Id: Ia097bf61ca05e01365357cb23ff83e2ad417f3fd
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
a89082944308805b0def7de87c67e370e74b8789 29-Oct-2010 Gloria Wang <gwang@google.com> - register DRM sniffer only when drmserver is up
- notify DRM agents the status after seeking

Change-Id: Id77977fc7548970559dc8974461b0bd1d2aa9514
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
aceaaf303422bbe3a7b8d9cdb96495dbf8109c23 26-Oct-2010 Gloria Wang <gwang@google.com> resolved conflicts for merge of 965f960e to master

Change-Id: I63cec8ffb3593216da1de03428134d89e75b9338
a9741a9232c81eaf59179acef91f5be46c42264e 26-Oct-2010 Gloria Wang <gwang@google.com> resolved conflicts for merge of 9084631d to gingerbread-plus-aosp

Change-Id: Ie2b675d50bfca3f33aee80f1a67c9f03d1f97472
dcd25efb46c41c8d24a0a9cf61fb57f84149709e 22-Jun-2010 Gloria Wang <gwang@google.com> DRM framework support:
- add a sniffer for DRM files
- add DRMSource and DRMExtractor for es_based DRM
- add pread in FileSource.cpp for container_based DRM
- add native DRM framework API calls in the player for
DRM audio/video playback

Change-Id: I4b9ef19165c9b4f44ff40eeededb9a665e78a90f
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
f83dd80384f70da1f6d36d60e831439ff7739ad7 21-Oct-2010 Jamie Gennis <jgennis@google.com> Fix a copy & paste logging error.

This change corrects the name of a variable used in a logging macro,
allowing AwesomePlayer.cpp to build with verbose logging enabled.

Change-Id: Ie23fe0fb17f08ac43348cee3209bfe68088e856e
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
6a05c9e912aeb8bfe1ef99516def91a177a481b6 19-Oct-2010 Andreas Huber <andih@google.com> If we basically finished the preparation phase and are only buffering enough data to start playback, cancel this early on reset().

Change-Id: I71a59d5e019e7b9ec3d9375d6231cc301ad3999b
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
6a9da9fc558263548ebfbae2cbf177eb7454a41b 07-Oct-2010 Jamie Gennis <jgennis@google.com> Add decode-to-ANativeWindow support to Stagefright.

This change adds support to Stagefright for doing OMX video decoding directly
into buffers dequeued from an ANativeWindow. It does this by registering the
dequeued buffers with the OMX component using an Android-specific OMX
extension, and then exchanging buffers between the OMX component and the
ANativeWindow.

Change-Id: Ida66f836503255a68d378c6903d96dfe9747ce87
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
74e1e56dfa15be0ffea82c60d81846c4f6615421 19-Oct-2010 Andreas Huber <andih@google.com> am 2d00c605: am 52bea277: Merge "If we encounter video stream EOS while seeking we may still need to seek audio." into gingerbread

Merge commit '2d00c6050977f3e03665fbfef93f4f6aed041a63'

* commit '2d00c6050977f3e03665fbfef93f4f6aed041a63':
If we encounter video stream EOS while seeking we may still need to seek audio.
4769cc92740e3ab58e9263d42553c12bbf79e3be 19-Oct-2010 Andreas Huber <andih@google.com> If we encounter video stream EOS while seeking we may still need to seek audio.

Change-Id: Ie260942247b6810ca94e86328a3725d75b12181d
related-to-bug: 3108724
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
6fed68ded4ab2c042b7ca14409a24aee916313d5 15-Oct-2010 Andreas Huber <andih@google.com> am bb5d7c21: am 5f423917: Merge "Attempt to derive the avg. bitrate of the entire stream from metadata." into gingerbread

Merge commit 'bb5d7c21615128630fc9d08274bb14ca01e2124b'

* commit 'bb5d7c21615128630fc9d08274bb14ca01e2124b':
Attempt to derive the avg. bitrate of the entire stream from metadata.
d6119356f45c9c57cac812357d969ecc3001087e 15-Oct-2010 Andreas Huber <andih@google.com> am 28b93967: am 165c6579: Merge "HTTP Live content that are tagged as complete are now seekable." into gingerbread

Merge commit '28b93967d0e702304c7edec854a29d5ab88bfce0'

* commit '28b93967d0e702304c7edec854a29d5ab88bfce0':
HTTP Live content that are tagged as complete are now seekable.
7fbdb0903dfbf70b314a74e64e28fb880cdb9247 13-Oct-2010 Andreas Huber <andih@google.com> Attempt to derive the avg. bitrate of the entire stream from metadata.

related-to-bug: 3093224
Change-Id: I4726b023373e04468cc12fd64f7fe6ee923add95
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
bff07d0b22a5ee2d9f044f6cb5e4be1532017ab0 12-Oct-2010 Andreas Huber <andih@google.com> HTTP Live content that are tagged as complete are now seekable.

Change-Id: I9d0d2f009f883e5baf3e9de8c5c0aa05760e4bde
related-to-bug: 2368598
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
250e051e564e3b6f5a88314379d5e145a2b5615f 11-Oct-2010 Andreas Huber <andih@google.com> am cac43e8a: am beffefa2: Merge "RTSP seeking is now asynchronous, MediaPlayer is not notified that the seek is complete until it actually is. Ignore seek requests on live streams." into gingerbread

Merge commit 'cac43e8a2ce59c1151d5a2028330b2a769591d22'

* commit 'cac43e8a2ce59c1151d5a2028330b2a769591d22':
RTSP seeking is now asynchronous, MediaPlayer is not notified that the seek is complete until it actually is. Ignore seek requests on live streams.
9086ce254ac8769dbe90afd5146fce509a86418f 11-Oct-2010 Andreas Huber <andih@google.com> am 2b4f1f4c: am f72dd019: Merge "Disable 10secs forward/backward seeking for rtsp as seek is a very expensive operation there. Decouple the 10sec forward/backward button functionality from seekbar functionality." into gingerbread

Merge commit '2b4f1f4cb814f7a7df8d2cb9fcb5210bfe7999c7'

* commit '2b4f1f4cb814f7a7df8d2cb9fcb5210bfe7999c7':
Disable 10secs forward/backward seeking for rtsp as seek is a very expensive operation there. Decouple the 10sec forward/backward button functionality from seekbar functionality.
0e4d896cb9ab813131c45b3b1fcd4cc66d341468 10-Oct-2010 Andreas Huber <andih@google.com> am bb708373: am 949f7d90: Merge "Work to support switching transport streams mid-stream and signalling discontinuities to the decoder." into gingerbread

Merge commit 'bb70837397e3fb437b7b4443b37d7a83c11e6e43'

* commit 'bb70837397e3fb437b7b4443b37d7a83c11e6e43':
Work to support switching transport streams mid-stream and signalling discontinuities to the decoder.
79e0ac144ca9bb771e2c6b1954c882da12a4bea8 10-Oct-2010 Andreas Huber <andih@google.com> am 45bd1159: am 02654f01: Merge "On this particular device the hardware video decoder spits out buffers that don\'t actually contain our video data, so we cannot use them to restore the video frame after suspend/resume." into gingerbread

Merge commit '45bd1159fa34b51ba077e0cde760d171ca092552'

* commit '45bd1159fa34b51ba077e0cde760d171ca092552':
On this particular device the hardware video decoder spits out buffers that don't actually contain our video data, so we cannot use them to restore the video frame after suspend/resume.
0dcd837af4169bdb6fb2a0c384722dc4f57433c6 09-Oct-2010 Andreas Huber <andih@google.com> RTSP seeking is now asynchronous, MediaPlayer is not notified that the seek is complete until it actually is. Ignore seek requests on live streams.

Change-Id: Ie61230cd60dd6c682baf72529100369ad6291189
related-to-bug: 3073955
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
70f521de2675ce6eedf4b22beed94ea1289b0f38 08-Oct-2010 Andreas Huber <andih@google.com> Disable 10secs forward/backward seeking for rtsp as seek is a very expensive operation there. Decouple the 10sec forward/backward button functionality from seekbar functionality.

Change-Id: I016e79b688774f8ee91ac53216197b5fb9cb41b2
related-to-bug: 3073955
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
2eb16c2250c57a8009ab58e9aeb1606ab62bbbbc 07-Oct-2010 Andreas Huber <andih@google.com> am 56ee1080: am 17bc4f65: Merge "Make sure to call AudioTrack::stop() instead of AudioTrack::pause() after submitting all samples to AudioTrack to make sure those remaining samples are actually played out." into gingerbread

Merge commit '56ee1080f004110bff622e5b60c243d9cabfe120'

* commit '56ee1080f004110bff622e5b60c243d9cabfe120':
Make sure to call AudioTrack::stop() instead of AudioTrack::pause() after submitting all samples to AudioTrack to make sure those remaining samples are actually played out.
2a4d22d79e927f2245537921e10fc5fda1c47a29 08-Sep-2010 Andreas Huber <andih@google.com> Work to support switching transport streams mid-stream and signalling discontinuities to the decoder.

Change-Id: I7150e5e7342e1117c524856b204aadcb763e06ed
related-to-bug: 2368598
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
2b82e9652ba049e754c2cc74e381282f231d5fbf 07-Oct-2010 Andreas Huber <andih@google.com> On this particular device the hardware video decoder spits out buffers that don't actually contain our video data, so we cannot use them to restore the video frame after suspend/resume.

Change-Id: I1b8fe68c1766299844fe84ebbff49cb8b3e4cc7c
related-to-bug: 3070094
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
b2e3954c94717e43b3dc9b880564f166cfbbc0a2 05-Oct-2010 Andreas Huber <andih@google.com> Make sure to call AudioTrack::stop() instead of AudioTrack::pause() after submitting all samples to AudioTrack to make sure those remaining samples are actually played out.

Change-Id: Id574a0203efcb5e565f1b0fe77869fc33b9a9d56
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
05425bc043f6dc45cc093065d5270b70100681b5 04-Oct-2010 Andreas Huber <andih@google.com> am dfd03fe9: am aa1a694d: Merge "Make sure to finish the preparation phase even EOS occurs before we consider the cache to be completely filled up." into gingerbread

Merge commit 'dfd03fe99336792b6dae6c4c9fd5f5ba157e054c'

* commit 'dfd03fe99336792b6dae6c4c9fd5f5ba157e054c':
Make sure to finish the preparation phase even EOS occurs before we consider the cache to be completely filled up.
83977eb230d829cfe520f55d7977037a904ce548 04-Oct-2010 Andreas Huber <andih@google.com> Make sure to finish the preparation phase even EOS occurs before we consider the cache to be completely filled up.

Change-Id: I29143e357fb6ea7b860636100e010f2ea7436798
related-to-bug: 3037389
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
0074d69add482a351b4e0004d62b1cb8ed475505 04-Oct-2010 Andreas Huber <andih@google.com> am bb506dab: am 7fa69374: Merge "Don\'t retrieve metadata unless necessary for ogg-vorbis ringtone auto-looping." into gingerbread

Merge commit 'bb506dab1ff10e6939fcd0457571e0b46793dd80'

* commit 'bb506dab1ff10e6939fcd0457571e0b46793dd80':
Don't retrieve metadata unless necessary for ogg-vorbis ringtone auto-looping.
6954535ba64374e4e941cd83019a7af53edfb098 04-Oct-2010 Andreas Huber <andih@google.com> Don't retrieve metadata unless necessary for ogg-vorbis ringtone auto-looping.

Change-Id: Iaf5880bb3376f9cbf22aefe198878eaf6f3f08c7
related-to-bug: 3037389
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
fa1dc774ac8b929666519c57560bf2ce6d422e0f 01-Oct-2010 Andreas Huber <andih@google.com> am d6d5cfb9: am 469b8033: Merge "Remove development-only code." into gingerbread

Merge commit 'd6d5cfb91469d4f060db7cfccfd883903ce95f16'

* commit 'd6d5cfb91469d4f060db7cfccfd883903ce95f16':
Remove development-only code.
969247b7ab387743035dece47356678c8aec2ac4 01-Oct-2010 Andreas Huber <andih@google.com> am 14401bf7: am d1398db3: Merge "Squashed commit of the following:" into gingerbread

Merge commit '14401bf7bca34c692f248406c78bd8b49783217a'

* commit '14401bf7bca34c692f248406c78bd8b49783217a':
Squashed commit of the following:
caf5a483b16c2d123eddcf28241ad71131568033 01-Oct-2010 Andreas Huber <andih@google.com> Remove development-only code.

Change-Id: Ic2ca0efb631eb779ca157fb01b02aa19a1222c06
related-to-bug: 2368598
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
6a63a939601645404fd98f58c19cc38ca818d99e 01-Oct-2010 Andreas Huber <andih@google.com> Squashed commit of the following:

commit 46744c7697f29aec71aed8de3c95ce035c284d97
Author: Andreas Huber <andih@google.com>
Date: Thu Sep 30 16:44:57 2010 -0700

better separation of access units

Change-Id: I5a9e2138aed341f0bcf22cfe368a15ca5ea5a73c

commit d34952ac0feb1ae722ff65824d7353335502219b
Author: Andreas Huber <andih@google.com>
Date: Thu Sep 30 15:35:01 2010 -0700

Support for ES packets that do not start on PES packet boundaries.

Change-Id: I2cf012833948eddfb20b16a1901206cf22ce71e4
related-to-bug: 2368598

Change-Id: Ib9329bd6bb7149b5a6e2483788a96b1b158952fc
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
fb9b87b6c22d940e5e7cb4b5e7cfae99015a0131 28-Sep-2010 Andreas Huber <andih@google.com> am d6c30e8c: am be045061: Merge "Instead of constantly polling the AudioPlayer to see if it reached EOS or finished seeking, initiate the notification from the AudioPlayer when the event happens." into gingerbread

Merge commit 'd6c30e8c1521bc584f33500b8ee897dafdfec023'

* commit 'd6c30e8c1521bc584f33500b8ee897dafdfec023':
Instead of constantly polling the AudioPlayer to see if it reached EOS or finished seeking, initiate the notification from the AudioPlayer when the event happens.
ed54ad0f8619ae416b0968ade6248894cbfc4dba 28-Sep-2010 Andreas Huber <andih@google.com> Instead of constantly polling the AudioPlayer to see if it reached EOS or finished seeking, initiate the notification from the AudioPlayer when the event happens.

Change-Id: I43875b6adaf96d4e982ef3dfc3d6c8f7034ac51d
related-to-bug: 3036592
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
49ce029a6b62681c576a51f963d734eccd4eaccd 03-Sep-2010 Andreas Huber <andih@google.com> am 8e11c822: am 9fee0b2a: Ogg files can be tagged to be automatically looping, this setting always overrides the MediaPlayer\'s setLooping setting.

Merge commit '8e11c82247151085fa165c76bfbc157bc6091ca4'

* commit '8e11c82247151085fa165c76bfbc157bc6091ca4':
Ogg files can be tagged to be automatically looping, this setting always overrides the MediaPlayer's setLooping setting.
8ae49d87b98d57d6758b0c51b95e28a6581a79f1 03-Sep-2010 Andreas Huber <andih@google.com> Ogg files can be tagged to be automatically looping, this setting always overrides the MediaPlayer's setLooping setting.

Change-Id: Ifb564c6cdf6137eac14869f9ca7d471f05a5556a
related-to-bug: 2974691
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
511ea9823b1ab1d45eb86607cb291878c70b26ae 03-Sep-2010 Andreas Huber <andih@google.com> am af7a7c34: am cc4a38c6: Merge "Properly buffer a certain amount of data on streaming sources before finishing prepare()." into gingerbread

Merge commit 'af7a7c34e0752db2b8ec3dd7fa6e8d486ea010dc'

* commit 'af7a7c34e0752db2b8ec3dd7fa6e8d486ea010dc':
Properly buffer a certain amount of data on streaming sources before finishing prepare().
8650e1960905097f6f1d6aa462ccb1c93c656834 03-Sep-2010 Andreas Huber <andih@google.com> Properly buffer a certain amount of data on streaming sources before finishing prepare().

Change-Id: I39bf3c6dafcbe003b51dea4795742dcd8548f207
related-to-bug: 2875110
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
6faf0cd82346b23075d1f8b9f70f7af43f2c5f04 02-Sep-2010 Andreas Huber <andih@google.com> am fd0eed00: am a2511da9: Merge "Better support for buffered streaming of rtsp content, if buffer drops below a certain threshold we will temporarily pause playback until we have sufficient data." into gingerbread

Merge commit 'fd0eed007d99178092ede56ec2c4799046615f70'

* commit 'fd0eed007d99178092ede56ec2c4799046615f70':
Better support for buffered streaming of rtsp content, if buffer drops below a certain threshold we will temporarily pause playback until we have sufficient data.
c9e894872c298b25fe9d74e68aa1e7287a541ac3 02-Sep-2010 Andreas Huber <andih@google.com> Better support for buffered streaming of rtsp content, if buffer drops below a certain threshold we will temporarily pause playback until we have sufficient data.

Change-Id: Ice8564e902e48c89c9c00f6651c5504b3c41fcad
related-to-bug: 2556656
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
8852dbbdf3ceda01a96f3c8a814822e224239494 01-Sep-2010 Andreas Huber <andih@google.com> am 021a822e: am de2b1615: Merge "Properly extract all raw_data_blocks from an ADSP mpeg4 audio buffer." into gingerbread

Merge commit '021a822e76ab34a6404486e23157db6b6c50ec3e'

* commit '021a822e76ab34a6404486e23157db6b6c50ec3e':
Properly extract all raw_data_blocks from an ADSP mpeg4 audio buffer.
82f7321b03eec1e40af9d681370f754ee0279582 01-Sep-2010 Andreas Huber <andih@google.com> Properly extract all raw_data_blocks from an ADSP mpeg4 audio buffer.

Change-Id: I15e21eae50beb6057024ea42a7e9bf3b8d8a0603
related-to-bug: 2368598
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
c5c4286bebffa4c2a9539c8e09207c3130351531 30-Aug-2010 Andreas Huber <andih@google.com> am 6df6d606: am df992ac9: Merge "ALoopers can now be named (useful to distinguish threads)." into gingerbread

Merge commit '6df6d60681be9d524ce7fc07f2511008de424d27'

* commit '6df6d60681be9d524ce7fc07f2511008de424d27':
ALoopers can now be named (useful to distinguish threads).
9fbd6ae6b6d9f3eb791a3385df6fed3524531bd4 28-Aug-2010 Andreas Huber <andih@google.com> am 05c1cada: am 577615c9: Merge "Better support for rtsp (normal play-)time display. Better seek support, timeout if no packets arrive for too long." into gingerbread

Merge commit '05c1cadaeaf272a70acc889bfccd607648058470'

* commit '05c1cadaeaf272a70acc889bfccd607648058470':
Better support for rtsp (normal play-)time display. Better seek support, timeout if no packets arrive for too long.
a814c1fdc2acf0ed2ee3b175110f6039be7c4873 28-Aug-2010 Andreas Huber <andih@google.com> ALoopers can now be named (useful to distinguish threads).

Change-Id: Ieabaddb2e3a9e3a7a5bc36e55cd0721b60dbd50e
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
8d342970108926c4ea355c90d26a2a353ec0fd47 27-Aug-2010 Andreas Huber <andih@google.com> Better support for rtsp (normal play-)time display. Better seek support, timeout if no packets arrive for too long.

Change-Id: Id491541a6ae501604cda815f8e961a3bfe26db7d
related-to-bug: 2556656
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
6067b47c0d2cff7d26e088d97dc8d5190c5a4d00 26-Aug-2010 Andreas Huber <andih@google.com> am cec075cc: am 23584022: Merge "Ensure that buffering updates eventually hit 100% after we download everything." into gingerbread

Merge commit 'cec075cc420e601602d6bfe16272c30006d262a6'

* commit 'cec075cc420e601602d6bfe16272c30006d262a6':
Ensure that buffering updates eventually hit 100% after we download everything.
2a4b49bd3863024884a694b454e2e452752e6ea0 25-Aug-2010 Andreas Huber <andih@google.com> Ensure that buffering updates eventually hit 100% after we download everything.

Change-Id: I43bb85b1128fa9c1bc8632970d7101006393bcc8
related-to-bug: 2844095
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
5ac7b5def64625fdc9cfaf1bbdd013f5ada241f3 25-Aug-2010 Andreas Huber <andih@google.com> am 67ca90b3: am 6b6ae996: Merge "A first shot at proper support for seeking of rtsp streams." into gingerbread

Merge commit '67ca90b339feb8bb6889ca289a9dbc82c447b0d2'

* commit '67ca90b339feb8bb6889ca289a9dbc82c447b0d2':
A first shot at proper support for seeking of rtsp streams.
cce326fe43411855aca2f719e505b051bc4b61b3 24-Aug-2010 Andreas Huber <andih@google.com> A first shot at proper support for seeking of rtsp streams.

Change-Id: I9604f2d09feedc0074c0e715be58e719d4483760
related-to-bug: 2556656
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
5daeb129a2c2ba3d14ccd94af283b5f561c783ea 16-Aug-2010 Andreas Huber <andih@google.com> Squashed commit of the following:

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
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
1aa4fed23595d45b0ad0af86c9e839196172abe5 13-Aug-2010 Mike Dodd <mdodd@google.com> Support getting codec, width, and height in URL for gtalk playback.

Format is rtsp://gtalk/codec/width/height

For example:
rtsp://gtalk/H263-1998/320/200

Change-Id: If7c73fea1e1d0de89b22a8f0d12acba1c862d6fe
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
eaf0e0786c4c21d6c63d8f1f4515cb2a5311493b 10-Aug-2010 Andreas Huber <andih@google.com> Remove some obsolete code.

Change-Id: Ic4d21afe3721173d48db44b8ee4f836deee017ad
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
f8ca90452ff3e252f20de38f1c3eee524c808c3e 10-Aug-2010 Andreas Huber <andih@google.com> We're now going to ignore timestamps completely in gtalk video conferencing, playing video as soon as it comes in. We also make up fake timestamps in the rtp code, ignoring rtcp SR information to enable early startup.

Change-Id: Idc3df74b42000f7a6aa3eae090718dc9d9c4186f
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
ff53123821a3ec2e71fdb1a971ea2cbae3119826 05-Aug-2010 Andreas Huber <andih@google.com> Better support for fake timestamps in RTP, H.263 video now also requests FIR.

Change-Id: I2385461887197fe4062d329086e0204f6d6620fc
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
33a8457868eb00b94b37b53321a80d9307202a9d 04-Aug-2010 Andreas Huber <andih@google.com> Specification of codec specific data as part of the session description is now optional.

Change-Id: Ie1953909e1d241381add3cc82a7a1f7d7d1540f2
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
39ddf8e0f18766f7ba1e3246b774aa6ebd93eea8 04-Aug-2010 Andreas Huber <andih@google.com> Support for Gtalk video, includes AMR/H.263 assembler and packetization support, extensions to MediaRecorder to stream via RTP over a pair of UDP sockets as well as various fixes to the RTP implementation.

Change-Id: I95b8dd487061add9bade15749e563b01cd99d9a6
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
abd1f4f870925d6776dbe4b930b759a1ab6595ca 21-Jul-2010 Andreas Huber <andih@google.com> Support finer seek control on MediaSources.

related-to-bug: 2858448

Change-Id: Ifb4b13b990fd5889113e47e2c62249ac43391fa1
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
5d2de4da54504836e4b772b3010ac28c19f667f0 07-Jul-2010 Andreas Huber <andih@google.com> Only send the playback complete notification if a) an error occurred on any track or b) all tracks have finished playing. The previous behaviour was to send the notification as soon as the first track finished playing.

Change-Id: Icac8104d14f18b719aa0b8f1ab3215f24003b152
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
79f77ef3b0a37660ba8c5bcb2dfbfda3860f2135 11-Jun-2010 Andreas Huber <andih@google.com> Restore feature parity with the old HTTPDataSource as far as support for extra headers (cookies?) and socket-timeout are concerned.

Change-Id: I506dc501faec60e974bf4968d8ba661df7a49aa8
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
0a5baa9b411fe086013d2a5e9126ed63fbad046c 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/av/media/libstagefright/AwesomePlayer.cpp
cf7b9c7aae758ac0b99833915053c63c2ac46e09 08-Jun-2010 Andreas Huber <andih@google.com> Initial checkin of preliminary rtsp support for stagefright.

Change-Id: I0722aa888098c0c1361c97a4c1b123d910afc207
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
e71d10e7ad55ccbcb0756c007caef1c959090384 07-Jun-2010 Andreas Huber <andih@google.com> Initial checkin of preliminary support for "http live" streaming in stagefright.

Change-Id: I20399f63d63af86a3ba22641c0e43385a108fb3f
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
139a5d5bd33c9fc7708d0a79f11ee928f7796e6b 20-May-2010 Andreas Huber <andih@google.com> Better handling of codec initialization failure in the player and thumbnail extractor. Return a runtime error instead of asserting if the software MPEG4/H.263 decoder fails to initialize.

Change-Id: I5cba02ee85a41e43c2623053de40f26e2cf2efe4
related-to-bug: 2699505
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
a945bfd91aa291fba4d9201ffcb38fce40eab7fe 13-May-2010 Andreas Huber <andih@google.com> Return a runtime error instead of asserting if the AACDecoder is passed an unsupported config.

Change-Id: Ie084ed4df5a5d286abd36d9149c2138f8e7ed08a
related-to-bug: 2682221
QA-impact: none
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
acdd9d0f59c3d8bdc3de80664a609527ec3d21e2 06-May-2010 Andreas Huber <andih@google.com> Disable vorbis seek when streaming from localhost.

Change-Id: Icda523ae1c89e26482f1c1767fe3a8b9222bb30f
related-to-bug: 2654400
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
5c117390591da780e1f53c1c9c91c1efdacbc674 13-Apr-2010 Gloria Wang <gwang@google.com> Fix for 2581725. Keep the last frame after resume(), and delete it
in the next suspend() or reuse it if no new frame is available.

Change-Id: I84286030eaae9061077d6ccb485b7dd53ef05341
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
81f82c32459029bf0744e28c73f95a7f18cab5ac 13-Apr-2010 Andreas Huber <andih@google.com> Distinguish QCELP audio from mpeg4 audio, ignore QCELP audio tracks since we don't have a decoder for it, ignore potentially malformed metadata for AMR NB and WB tracks.

Change-Id: Ic9a9198413431db4ea40bb63b9de91aa8a7183af
related-to-bug: 2587341
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
0a0583f9a6dd7fb0b72b7e072da4d55f8597c7ed 12-Apr-2010 Andreas Huber <andih@google.com> Start sending out buffering updates earlier (after preparation has completed) instead of only after playback has started.

Change-Id: Ieaa90cc9b54bd56963aa5f4daced2ba243801acf
related-to-bug: 2585913
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
d8c76856c6d52dcd11a90124dafef0af99956e15 08-Apr-2010 Andreas Huber <andih@google.com> Increase the size of the pages used in CachingDataSource (total amount of memory used remains the same) to compensate for reduced locality of audio/video data requests. Also fixes a mistaken trailing "\r\n" in the range header and better error handling on http connection.

Change-Id: Ic9a6ef204362bc9afdc61e081c76bc62e5ef92ad
related-to-bug: 2580785
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
dac4ee72bac87388a1495e098f39d73168c8078f 07-Apr-2010 Andreas Huber <andih@google.com> Report the requested seek time while seek is in progress.

Change-Id: I862bfb801701f9ce54dede51c492e4eb37591894
related-to-bug: 2576102
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
1321fdd94d354431b930735e9f38f32ecd189a2d 31-Mar-2010 Andreas Huber <andih@google.com> Properly send a MEDIA_SEEK_COMPLETE notification for a seek request while paused (legacy behaviour).

Change-Id: I64da5eb97c75b269b4668b3628ed0f05f2e36e51
related-to-bug: 2557482
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
2415ecb5bb4e1459024f6d6c8ae2d6e3dc4fbdc7 26-Mar-2010 Andreas Huber <andih@google.com> Finer-grained locking in AwesomePlayer, position and duration are now protected by a separate mutex that's only held for brief moments of time.

Change-Id: I989baf5a0ea8923985c560c2ec274abda0780242
related-to-bug: 2546577
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
e966fb05c7e67a7f5dce65024de60aac83eb6f81 24-Mar-2010 Andreas Huber <andih@google.com> Enable early termination of the prefetcher's preparation phase.

Change-Id: I929ac9b0fd0b6ebd98c1bc56be18ac8f8378d48c
related-to-bug: 2537407
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
9584a0726582b6b7603032870c62b4fccd5ce076 23-Mar-2010 Andreas Huber <andih@google.com> Clear the local prefetcher strong reference before signalling that prepare() was cancelled early in order to avoid a race condition that occasionally triggered an assertion from the main thread.

Change-Id: I0db198fe5fd0fbe9a6c90a8e5924a2df05432c4c
related-to-bug: 2538486
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
15ff9300a667f7347e546eb1516e7cb0b775ba7a 16-Mar-2010 Andreas Huber <andih@google.com> "isPlaying" should never block, acquiring the mutex here is unnecessary, rather than investing in a separate mutex guarding just "mFlags" we accept returning "true" from isPlaying one too many times.

Change-Id: I597577cbb3ad1afd3cb3ca91979ef24cc1a44658
related-to-bug: 2518319
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
e94bd14078d327ef2f800e69907efce641a13272 12-Mar-2010 Andreas Huber <andih@google.com> HTTPStream and HTTPDataSource now support cancellation of the connection process, AwesomePlayer takes advantage of this in cases where ::reset() or ::suspend() is called while in the preparation phase to bail out early. Also fixes in issue where the audio codec was not properly stopped if no audio player object ever took ownership.

Change-Id: I6d73defe6d276693853a469db267bb2668d07af5
related-to-bugs: 2475845,2414536
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
e7e3b785a0e7819db4c895a4f60e9a4dd755880c 09-Mar-2010 Andreas Huber <andih@google.com> The audio track was accidentally not participating in the prefetch since it wasn't started at the time prepare() was called. Also, properly report the cached duration even near the end when the source has no more data to fetch.

Change-Id: I66a92fec24c9bfb25f1c186f1c877127bae2b4f9
related-to-bug: 2444425
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
1322e7ebc33e8e161fb73cd47e43dd93357608e4 08-Mar-2010 Andreas Huber <andih@google.com> Increase the amount of data buffered at preparation time. Make sure to start preparing after the codecs have been started, otherwise no buffering will happen.

Change-Id: I2c54db085cc76f4069ab381177e94e1b81005b02
related-to-bug: 2474091
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
88d8a83de12592635248aa1a3bd6b9ea46108501 05-Mar-2010 Andreas Huber <andih@google.com> Instead of allocating the decoder instances in response to a call to setDataSource, postpone allocation to the preparation phase where it belongs.

related-to-bug: 2492205
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
5295c0c55d41a2906ea7f65a3f22e6278cb17d4b 23-Feb-2010 Andreas Huber <andih@google.com> Propagate errors all the way through the MediaSources and send either MEDIA_PLAYBACK_COMPLETE or MEDIA_ERROR depending on the final reason for running out of buffers to play back.

related-to-bug: 2463749
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
2e8ffaf95bd35358ecd14ddf00cddaf3abefe0a9 19-Feb-2010 Andreas Huber <andih@google.com> Implement legacy behaviour for MediaPlayer's behaviour of starting from the 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
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
d29345dfa29cdcc650f3705e43950ef2500f6728 18-Feb-2010 Andreas Huber <andih@google.com> We are cancelling this event during reset, but the event may have already been dispatched at the time, blocking on the mutex. While it's blocking, reset() cancels the event, we're then unblocked and bad things(tm) happen.

related-to-bug: 2451174
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
fa090f541bb84a546af2ec834e91a032ff10e66e 12-Feb-2010 Andreas Huber <andih@google.com> Preserve a preview frame to be restored after resuming the playback session.

related-to-bug: 2231576
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
7b3396acc702451be9bafb19d7fe26d55d43a316 12-Feb-2010 Andreas Huber <andih@google.com> Squashed commit of the following:

commit 427e927298449826bb5b98327b0c05957aa051e6
Author: Andreas Huber <andih@google.com>
Date: Fri Feb 12 10:39:07 2010 -0800

Fixing a race condition in AwesomePlayer and support for suspend/resume.

commit 96201a04b6657b6bd69ec6100f4de66aebcaa0b4
Author: Andreas Huber <andih@google.com>
Date: Fri Feb 12 10:36:15 2010 -0800

Protect MPEG4Source's sanity by properly locking.

related-to-bug: 2231576
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
3cf613507f1e2f7bd932d921a6e222e426fd3be4 10-Feb-2010 Mathias Agopian <mathias@google.com> split libsurfaceflinger_client and libcamera_client out of libui
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
988e3f0b2c74095deae580157c57935a98573052 11-Feb-2010 Andreas Huber <andih@google.com> Support for rendering through an overlay on the droid even if a software renderer is active.
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
bd22c52280179b29eefac91ef7e7bbbc33d25904 09-Feb-2010 Andreas Huber <andih@google.com> Defer actual work of setDataSource given a URI to the prepare phase in order to not block the calling thread for any significant amount of time...

related-to-bug: 2431117
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
ec9dd59902c8beea4ba6a842f3a843d46150d949 09-Feb-2010 Andreas Huber <andih@google.com> A little less verbosity in stagefright and special treatment for the error state while shutting down.
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
c23f12af0394aa2f6651968a3c8840f1af317aa1 08-Feb-2010 Andreas Huber <andih@google.com> Properly implement asynchronous preparation of media playback.

related-to-bug: 2413002
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
a657f8deaf21acbe5faba7be1df9c6681d44d471 04-Feb-2010 Andreas Huber <andih@google.com> Defer creating the video renderer until we see the first video frame.

This avoids having to instantiate the renderer twice in case the video decoder sends a format change before the first frame.

related-to-bug: 2375037
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
1862a33b246249630b654182afb5914da3480d4c 03-Feb-2010 Andreas Huber <andih@google.com> Fix a deadlock caused by the AudioPlayer notifying the observer that the stream had ended at the same time the observer was shutting down the AudioPlayer.

related-to-bug: 2414536
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
88c030e0e0152791ff74f90249f55fce01371198 29-Jan-2010 Andreas Huber <andih@google.com> Properly forward errors returned by AudioTrack up to the player.

related-to-bug: 2300197
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
69f5f4c021ee55055df39718244c036faf2d3382 29-Jan-2010 Andreas Huber <andih@google.com> Make sure the OMX component is synchronously shutdown before we try to instantiate another one. Also properly cleanup the software AVC decoder to avoid leaking memory.

related-to-bug: 2404786
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
5561ccf4a8db88a2e44eac1b3ed13b4ff53a7f20 28-Jan-2010 Andreas Huber <andih@google.com> Support the specification of additional HTTP headers in the creation of a DataSource.

related-to-bug: 2393577
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
66b0a35c9a4136a84c3f73b1b25fcb5220138b95 27-Jan-2010 Andreas Huber <andih@google.com> Better support for HTTP streaming media content, fixes to the way HTTPDataSource streams the data, prefetcher implementation.

related-to-bug: 2295438
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
b9280d5c2313c41eb490f58198c4e59118e0e3e6 22-Jan-2010 Andreas Huber <andih@google.com> Make sure to release the renderer before shutting down the hardware codec, qcom's hardware decoder will otherwise crash.

related-to-bug: 2387981
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
0726045216f576e97672ebeefc265d39c4ebaaa5 21-Jan-2010 Andreas Huber <andih@google.com> Fix circular dependency between StagefrightPlayer and AwesomePlayer that prevented proper cleanup.

related-to-bug: 2355922
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
717826ececd8d39596f62418677721d70776add1 05-Jan-2010 Andreas Huber <andih@google.com> I must have broken raw-audio decoding in the recent past, this fixes it.

related-to-bug: http://b/issue?id=2352199
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
c1689e49ac867de33f2e81289449878ac2e536a0 15-Dec-2009 Andreas Huber <andih@google.com> It's important that seek requests are only specified in the initial call to MediaSource::read and are not repeated in subsequent calls.
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
733b7729ea462fae9c6899456444e28fef1c757c 14-Dec-2009 Andreas Huber <andih@google.com> AwesomePlayer now renders either remote (IOMXRenderer) or locally depending on what kind of decoder was instantiated. Split off color conversion code into its own shared library.
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
08411b75d4c30ce26180639f158e2f33d190eee8 11-Dec-2009 Andreas Huber <andih@google.com> remote destructors are not synchronously executed by the binder...
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
fd4a8e09a54469bbccea6248f84319a1eb78765e 11-Dec-2009 Andreas Huber <andih@google.com> Fix seek-on-startup behaviour in AwesomePlayer.
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
4844ac54e8b5997c3b03872dbafe8ebed4787517 11-Dec-2009 Andreas Huber <andih@google.com> remote destructors are not synchronously executed by the binder...
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
650773d00356129ffd661cdaef3fb3095c343707 23-Nov-2009 Andreas Huber <andih@google.com> The original delay after which we dropped a frame was too aggressive. 40ms lateness seems more appropriate (about 25fps).
/frameworks/av/media/libstagefright/AwesomePlayer.cpp
bfa6b2d7a1be1832ac40ed90aece1834f720b5c6 20-Nov-2009 Andreas Huber <andih@google.com> Squashed commit of the following:

commit 1efc38dc3c33fef57b759002db3965ed07a28cb0
Author: Andreas Huber <andih@google.com>
Date: Thu Nov 19 14:36:14 2009 -0800

Sending the SEEK-COMPLETE notification temporarily broke seeking backwards in time behaviour. This is now fixed.

Also, get rid of the semi-random delay after posting buffers to surface flinger in favour of delaying the buffer release until the next frame is displayed.

commit 51973062eb5ee63fd64b845d72bac517cc3369cf
Author: Andreas Huber <andih@google.com>
Date: Wed Nov 18 14:01:43 2009 -0800

Fix one more unit test, properly send seek-complete notification only after seek actually completed.

commit cb22250b34b1fcfe1bf459723a761fd003950229
Author: Andreas Huber <andih@google.com>
Date: Wed Nov 18 12:31:36 2009 -0800

Fix seek-while-paused in AwesomePlayer, revert to using FileSource if MmapSource fails.

commit 25eb9241138ddf7bb27ce90657116c5f8a94d880
Author: Andreas Huber <andih@google.com>
Date: Wed Nov 18 12:30:40 2009 -0800

Support seeking and duration in AMRExtractor, assuming all frames are the same size.

commit 44192f2ebb7ea3bbd3ba5910025692dbc6a08faa
Author: Andreas Huber <andih@google.com>
Date: Wed Nov 18 10:21:44 2009 -0800

MediaPlayerImpl is dead, long live AwesomePlayer.

commit c5b52d3c0674f5dc94db506afbce52401cceddac
Author: Andreas Huber <andih@google.com>
Date: Wed Nov 18 09:42:23 2009 -0800

New implementation of the stagefright mediaplayer.
/frameworks/av/media/libstagefright/AwesomePlayer.cpp