5118 Commits

Author SHA1 Message Date
Gloria Wang
91784c996f 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
2011-08-09 15:31:30 -07:00
Mathias Agopian
f6d08b9528 Merge changes Ie06e73e5,I7ac6b5b0
* changes:
  free all buffers when ANativeWindow::disconnect is called
  return correct value from query after connecting a surface
2011-08-09 15:23:19 -07:00
James Dong
2c8e8508d2 Fix initial 0 duration video sample in the recorded videos
o Patch suggested by pmehendale@nvidia.com

Change-Id: Ibf516ba83b721b0d0ab55bb7637fe9b7b2958214
related-to-bug: 5117434
2011-08-09 11:17:49 -07:00
James Dong
0ed837a7a3 Merge "Do not release recording frames if camera is gone" 2011-08-09 11:14:06 -07:00
Marco Nelissen
c74b93fdf3 Keep effects sessions active when the caller dies.
Don't remove effects until the session they are in goes away or all
AudioEffects have been explicitly released. This allows the control
panel process to die without stopping the effects.

Change-Id: I4496e5df080230ca1af149dec95c1309ab8ea888
2011-08-09 10:21:10 -07:00
Mathias Agopian
053b02df2d return correct value from query after connecting a surface
the first time a surface was connected, the values returned
by query NATIVE_WINDOW_DEFAULT_{WIDTH|HEIGHT} and
NATIVE_WINDOW_TRANSFORM_HINT were wrong until a call
to queueBuffer was performed.

Bug: 5137366, 5121607
Change-Id: I7ac6b5b0daa876638f6bed7c20f286a6e6d984f6
2011-08-08 20:25:44 -07:00
Andreas Huber
7616178271 Notify the OMX component that it's going to be used in "secure" mode.
Change-Id: Id87c4b295eb38f7d24045918e73df298d7b842f9
related-to-bug: 5137212
2011-08-08 15:28:21 -07:00
Neel Parekh
8d4ed0d8e1 Prevent NPE when registering a remote control client
Change-Id: Ia22b456b1cbdd89736118c7e68b7c68dd6e59c64
2011-08-08 13:25:46 -07:00
Jean-Michel Trivi
7b6198cacc Bug 5045498 API for client to notify remote control info changed
Update to API for a client to notify what type of information
 changed (e.g. playstate, metadata) to optimize small updates
 without the remote control display having to do expensive
 queries such as album art.

When the remote control display retrieves the flags about
 what information changed, the flag gets cleared.

Change-Id: I7d3d8d3eecd1da44695d84905ed9e7b70fe38b86
2011-08-07 17:44:47 -07:00
Jean-Michel Trivi
5d49678841 Merge "Make retrieving remote control client go through binder interface" 2011-08-07 13:48:04 -07:00
James Dong
0a5825edf5 Do not release recording frames if camera is gone
Change-Id: Ia6038c1a3ca17207e43a955ec47c42cdff1f5a76
related-to-bug: 5129465
2011-08-05 17:19:29 -07:00
Mike Lockwood
43b076bb75 MediaScanner: Fix UnsupportedOperationException when scanning internal media
The media scanner was crashing while tring to insert genre data in the internal
media database, which does not support genres.
This resulted in some or all of the built in ringtones being unavailable

Bug: 5124718

Change-Id: Ib306348dd9808e59477b327b4adcb413957d8d24
Signed-off-by: Mike Lockwood <lockwood@android.com>
2011-08-05 19:20:44 -04:00
Neel Parekh
ced110ec59 Make retrieving remote control client go through binder interface
The way the old way worked relied on the process retrieving the
current remote control client to be in the exact same process as
the AudioService.  This removes that dependency.

Change-Id: I1ba8bf32b61ec1e979ef7eee9661ba801aa19690
2011-08-05 14:36:31 -07:00
Ashish Sharma
d5a20d8d75 Network traffic accounting for chromium stack support in mediaserver.
- Atribute network activity to uid calling the mediaplayer
        - Enables logging of chromium network stack in logcat

Change-Id: I2d28c8392248a056b3cee305dd4d4475ebba4337
2011-08-05 12:58:14 -07:00
Gloria Wang
803b192ea2 Merge "Close the DRM session in the destructor of ChromiumHTTPDataSource. Fix for bug 5015079." 2011-08-04 16:32:10 -07:00
Gloria Wang
1467ec3433 Close the DRM session in the destructor of ChromiumHTTPDataSource.
Fix for bug 5015079.

Change-Id: I45fcf6ff8b50e62f2812930eaf68c00206cb7e52
2011-08-04 16:01:35 -07:00
Andreas Huber
a9307bef53 Merge "Eliminate superfluous memcpys by wrapping an ABuffer in a MediaBuffer" 2011-08-04 15:20:24 -07:00
Andreas Huber
e38a2cba16 Eliminate superfluous memcpys by wrapping an ABuffer in a MediaBuffer
Change-Id: I1313f117cd7cdfaf7d6ec25413a0b4b8ea495037
related-to-bug: 5122973
2011-08-04 15:05:17 -07:00
Jean-Michel Trivi
e83af902c4 Merge "Remove empty remote control client listener methods" 2011-08-04 14:10:57 -07:00
Andreas Huber
323e31754c Restart HLS streaming from the bottom of the playlist if we miss the boat on the
next segment. This can happen if for whatever reason we playback video slower than
it is served.

Also removed some unnecessary verbosity from ChromiumHTTPDataSource.

Change-Id: I6e870879310c9efe4d50d7dc0883c08405442d79
related-to-bug: 5120425
2011-08-04 12:10:29 -07:00
Jean-Michel Trivi
a30a21cf2e Remove empty remote control client listener methods
Remove non-implemented methods for registering IRemoteControlClient
 listeners.

Rename refreshRemoteControlDisplay() method to follow framework
 conventions.

Change-Id: I9254e8eeea9020a530c9a32f328f0ef7dbd9dd0c
2011-08-04 10:28:07 -07:00
Gloria Wang
6d899a61a8 Merge "Check the syncword for each frame. Fix for bug 5117233." 2011-08-03 15:37:24 -07:00
Gloria Wang
3c10b01551 Check the syncword for each frame.
Fix for bug 5117233.

Change-Id: I714c9b671832c9606cabdfe6bb21697c08de2eff
2011-08-03 15:06:35 -07:00
Eric Laurent
045d179ff6 Merge "AudioService: ignore NOTIFICATIONS_USE_RING_VOLUME." 2011-08-03 11:51:55 -07:00
Jean-Michel Trivi
4415629112 Merge "Remote control display API and implementation" 2011-08-03 09:09:43 -07:00
Sarthak Aggarwal
51812ec020 Removing hack for framerate setting in Stagefright for encoders.
Ducati binary starting to support frame-rate on i/p port rather than o/p port,
stagefright can start giving frame-rate frame rate on i/p port and 0 on o/p
port.

Change-Id: I70830747e43e6bfcac73f0fb01de0ab0235a7b28
Signed-Off-By: Sarthak Aggarwal<sarthak@ti.com>
Signed-off-by: Iliyan Malchev <malchev@google.com>
2011-08-02 19:01:07 -07:00
Jean-Michel Trivi
8f619182cb Remote control display API and implementation
Extend the media button event registration AudioManager API to
 enable applications to register as a client of "remote controls"
 and let them provide information meant to be displayed
 by the remotes.
AudioService sends a AudioManager.REMOTE_CONTROL_CLIENT_CHANGED
 intent to let remote controls know when / from whom they can
 retrieve the information to display.
Only application that own audio focus, are the currently
 registered media button event receiver, and have registered
 a remote control client, are eligible to appear on the
 remote control.

To address in future CLs:
- change how a remote control client forces a refresh
- rename methods called under lock to ___Locked()
- make API public

Change-Id: Icca30ab05dac2605ee9246f8acb27a03dcea077a
2011-08-02 17:15:42 -07:00
Eric Laurent
4eb5a57138 AudioService: ignore NOTIFICATIONS_USE_RING_VOLUME.
Do not take NOTIFICATIONS_USE_RING_VOLUME setting into account now
that it has been deprecated. STREAM_NOTIFICATION and STREAM_RING
always use the same volume setting.

Change-Id: Ibf6e5f86133d3781fd9e66455be64582318d93e6
2011-08-02 16:58:10 -07:00
Dianne Hackborn
6311d0a079 Clear the bitmap from the canvas in a lot of places.
Change-Id: I6b2071ac7b348c473b9bdd1b972d095aebbb4fb3
2011-08-02 16:37:58 -07:00
James Dong
245989df7a Merge "Start thread pool for binder calls" 2011-08-02 10:36:44 -07:00
Gloria Wang
9f8e0153b2 Merge "Re-calculate mCurrentTimeUs for MP3 CBR seek because we might have called Resync() which changes mCurrentPos. For bug 4869063." 2011-08-02 09:56:51 -07:00
Gloria Wang
ba5ddf5cfc Merge "Fix ordering assumption of argument evaluation." 2011-08-02 09:22:05 -07:00
Yu Shan Emily Lau
81d7035b9e Merge "Replace the hard coded video recording properties with media profile." 2011-08-02 08:39:01 -07:00
Wu-cheng Li
bb1e275c0e Pass camera frame metadata from camera service to Java.
bug:4460717
Change-Id: I2fae6e1dfca6b8f3a5ee5716fc7817f5417bf657
2011-08-02 15:48:41 +08:00
Yu Shan Emily Lau
55c1ad9994 Replace the hard coded video recording
properties with media profile.

Change-Id: I431838839f52431e68183eebe7ebce382a44bdb7
2011-08-01 23:52:47 -07:00
James Dong
449eef989e Start thread pool for binder calls
Change-Id: Ie67f54ba06d7fdb42bcb041c1e0a50d8477ae423
related-to-bug: 5095635
2011-08-01 18:24:49 -07:00
Mathias Agopian
34e1fb1ee2 Merge "connect/disconnect is now called from our EGL wrapper" 2011-08-01 16:36:02 -07:00
Mathias Agopian
982d2da4ee connect/disconnect is now called from our EGL wrapper
the original connect/disconnect hooks are deprecated
and replace by api_connect/api_disconnect. the original
hooks are no no-ops.
api_connect/api_disconnect is now only called from the
android framework.

Bug: 5057915
Change-Id: I8ca64cd1acd6cabf915bf54689ec2e5f6dfa495a
2011-08-01 14:06:20 -07:00
Gloria Wang
8f164fe847 Fix ordering assumption of argument evaluation.
No specific order is specified in the C++ standard, but the order of
the calls to Parcel read commands matters.  Move any calls with multiple
reads to local variables.

Fix for bug 5104979.

Change-Id: I709aa040e990d2659e7a3a089f7a42ae812de9ff
2011-08-01 14:01:29 -07:00
Andreas Huber
5c31583c53 Merge "Fix NALU extraction of unit starts with a 0x00 nalType" 2011-08-01 13:26:11 -07:00
Andreas Huber
05ea63da20 Fix NALU extraction of unit starts with a 0x00 nalType
by not backing up beyond the start of the nal unit.

Change-Id: I5fba9913202de416e634e5f39181be62b72b2469
related-to-bug: 4770290
2011-08-01 13:22:26 -07:00
Andreas Huber
37e477c227 Start playing live streaming HLS content from the first segment.
Also properly signal a "hard" discontinuity, i.e. a possible format change
when a discontinuity is signalled explicitly as part of the playlist.

Change-Id: Ic347d3d11d39b0411c3726a7c723bcf13092b8bc
related-to-bug: 5103155, 5103013
2011-08-01 10:06:25 -07:00
Mike Lockwood
e5d0495d52 MediaScanner: Move genre table management to MediaProvider
Fixes problems introduced with bulk insert support

Bug: 5092877

Change-Id: If3c0c9054d5effe0a1d7a75e85635b41ba1591f5
Signed-off-by: Mike Lockwood <lockwood@android.com>
2011-07-31 17:06:01 -04:00
Kristian Monsen
ad65b46d5f Merge "Part of fix for bug 5065047 build libchromium as a shared lib" 2011-07-29 03:37:49 -07:00
Glenn Kasten
43a5d6e541 Merge "Bug 4599730 Get audio channel count on MediaPlayer" 2011-07-27 14:45:28 -07:00
Gloria Wang
7ffa1ea8cb Re-calculate mCurrentTimeUs for MP3 CBR seek because we might have
called Resync() which changes mCurrentPos.
For bug 4869063.

Change-Id: I5c5876ad81adf0ced1a6e6c18cda6905bf38f731
2011-07-27 14:10:53 -07:00
Glenn Kasten
6ff9b812ab 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
2011-07-27 10:21:09 -07:00
Iliyan Malchev
bbe9cb4f5f libstagefright: add destroyOMXPlugin and use C linkage for symbols
Add a destroyOMXPlugin() to complemenet createOMXPlugin().  Since the latter is
an opaque call into a library, it is not safe to assume that the object thus
returned may be destroyed by calling delete.  This patch will call
destroyOMXPlugin() in libstagefrighthw.so, if the symbol is defined there.
Otherwise, it will default to a delete as before.

Also, prefer C linkage for the symbol names.  Using mangled C++ symbols is not
very safe and makes it hard to grep for those symbols through the code.  We
attempt to locate createOMXPlugin as a C symbol then try it as a mangled C++
one.  We only use C linkage for destroyOMXPlugin since this symbol is new.

Change-Id: Ied23c910486856a0f18056df049c871234797c5c
Signed-off-by: Iliyan Malchev <malchev@google.com>
2011-07-27 10:03:43 -07:00
Eric Laurent
e25e51f5fc Merge "AudioRecord: Fix getInput()" 2011-07-27 08:56:08 -07:00
Kristian Monsen
132b21899b Merge "Fix for bug 5049763 HLS: Cookies set in main playlist request aren't being passed to subsequent HTTP requests" 2011-07-27 05:33:33 -07:00