5156 Commits

Author SHA1 Message Date
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
Eric Laurent
678cc95903 AudioRecord: Fix getInput()
AudioRecord::getInput() was issuing a query to get a new input stream from
audio policy service instead of returning the cached input stream in AudioRecord.

Change-Id: Ice324b7c60bc0898149023797bcb56a72091b9d3
2011-07-26 20:32:28 -07:00
Chih-Chung Chang
17cfcbfa29 Add dependencies for the YV12 color converter change.
Bug: 5061733
Change-Id: Id8227a4f634285323c37498604fe080d986bfb09
2011-07-27 09:18:26 +08:00
Pannag Sanketi
85a315b547 Merge "Fixing up Mediarecorder for MFF" 2011-07-26 15:57:17 -07:00
Mike Lockwood
833bfd2ba5 Merge "MediaScanner: Fix problem with duplicate directory entries in the database" 2011-07-26 10:10:28 -07:00
Jean-Michel Trivi
af20eacc21 Merge "Fix bug 4319552 Java to native channel mask translation" 2011-07-26 09:27:53 -07:00
Mike Lockwood
c6eaa713a3 MediaScanner: Fix problem with duplicate directory entries in the database
Bug: 5078643

Change-Id: I8804ff5bbd729f57be7ff0b17a4b134cafe78c18
Signed-off-by: Mike Lockwood <lockwood@android.com>
2011-07-26 10:57:42 -04:00
Chih-Chung Chang
b33d46cc77 Merge "Add filename and line number in the debug messages." 2011-07-25 18:36:57 -07:00
Pannag Sanketi
cac873bd4a Fixing up Mediarecorder for MFF
For using the MediaRecorder in MFF (Mobile Filter Framework),
getMediaRecorder method in mediarecorder jni was earlier changed to
a non static method. Changed it back to a static method.

Also, added a new source type to MediaRecorder.VideoSource for recording
GRalloc buffers.

Change-Id: I031fad45c12b0ac9602d9e451d4767e95a86234d
2011-07-25 17:38:15 -07:00
Jean-Michel Trivi
d9ae1c573e Fix bug 4319552 Java to native channel mask translation
When creating a new AudioTrack instance, translate from a Java
  channel mask as defined in android.media.AudioFormat to one
  as defined in audio.h which matches industry-standard
  channel mask definitions.

Change-Id: I7eeece8ec2a437977c31f6e82590f9591158144b
2011-07-25 17:06:22 -07:00
Pannag Sanketi
19f773bc96 Merge "Adding Metadata mode to SurfaceMediaSource" 2011-07-25 15:00:16 -07:00
Eric Laurent
234cef8129 Merge "Added APIs for audio preprocessing" 2011-07-25 14:43:05 -07:00
Eric Laurent
0f7f4ece1b Added APIs for audio preprocessing
Added APIs to control pre processes applied on captured audio.
Those APIs are still hidden until reviewed by API council.

Three types of standard pre processes are supported:
- Automatic Gain Control (AGC) by AutomaticGainControl class
- Acoustic Echo Cancellation (AEC) by AcousticEchoCanceler class
- Noise Suppression (NS) by NoiseSuppressor class

A method is added to AudioEffect class to query audio pre processings
applied by default by the platform on a given AudioRecord session ID.

Change-Id: I0b9fceeb8c704dd06319c3b52b85c96fe871d51d
2011-07-25 14:39:00 -07:00