5244 Commits

Author SHA1 Message Date
Glenn Kasten
f330986fa8 Bug 5478024 drop after decode if can't drop before
Change-Id: Iaa64553be1a710da5d42be4e3a1e1d6dc873e371
2011-11-04 18:05:35 -07:00
Andreas Huber
efa4015ae3 DO NOT MERGE Poll input data with a small timeout and don't consume a full core.
Change-Id: I3c288698920fe6ead0df24a52330483609821a41
related-to-bug: 5549263
2011-11-03 18:15:43 -07:00
Eric Laurent
8ca9a1cf35 Fix volume indication in vibrate mode.
The latest change in silent/vibrate mode selection via volume keys
was such that ringtone volume was not showing 0 when entering vibrate mode
by continuous press on vol down.

Issue 5530217.

Change-Id: I9ba817648e5dca40e0d19f5f606d7763ae61b1c6
2011-10-31 12:12:37 -07:00
Amith Yamasani
69e640ee84 Merge "Bring back the old-style Ring/Vibrate/Silent states when using volume keys." into ics-mr0 2011-10-28 18:59:11 -07:00
Amith Yamasani
c696a53d1f Bring back the old-style Ring/Vibrate/Silent states when using volume keys.
In order to completely mute the ringer (no vibrate), introduce an extra
state beyond mute, which mutes the vibrator as well, if it was enabled.

Bug: 5530217

Change-Id: Ib1f299ee6bbca56c1aa7e1100662591362d08307
2011-10-28 18:40:43 -07:00
Joe Fernandez
09848bc89d Merge "docs: add developer guide cross references, Project ACRE, round 3" into ics-mr0 2011-10-28 15:40:11 -07:00
Joe Fernandez
61fd1e8d8c docs: add developer guide cross references, Project ACRE, round 3
Change-Id: I6125315ecdf0f78dd947c514a9944729d723e95d
2011-10-28 14:23:23 -07:00
Jamie Gennis
2fa0ac2e44 Stagefright: ANW::connect in MediaPlayerService
This change moves the ANativeWindow connect and disconnect logic from
MediaPlayer to MediaPlayerService::Client.

Bug: 5502654
Change-Id: Ifc43b98b01ad8f35d62d7ece43110724ec7fda3d
2011-10-26 18:40:00 -07:00
Jamie Gennis
c0e4293794 Stagefright: push blank buffers when tearing down
This change makes OMXCodec push RGB 565 buffers filled with black to an
ANativeWindow when tearing down after decoding to protected gralloc
buffers.  This allows the OMX tear down to zero out any protected
buffers that were used without the possibility that the buffer is still
being used by SurfaceFlinger or HWComposer.

Bug: 5483222
Change-Id: I8acedd81a7bb67dfdc2fd15733e3375b6ce8d560
2011-10-25 18:35:02 -07:00
Dave Burke
23d644202a Merge "Stagefright: idle OMX after ANW errors" into ics-mr0 2011-10-19 22:37:18 -07:00
Jamie Gennis
6607b39baa Stagefright: idle OMX after ANW errors
This change fixes an issue in Stagefright where the state of an OMXCodec
object can get out of sync with the state of the OMX component.  In
particular, if one of the ANativeWindow functions failed and put the
OMXCodec into the ERROR state, this would cause Stagefright to skip
doing the Executing -> Idle transition.  Without this transition the
freeBuffersOnPort call would never be made, and the MediaBuffers would
end up being leaked (which would also leak the Gralloc buffers they
reference).

Bug: 5333695
Change-Id: I85ea0cf92d18e7ef6d35c7d1e2a7b4e2c9745d34
2011-10-19 21:22:19 -07:00
James Dong
dc8bbe79b8 Check whether media recorder client exists before dumping.
Change-Id: I1f3a644a958975e4cf6c02099c53e30cc4d2fd82
related-to-bug: 5477177
2011-10-18 22:29:20 -07:00
James Dong
5a37afa87c Bail out after kMaxColorFormatSupported calls to OMX_GetParameter().
Avoid infinite loop in querying omx component about the supported color format.

Change-Id: I4997efd36462c792a6d8b5e04c79a80966a559fe
related-to-bug: 5466057
2011-10-18 16:27:53 -07:00
Eric Laurent
c0a87dc10c Merge "Fix issue 5462427: Volume should never be 0 ..." into ics-mr0 2011-10-17 19:48:31 -07:00
Dave Burke
6f13adb22a Merge "Don't hold onto the lock while reconnecting to the server" into ics-mr0 2011-10-17 18:35:11 -07:00
Andreas Huber
96e35f2e57 Don't hold onto the lock while reconnecting to the server
to avoid stalling the readers.

Change-Id: I73b646587c8a654a73ff7d800c0f17bd78001855
2011-10-17 15:49:01 -07:00
Jamie Gennis
f76afc80d2 MediaPlayer: properly handle released surfaces
Bug: 5396571
Change-Id: I6af87cb04f09f9ae6ea77cd7ba31108a3e93d24a
2011-10-14 19:55:12 -07:00
Eric Laurent
b024c30a80 Fix issue 5462427: Volume should never be 0 ...
Make sure that ring or notification volume index
never reaches 0 unless in silent mode.
Conversely, enter silent mode when this volume is set to 0.

Change-Id: Iff5e5e972b607f4736e7a704b26b2dadb40074b0
2011-10-14 17:19:27 -07:00
Eric Laurent
950e8cb40a Indicate screen off condition to audio framework.
Add a mechanism for AudioService to notify audio framework and audio HAL
that screen is turned on or off. This indication can be used by lower
audio layers to trigger low power audio playback mode.
Current implementaiton based on setParameters() method is experimental
and will be replaced by a different interface when ready.

Change-Id: Ie72ada0a8edec3d71b47681b9f51cb5bc839d45b
2011-10-14 11:40:24 -07:00
Jean-Michel Trivi
7ff866e8cf Fix 5153611 remove remote control client/display log from AudioService
Do not log debug messages for the RemoteControlClient and
 IRemoteControlDisplay related features.

Change-Id: I81bfeec1770f81b78b679dc03fb40806393b170a
2011-10-13 18:09:26 -07:00
Mike Lockwood
8334038f9e MtpServer: Pass 0xFFFFFFFF for file size when receiving files >= 4GB in size
Bug: 5432487

Change-Id: Ie86e72d9d85476941eab6a9d271948b8fdde6926
Signed-off-by: Mike Lockwood <lockwood@android.com>
2011-10-13 11:38:20 -04:00
Andreas Huber
33d94067ad Assume a PTS of 0 if absent, don't bail on fragmented PES packets not having PTS
Change-Id: I3b31f08428fb7195b98f145ae0675006c8756de1
related-to-bug: 5450187
2011-10-12 12:14:23 -07:00
Jean-Michel Trivi
09b4d99822 DO NOT MERGE Fix 5389442 RemoteControlClient javadoc
Extend RemoteControlClient class description with an example
 of instance creation showing how the PendingIntent is created
 and how it uses the same ComponentName as the one used
 in AudioManager.registerMediaButtonEventReceiver()

Change-Id: I1af61ddbf5cfb9160ea5b814bed7b881d51b7eff
2011-10-11 18:59:34 -07:00
James Dong
50c31024e3 Merge "Support AMR as a file type so that it can be imported into movie studio" 2011-10-10 15:22:04 -07:00
Andreas Huber
7f3259403d 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
2011-10-10 12:41:21 -07:00
James Dong
f58ba65069 Support AMR as a file type so that it can be imported into movie studio
Change-Id: I3fc4f49ae0a210f53b1bab68716f4e558b3d91c5
related-to-bug: 5419452
2011-10-09 21:14:58 -07:00
Andreas Huber
b987d875c6 Specifying -1 for both low and highwater marks would not actually do the right thing
before this change. Also make it more consistent in that specifying -1 for the
keepalive settings specifies the default.

Change-Id: I086f530fbf42abce66d1c8e61157215cb474e044
2011-10-07 10:00:38 -07:00
Andreas Huber
59797e6bec Merge "Allow a system property "media.stagefright.cache-params" to override cache/prefetcher" 2011-10-07 07:59:35 -07:00
James Dong
f3c0056816 Merge "Fix an issue where we should allow negative values but did not" 2011-10-06 20:38:29 -07:00
Andreas Huber
594f0ba996 Allow a system property "media.stagefright.cache-params" to override cache/prefetcher
default parameters. To override specify a property

adb shell setprop media.stagefright.cache-params "4096/20480/15" to
set the low water threshold to 4096 KB, the high water threshold to 20 MB
and the keepalive interval to 15 secs.

if high and/or lowwater mark are negative, the default values are used for
the respective value.

if keep-alive interval is 0, keep-alives are disabled.

Change-Id: I89a4a06836e4a2f473d7a92b567ab07818c2f87d
2011-10-06 15:27:24 -07:00
Andreas Huber
90ba107fcf Return a runtime error instead of assertion if seeking beyond EOS in mpeg4 files.
Change-Id: If6531b4a1ff45460cfcdcc04764c5c63a2f5a749
related-to-bug: 5418914
2011-10-06 09:07:12 -07:00
James Dong
56f71d7dfa Fix an issue where we should allow negative values but did not
Change-Id: Ia8d718b4e6aec4c17db86e30134132f767fd72c5
related-to-bug: 5419527
2011-10-05 20:43:52 -07:00
Lakshman Gowda
db62a245f9 Set crop params to ANative Window during Initialization.
The native_window_set_crop() is called when port reconfig event callback comes from decoder's and
crop parameters are changed from default getconfig() OMX_IndexConfigCommonOutputCrop values.
Since the default crop params are same as port reconfig crop params, the native_window_set_crop()
is not called, hence resulting in displaying the whole frame(paddedWidth x paddedHeight).
By calling native_window_set_crop() during initilaization of output port of decoder ensures
in setting up ANative window to crop region.

Change-Id: I68926464a1f5c7e6053804615c8b9bd32ea85688
Signed-off-by: Lakshman Gowda <lakshman79@ti.com>
2011-10-05 10:29:27 -07:00
Marco Nelissen
ce0a7ade96 Merge "Remove Ringtone.setWakeMode, it's not needed." 2011-09-30 11:13:39 -07:00
Andreas Huber
cb52d012e9 Merge "Gracefuly return on detecting wrong AAC format from corrupted files" 2011-09-30 11:13:21 -07:00
Gilles-Arnaud Bleu-Laine
9a6ed36ba5 Gracefuly return on detecting wrong AAC format from corrupted files
Return BAD_VALUE error upon detection of wrongly formatted files.
The client should abort the initialization upon error detection.

The current CHECK() interrupts the configurecodec() preventing a graceful
exit.

Change-Id: Ic79313fa76a63284897df5d91635de87d06f3100
Signed-off-by: Gilles-Arnaud Bleu-Laine <gilles@ti.com>
2011-09-30 10:46:12 -07:00
Gloria Wang
627f445a23 Wait for some time before stopping the media recorder.
Fix for bug 5239001.

Change-Id: Ifa18a404e8568cced88a93b8d1a7125875aadb15
2011-09-30 10:05:33 -07:00
Marco Nelissen
b741c60486 Remove Ringtone.setWakeMode, it's not needed.
This partially reverts commit e47e8520fa48bd014287eda94ea39927de73d6bc.
(the other part of that change was already removed as part of a different
change)

Change-Id: Ica7c196ab1f74f96237e64d07580832f0d50022f
2011-09-29 15:58:41 -07:00
Marco Nelissen
d94a7b60cc Merge "Release MediaPlayer before letting it go out of scope." 2011-09-29 10:11:34 -07:00
Marco Nelissen
e1bd048cf2 Release MediaPlayer before letting it go out of scope.
Change-Id: Ib2b727146f6cba91b131e66d218251f5a3206fac
2011-09-29 09:59:03 -07:00
Jean-Michel Trivi
cc3fbb7b69 Merge "Fix bug 5357295 NPE on display when remote control client dies" 2011-09-29 09:09:37 -07:00
Andreas Huber
0044a15eb9 Merge "Support multiple NAL fragments per .mkv payload" 2011-09-28 16:08:59 -07:00
Andreas Huber
2378341174 Support multiple NAL fragments per .mkv payload
Apparently the payload for an h.264 track in an .mkv file can contain multiple
NAL fragments, we used to discard everything after the first one before, now
we preserve them all.

Change-Id: Ic7187365309f3880a3256982879a45df50db697d
related-to-bug: 5337218
2011-09-28 15:06:46 -07:00
James Dong
5e28463dc4 Merge "Flush resets the count of played audio frames" 2011-09-28 13:46:49 -07:00
Andreas Huber
781ae92f11 Merge "Support AMR, G.711 and vorbis audio in ACodec and friends." 2011-09-28 13:13:33 -07:00
Xia Wang
0a6cd02b48 am b2d17234: Merge "Reorganize media framework functional tests. Group tests into sub-packages" into ics-factoryrom
* commit 'b2d17234b77cda555905e0da997f543708374246':
  Reorganize media framework functional tests. Group tests into sub-packages
2011-09-28 12:40:07 -07:00
Andreas Huber
3e408f39ef Support AMR, G.711 and vorbis audio in ACodec and friends.
Change-Id: I08c03219bf2d60fc5c6e89957bd4b4c615570983
2011-09-28 12:37:36 -07:00
Jean-Michel Trivi
26b3d1ff38 Fix bug 5357295 NPE on display when remote control client dies
When a IRemoteControlClient dies, that client is set to null
 in the stack of remote control entries (mRCStack). This is done
 by calling registerRemoteControlClient() with a null client.
The bug is that registerRemoteControlClient(), after storing
 the new client, uses it to let it know what the current
 remote control display is. When that display is non null, the
 client is sent the current display. So when a client died
 when there was a display, the client reference was accessed
 in the part of the method where we haven't yet checked whether
 it is null or not.
The fix consists in moving the setting of the display on the
 client (method plugRemoteControlDisplay) only after having
 checked that the client is non-null.

Change-Id: Ic74d6cba9e3a3a16e78cd80a1ae5901abfeb3905
2011-09-28 11:43:36 -07:00
Marco Nelissen
8df38890d4 Merge "Log a warning when a MediaPlayer is finalized without having being released. b/5382634" 2011-09-28 09:41:12 -07:00
Marco Nelissen
8dc208476f Log a warning when a MediaPlayer is finalized without having being released.
b/5382634

Change-Id: I756d09d16a92ab8ce736c16a24e319a87be6c8de
2011-09-28 09:21:11 -07:00