OSDN Git Service

android-x86/frameworks-av.git
13 years agoMerge "ATSParser now supports a mode in which PTS is considered to be absolute time"
Andreas Huber [Wed, 31 Aug 2011 16:44:57 +0000 (09:44 -0700)]
Merge "ATSParser now supports a mode in which PTS is considered to be absolute time"

13 years agoMerge "fix Surface positions are not floats"
Mathias Agopian [Wed, 31 Aug 2011 02:24:04 +0000 (19:24 -0700)]
Merge "fix Surface positions are not floats"

13 years agofix Surface positions are not floats
Mathias Agopian [Wed, 31 Aug 2011 01:51:54 +0000 (18:51 -0700)]
fix Surface positions are not floats

Added Surface.setPosition(float, float) which allows to set a surface's
position in float.

Bug: 5239859
Change-Id: I903aef4ad5b5999142202fb8ea30fe216d805711

13 years agoATSParser now supports a mode in which PTS is considered to be absolute time
Andreas Huber [Tue, 30 Aug 2011 23:06:28 +0000 (16:06 -0700)]
ATSParser now supports a mode in which PTS is considered to be absolute time

i.e. PTS 0 <=> media time 0

Change-Id: If10a0f98c129b95e8430dc419664b1def92e547e

13 years agoMerge "226483: A2DP connected, but music out to speaker"
Eric Laurent [Tue, 30 Aug 2011 17:51:54 +0000 (10:51 -0700)]
Merge "226483: A2DP connected, but music out to speaker"

13 years ago226483: A2DP connected, but music out to speaker
Eric Laurent [Tue, 30 Aug 2011 17:18:54 +0000 (10:18 -0700)]
226483: A2DP connected, but music out to speaker

When the A2DP headset is connected, there is a possible
race condition when the audio tracks are moved from
the mixer thread attached to the speaker output to the thread
attached to A2DP output.
As the request to clear the stream type to output mapping cache in
the client process is asynchronous, it is possible that the flag
indicating to the client audio track to re-create the IAudioTrack
on the new thread is processed before the cache is invalidated.
In this case, the track will be attached to the old thread and
music will continue playing over the device speaker instead of being
redirected to A2DP headset.

Change-Id: Ib2ce1eb5320eaff83287b93779061bf4e7a330df

13 years agoMerge "Bug 5156756 Fix AAC ADTS header size computation"
Jean-Michel Trivi [Tue, 30 Aug 2011 16:06:36 +0000 (09:06 -0700)]
Merge "Bug 5156756 Fix AAC ADTS header size computation"

13 years agoBug 5156756 Fix AAC ADTS header size computation
Jean-Michel Trivi [Mon, 29 Aug 2011 21:06:51 +0000 (14:06 -0700)]
Bug 5156756 Fix AAC ADTS header size computation

This previous frame size computation code had two incorrect
 assumptions:
 1/ the ADTS frame length value already contains the header size
 2/ the ADTS header is not of fixed size: it is 2 bytes bigger
  if it contains the CRC value.
For 1/, the code worked because when the header size was added
 to the frame size, the + operator is of stronger precedence
 than the ? operator, so the size added was always 0 (instead
 of ADTS_HEADER_LENGTH.
For 2/, the code worked as long as there was no CRC in the ADTS
 data.

The fix consists in:
 - documenting what the frame length computation code returns
 - fixing the frame length computation
 - when computing the frame length, also returning the header
  size so the correct data can be sent to the decoder.

Change-Id: I92df72a9e531f594f762e63d62f9dee7b0109904

13 years agoMerge "Audioflinger: reverse logic of BT NREC indication"
Eric Laurent [Mon, 29 Aug 2011 22:12:41 +0000 (15:12 -0700)]
Merge "Audioflinger: reverse logic of BT NREC indication"

13 years agoAudioflinger: reverse logic of BT NREC indication
Eric Laurent [Mon, 29 Aug 2011 19:42:48 +0000 (12:42 -0700)]
Audioflinger: reverse logic of BT NREC indication

The interpretation of BT NREC by AudioFlinger to enable
or disable AEC and NS was wrong: NREC to ON (default) means
the phone (Audio Gateway) must enable local AEC and NS.

Change-Id: I88a264e7fc9831c43bbace4f6b585baec73f2006

13 years agoReturn an error to the client instead of asserting if decoder instantiation fails
Andreas Huber [Mon, 29 Aug 2011 20:01:23 +0000 (13:01 -0700)]
Return an error to the client instead of asserting if decoder instantiation fails

after a surface change.

Change-Id: Ic7758cbeb107032db68a1c3b8e2984710a12dd8b
related-to-bug: 5212725

13 years agoMerge "Signal errors to the client instead of asserting in ACodec."
Andreas Huber [Mon, 29 Aug 2011 15:10:56 +0000 (08:10 -0700)]
Merge "Signal errors to the client instead of asserting in ACodec."

13 years agoMerge "Default W, H allowed in SurfaceMediaSource dequeue"
Pannag Sanketi [Sun, 28 Aug 2011 21:40:26 +0000 (14:40 -0700)]
Merge "Default W, H allowed in SurfaceMediaSource dequeue"

13 years agoMerge "Modify enum value of OMX_COLOR_FormatAndroidOpaque"
Pannag Sanketi [Sat, 27 Aug 2011 03:05:58 +0000 (20:05 -0700)]
Merge "Modify enum value of OMX_COLOR_FormatAndroidOpaque"

13 years agoMerge "Fixing small syntax error in MPEG4 logging"
Pannag Sanketi [Sat, 27 Aug 2011 03:01:46 +0000 (20:01 -0700)]
Merge "Fixing small syntax error in MPEG4 logging"

13 years agoModify enum value of OMX_COLOR_FormatAndroidOpaque
Pannag Sanketi [Sat, 27 Aug 2011 02:34:49 +0000 (19:34 -0700)]
Modify enum value of OMX_COLOR_FormatAndroidOpaque

The enum value chosen earlier had a conflict with one of the vendors.

Change-Id: I47832dd1157447f89324d56e8ab146260cd7927c

13 years agoFixing small syntax error in MPEG4 logging
Pannag Sanketi [Sat, 27 Aug 2011 02:17:20 +0000 (19:17 -0700)]
Fixing small syntax error in MPEG4 logging

Found that the build was breaking when the logging was enabled in
MPEG4Writer. Fixed.

Change-Id: I62c5e6d16b2ecf5644c8d46b9bbcca68a797b223

13 years agoSignal errors to the client instead of asserting in ACodec.
Andreas Huber [Fri, 26 Aug 2011 23:02:19 +0000 (16:02 -0700)]
Signal errors to the client instead of asserting in ACodec.

Also make sure NuPlayer can properly shutdown in certain edge cases.

Change-Id: Iceb16d600d87ba66c802e60e95bf62f66487a453

13 years agoMerge "Support for posting messages and synchronously waiting for a response."
Andreas Huber [Fri, 26 Aug 2011 20:47:26 +0000 (13:47 -0700)]
Merge "Support for posting messages and synchronously waiting for a response."

13 years agoProperly reset the number of frames we think we've written to the audio sink
Andreas Huber [Fri, 26 Aug 2011 18:26:25 +0000 (11:26 -0700)]
Properly reset the number of frames we think we've written to the audio sink

in order to compute the final delay before posting end-of-stream correctly.

Change-Id: I4ff6d7142fdf1ea2d19d12ec78c1e84322d22e5f
related-to-bug: 5216930

13 years agoMerge "Bug 4364249 Play position is 0 after flushing AudioTrack"
Jean-Michel Trivi [Fri, 26 Aug 2011 00:41:46 +0000 (17:41 -0700)]
Merge "Bug 4364249 Play position is 0 after flushing AudioTrack"

13 years agoBug 4364249 Play position is 0 after flushing AudioTrack
Jean-Michel Trivi [Thu, 25 Aug 2011 23:47:23 +0000 (16:47 -0700)]
Bug 4364249 Play position is 0 after flushing AudioTrack

AudioTrack::stop() is not synchronous, so a stop() followed
 by flush(), which is synchronous, will not always report
 a playhead position of 0 after being called.
This CL adds a flag to mark a track as flushed, and report the
 correct playhead position in this state.
Bug 5217011 has been created to address the real issue in the
 future, where flush could be made synchronous, to properly
 address bug 4364249.

Change-Id: Icf989d41a6bcd5985bb87764c287f3edb7e26d12

13 years agoSupport for posting messages and synchronously waiting for a response.
Andreas Huber [Thu, 25 Aug 2011 23:09:06 +0000 (16:09 -0700)]
Support for posting messages and synchronously waiting for a response.

Change-Id: Id6c7a08c34fd5cb6c4632f78ece9e7898b29e52c

13 years agoMerge "When encountering a discontinuity, flush(clear) all content enqueued up to...
Andreas Huber [Thu, 25 Aug 2011 20:40:16 +0000 (13:40 -0700)]
Merge "When encountering a discontinuity, flush(clear) all content enqueued up to that"

13 years agoWhen encountering a discontinuity, flush(clear) all content enqueued up to that
Andreas Huber [Thu, 25 Aug 2011 19:21:26 +0000 (12:21 -0700)]
When encountering a discontinuity, flush(clear) all content enqueued up to that

point except previously enqueued discontinuities.

Change-Id: Id04a559dc062fa4a5c80c599ad74bf81a543de01
related-to-bug: 5201378

13 years agoMerge "Set mSeekNotificationSent as false for RTSP seeking. Fix for bug 5208736."
Gloria Wang [Thu, 25 Aug 2011 17:28:50 +0000 (10:28 -0700)]
Merge "Set mSeekNotificationSent as false for RTSP seeking. Fix for bug 5208736."

13 years agoSet mSeekNotificationSent as false for RTSP seeking.
Gloria Wang [Thu, 25 Aug 2011 17:09:34 +0000 (10:09 -0700)]
Set mSeekNotificationSent as false for RTSP seeking.
Fix for bug 5208736.

Change-Id: Ib1d74608ec289509082d8dcad080769f48098853

13 years agoMerge "When Camera is launched by media recording framework, stagefright controls...
James Dong [Thu, 25 Aug 2011 15:12:11 +0000 (08:12 -0700)]
Merge "When Camera is launched by media recording framework, stagefright controls the stop and release."

13 years agoWhen Camera is launched by media recording framework, stagefright controls the stop...
James Dong [Thu, 25 Aug 2011 02:50:36 +0000 (19:50 -0700)]
When Camera is launched by media recording framework, stagefright controls the stop and release.

Change-Id: Ic79a60dad0f617a845211d3fbe146c1648a71da3
related-to-bug: 5205804

13 years agoMerge "Port setting change should happen before receiving any filled frame."
Chih-Chung Chang [Thu, 25 Aug 2011 01:57:35 +0000 (18:57 -0700)]
Merge "Port setting change should happen before receiving any filled frame."

13 years agoDefault W, H allowed in SurfaceMediaSource dequeue
Pannag Sanketi [Thu, 25 Aug 2011 00:39:09 +0000 (17:39 -0700)]
Default W, H allowed in SurfaceMediaSource dequeue

The client does not have to send (w, h) = (0,0) in dequeuebuffer. It can
set the same w, h as the default width and height.

Change-Id: I8202f90261ccaebbd35ea28c153a7472f01912f1

13 years agoMerge "Testing the GL/ CPU encoding w/ Gralloc buffers"
Pannag Sanketi [Wed, 24 Aug 2011 22:18:07 +0000 (15:18 -0700)]
Merge "Testing the GL/ CPU encoding w/ Gralloc buffers"

13 years agoTesting the GL/ CPU encoding w/ Gralloc buffers
Pannag Sanketi [Fri, 19 Aug 2011 04:53:02 +0000 (21:53 -0700)]
Testing the GL/ CPU encoding w/ Gralloc buffers

This is the test for Gralloc buffers based encoding.
contains a combination of two main changes:

1. GL based encoding tests added to SurfaceMediaSource_test

2. SurfaceMediaSource ::read() colorformat

The SurfaceMediaSource::getformat() sets it to OMX_COLOR_FormatAndroidOpaque.
The omx encoder needs to interpret that colorformat and reads the format
from the Gralloc buffers directly

Change-Id: Iee2fe8901384109a4952e1d6c528c59eb01eb5b1

13 years agoMerge "To make SniffMP3() more concrete so that we can remove false-positve responses...
James Dong [Wed, 24 Aug 2011 01:06:16 +0000 (18:06 -0700)]
Merge "To make SniffMP3() more concrete so that we can remove false-positve responses from MPEG-PS streams."

13 years agoMerge "We were accidentally sending out an output buffer before the final port settin...
Andreas Huber [Tue, 23 Aug 2011 17:32:35 +0000 (10:32 -0700)]
Merge "We were accidentally sending out an output buffer before the final port settings change"

13 years agoWe were accidentally sending out an output buffer before the final port settings...
Andreas Huber [Tue, 23 Aug 2011 17:21:34 +0000 (10:21 -0700)]
We were accidentally sending out an output buffer before the final port settings change

Change-Id: I4de0d3c377bb12e59524ed370ab3ed0b9a9b70a6
related-to-bug: 5122512

13 years agoMerge "AudioFlinger: add check for audio HAL init failure"
Eric Laurent [Tue, 23 Aug 2011 15:42:59 +0000 (08:42 -0700)]
Merge "AudioFlinger: add check for audio HAL init failure"

13 years agoAudioFlinger: add check for audio HAL init failure
Eric Laurent [Tue, 23 Aug 2011 15:25:03 +0000 (08:25 -0700)]
AudioFlinger: add check for audio HAL init failure

Do not call audio HAL functions on the primary HW interface
if it could not be initialized properly.

Change-Id: If54059c8fd188d6c1686f9e0439994fe9411478a

13 years agoPort setting change should happen before receiving any filled frame.
Chih-Chung Chang [Mon, 22 Aug 2011 12:11:31 +0000 (20:11 +0800)]
Port setting change should happen before receiving any filled frame.

Change-Id: I12a54b80e7ef958b6d451b7add110d38f05ec439

13 years agoThe MatroskaExtractor will now publish a different mime-type "video/webm" if
Andreas Huber [Mon, 22 Aug 2011 20:21:26 +0000 (13:21 -0700)]
The MatroskaExtractor will now publish a different mime-type "video/webm" if

the doctype of the matroska file indicates that it is a webm file.

Change-Id: I467f597690a841043ecd11d2a2cae93351820f1b
related-to-bug: 5042137

13 years agoMerge "Remove useAndroidNativeBuffer(2) warning message."
Chih-Chung Chang [Mon, 22 Aug 2011 02:19:01 +0000 (19:19 -0700)]
Merge "Remove useAndroidNativeBuffer(2) warning message."

13 years agoMerge "Fix for 4142219 Don't hard code platform-specific limitations (Jni/ Java)"
Rajneesh Chowdury [Fri, 19 Aug 2011 22:01:11 +0000 (15:01 -0700)]
Merge "Fix for 4142219 Don't hard code platform-specific limitations (Jni/ Java)"

13 years agoMerge "Stagefright: fix a compiler warning"
Jamie Gennis [Fri, 19 Aug 2011 21:36:10 +0000 (14:36 -0700)]
Merge "Stagefright: fix a compiler warning"

13 years agoFix for 4142219 Don't hard code platform-specific limitations (Jni/ Java)
Rajneesh Chowdury [Fri, 12 Aug 2011 23:43:37 +0000 (16:43 -0700)]
Fix for 4142219 Don't hard code platform-specific limitations (Jni/ Java)

Also fixes 5118207 add other video codec support for video editor export.

Change-Id: If72427173bd8ff684af07ba00f4425c1deef29c6

13 years agoRaise the maximum input buffer size for the vpx video decoder to 256KB
Andreas Huber [Fri, 19 Aug 2011 17:30:58 +0000 (10:30 -0700)]
Raise the maximum input buffer size for the vpx video decoder to 256KB

Change-Id: I0411763829bf186d1b3b679fa72c9051524506b4
related-to-bug: 5169641

13 years agoMerge "When switching surface, do not set mSeekNotificationSent as true, because...
Gloria Wang [Thu, 18 Aug 2011 22:14:36 +0000 (15:14 -0700)]
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."

13 years agoWhen switching surface, do not set mSeekNotificationSent as true,
Gloria Wang [Thu, 18 Aug 2011 21:52:36 +0000 (14:52 -0700)]
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

13 years agoMerge "Some decoders require more gentle treatment"
Andreas Huber [Thu, 18 Aug 2011 18:46:18 +0000 (11:46 -0700)]
Merge "Some decoders require more gentle treatment"

13 years agoSome decoders require more gentle treatment
James Dong [Fri, 12 Aug 2011 00:38:35 +0000 (17:38 -0700)]
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

13 years agoDisable vorbis-auto-looping if the audio sink used is not realtime, i.e. recording.
Andreas Huber [Thu, 18 Aug 2011 17:53:23 +0000 (10:53 -0700)]
Disable vorbis-auto-looping if the audio sink used is not realtime, i.e. recording.

Change-Id: I982e740e8488ff8717ca5f081db9def55aabc9ec
related-to-bug: 5179033

13 years agoRemove useAndroidNativeBuffer(2) warning message.
Chih-Chung Chang [Thu, 18 Aug 2011 08:56:36 +0000 (16:56 +0800)]
Remove useAndroidNativeBuffer(2) warning message.

Change-Id: I3e9765e7271d80fda302e521501720bf8c13e5c7

13 years agoTo make SniffMP3() more concrete so that we can remove false-positve responses from...
Dongwon Kang [Thu, 18 Aug 2011 06:24:27 +0000 (15:24 +0900)]
To make SniffMP3() more concrete so that we can remove false-positve responses from MPEG-PS streams.

Note: current resync logic keeps searching mp3 frames until it meets a
valid one. This resync logic works well with seek() operation, but in
SniffMP3(), this may cause false-positive classification for the
following MPEG-PS file format.
  A possible MPEG-PS video file:
      [PS header]...[mp3 frame][mp3 frame] ...
  MP3 files:
      [ID3 tag][mp3 frame][mp3 frame] ...

BUG: 5104562
Change-Id: Idd5020723f7bdb2fefc2a63fc8651580fd644399

13 years agoMerge "Add new camera focus mode FOCUS_MODE_CONTINUOUS_PICTURE."
Wu-cheng Li [Thu, 18 Aug 2011 05:24:53 +0000 (22:24 -0700)]
Merge "Add new camera focus mode FOCUS_MODE_CONTINUOUS_PICTURE."

13 years agoMerge "Make sure we have all the sample table metadata before declaring a track valid."
Andreas Huber [Wed, 17 Aug 2011 20:21:40 +0000 (13:21 -0700)]
Merge "Make sure we have all the sample table metadata before declaring a track valid."

13 years agoMake sure we have all the sample table metadata before declaring a track valid.
Andreas Huber [Wed, 17 Aug 2011 20:03:51 +0000 (13:03 -0700)]
Make sure we have all the sample table metadata before declaring a track valid.

Change-Id: I2dfbc3e6017b5cd264e4cccfa47d19047b2e7f31
related-to-bug: 5178976

13 years agoMerge "Don't time out prematurely for video encoding waiting for output buffers"
James Dong [Wed, 17 Aug 2011 18:14:49 +0000 (11:14 -0700)]
Merge "Don't time out prematurely for video encoding waiting for output buffers"

13 years agoAdd new camera focus mode FOCUS_MODE_CONTINUOUS_PICTURE.
Wu-cheng Li [Tue, 16 Aug 2011 13:14:16 +0000 (21:14 +0800)]
Add new camera focus mode FOCUS_MODE_CONTINUOUS_PICTURE.

The API is still hidden.

bug:5086125
Change-Id: I69268a95ad6aae249771d3a8dfb423ffe2d87081

13 years agoMerge "Testing for bug 5122864 libwebcore related libraries increased by 3MB in ICS...
Kristian Monsen [Wed, 17 Aug 2011 09:41:00 +0000 (02:41 -0700)]
Merge "Testing for bug 5122864 libwebcore related libraries increased by 3MB in ICS vs HCMR2"

13 years agoMerge "Error handling in ACodec and Nuplayer."
Andreas Huber [Tue, 16 Aug 2011 21:37:51 +0000 (14:37 -0700)]
Merge "Error handling in ACodec and Nuplayer."

13 years agoError handling in ACodec and Nuplayer.
Andreas Huber [Tue, 16 Aug 2011 20:48:44 +0000 (13:48 -0700)]
Error handling in ACodec and Nuplayer.

Codec errors (and codec not found errors) now trigger a controlled shutdown
of playback and signal errors to the MediaPlayer client.

Change-Id: I2ee23ff2a1422d05a1a21e50ecb87d7c7ab958cc

13 years agoProperly initialize some instance variables.
Andreas Huber [Tue, 16 Aug 2011 19:41:41 +0000 (12:41 -0700)]
Properly initialize some instance variables.

Change-Id: I190b889be343dca14fe8109528be14cc3cdd4c34

13 years agoDon't time out prematurely for video encoding waiting for output buffers
James Dong [Sun, 14 Aug 2011 23:14:12 +0000 (16:14 -0700)]
Don't time out prematurely for video encoding waiting for output buffers

o For timelapse video encoding, the timelapse between two neighoring
  input frames could be very long

Change-Id: I2b6f9c392f2237deae71c894efc7fc3692431796
related-to-bug: 5160548

13 years agoTesting for bug 5122864 libwebcore related libraries increased by 3MB in ICS vs HCMR2
Kristian Monsen [Tue, 16 Aug 2011 15:31:05 +0000 (16:31 +0100)]
Testing for bug 5122864 libwebcore related libraries increased by 3MB in ICS vs HCMR2

Reenabling chromium as a shread lib

Change-Id: I5f7abe61624d812c5781c4a453f587e744bc082d

13 years agoIssue 5081351: isWiredHeadsetOn() permission.
Eric Laurent [Wed, 3 Aug 2011 00:41:11 +0000 (17:41 -0700)]
Issue 5081351: isWiredHeadsetOn() permission.

AudioManager.isWiredHeadsetOn() should not require permission MODIFY_AUDIO_SETTINGS.
Remove permission checks on all getters in audio policy manager as permission enforcement
is really usefull for setters.
Also deprecate AudioManager.isWiredHeadsetOn() which name and implementation are deceptive.

Change-Id: I38f8df7c26c0d417bf0e2b74e4c11c2d143f2ecd

13 years agoDon't remove effects on session 0
Marco Nelissen [Fri, 12 Aug 2011 21:14:39 +0000 (14:14 -0700)]
Don't remove effects on session 0

b/5159902
Change-Id: Id6f29fb1c687069f7480dd81d4745a558f202226

13 years agoAdd a null check to handle failure of android::createPlayer
Jason Simmons [Fri, 12 Aug 2011 20:46:55 +0000 (13:46 -0700)]
Add a null check to handle failure of android::createPlayer

Change-Id: Id56bd0c16104e46d8dc71f13d8a44aefe251fad4

13 years agoFix the software AAC decoder's AAC+ detection to ignore malformed frames
Andreas Huber [Fri, 12 Aug 2011 18:38:24 +0000 (11:38 -0700)]
Fix the software AAC decoder's AAC+ detection to ignore malformed frames

at the beginning of the stream.

Change-Id: Ib990848c696896e7d43c80dec8119dec35704b74
related-to-bug: 5122512

13 years agoStagefright: fix a compiler warning
Jamie Gennis [Fri, 12 Aug 2011 00:59:24 +0000 (17:59 -0700)]
Stagefright: fix a compiler warning

Change-Id: Ia6b2027dfe80960450156d918bdd7fe1567cafea

13 years agoMerge "Audio effects: track CPU and memory use separately"
Eric Laurent [Thu, 11 Aug 2011 21:40:04 +0000 (14:40 -0700)]
Merge "Audio effects: track CPU and memory use separately"

13 years agoAudio effects: track CPU and memory use separately
Eric Laurent [Wed, 10 Aug 2011 17:37:50 +0000 (10:37 -0700)]
Audio effects: track CPU and memory use separately

Before this change, CPU and memory usage for an audio effect were
registered and checked against the limit by audio policy manager
upon effect instantiation. Even if an effect was not enabled
it would prevent another effect to be created if the CPU load budget
was exceeded, which was too restrictive.

This change adds a method to register/unregister CPU load only when
an effect is enabled or disabled.
It also adds a mechanism to place all effects on the global output mix
in suspend state (disabled) when an effect is enabled on a specific session.
This will allow applications using session effects to have the priority
over others using global effects.

Also fixes some issues with suspend/restore mechanism:
- avoid taking actions when an effect is disconnected and was not enabled.
- do not remove a session from the suspended sessions list when corresponding
effect chain is destroyed.

Change-Id: I5225278aba1ae13d0d0997bfe26a0c9fb46b17d3

13 years agoMerge "Testing for bug 5122864 libwebcore related libraries increased by 3MB in ICS...
Kristian Monsen [Thu, 11 Aug 2011 10:02:29 +0000 (03:02 -0700)]
Merge "Testing for bug 5122864 libwebcore related libraries increased by 3MB in ICS vs HCMR2"

13 years agoMerge "To reduce the bytes need to be buffered before start playing the streaming...
Gloria Wang [Wed, 10 Aug 2011 21:52:36 +0000 (14:52 -0700)]
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."

13 years agoTo reduce the bytes need to be buffered before start playing the streaming video.
Gloria Wang [Wed, 10 Aug 2011 21:19:05 +0000 (14:19 -0700)]
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

13 years agoMerge "When using "secure input buffer mode" we instantiate a different OMX component"
Andreas Huber [Wed, 10 Aug 2011 20:03:29 +0000 (13:03 -0700)]
Merge "When using "secure input buffer mode" we instantiate a different OMX component"

13 years agoMerge "Revert "Notify the OMX component that it's going to be used in "secure" mode.""
Andreas Huber [Wed, 10 Aug 2011 20:03:24 +0000 (13:03 -0700)]
Merge "Revert "Notify the OMX component that it's going to be used in "secure" mode.""

13 years agoWhen using "secure input buffer mode" we instantiate a different OMX component
Andreas Huber [Wed, 10 Aug 2011 19:53:59 +0000 (12:53 -0700)]
When using "secure input buffer mode" we instantiate a different OMX component

We form the new component name by appending the suffix ".secure".

Change-Id: I509848b50ae92edb179a941493ca611f923213ec

13 years agoRevert "Notify the OMX component that it's going to be used in "secure" mode."
Andreas Huber [Wed, 10 Aug 2011 19:45:24 +0000 (12:45 -0700)]
Revert "Notify the OMX component that it's going to be used in "secure" mode."

This reverts commit 7616178271e95f009452a21ea45e7225997dc27a.

13 years agoMerge "Fix initial 0 duration video sample in the recorded videos"
James Dong [Wed, 10 Aug 2011 18:47:38 +0000 (11:47 -0700)]
Merge "Fix initial 0 duration video sample in the recorded videos"

13 years agoMerge "To support for switching from a non-null surface/ surface texture to a null...
Gloria Wang [Wed, 10 Aug 2011 16:28:50 +0000 (09:28 -0700)]
Merge "To support for switching from a non-null surface/ surface texture to a null one, and vice versa. Fix for bug 5137445."

13 years agoTesting for bug 5122864 libwebcore related libraries increased by 3MB in ICS vs HCMR2
Kristian Monsen [Wed, 10 Aug 2011 14:08:27 +0000 (15:08 +0100)]
Testing for bug 5122864 libwebcore related libraries increased by 3MB in ICS vs HCMR2

Trying to build with static libchromium on the build server.

Change-Id: Ib88ce1803f3d36ef97a627c1454ed83239a3afee

13 years agoMerge "Network traffic accounting for chromium stack support in mediaserver."
Ashish Sharma [Wed, 10 Aug 2011 06:21:11 +0000 (23:21 -0700)]
Merge "Network traffic accounting for chromium stack support in mediaserver."

13 years agoTo support for switching from a non-null surface/ surface texture to
Gloria Wang [Tue, 9 Aug 2011 22:29:34 +0000 (15:29 -0700)]
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

13 years agoMerge changes Ie06e73e5,I7ac6b5b0
Mathias Agopian [Tue, 9 Aug 2011 22:23:19 +0000 (15:23 -0700)]
Merge changes Ie06e73e5,I7ac6b5b0

* changes:
  free all buffers when ANativeWindow::disconnect is called
  return correct value from query after connecting a surface

13 years agoFix initial 0 duration video sample in the recorded videos
James Dong [Tue, 9 Aug 2011 18:14:57 +0000 (11:14 -0700)]
Fix initial 0 duration video sample in the recorded videos

o Patch suggested by pmehendale@nvidia.com

Change-Id: Ibf516ba83b721b0d0ab55bb7637fe9b7b2958214
related-to-bug: 5117434

13 years agoMerge "Do not release recording frames if camera is gone"
James Dong [Tue, 9 Aug 2011 18:14:06 +0000 (11:14 -0700)]
Merge "Do not release recording frames if camera is gone"

13 years agoKeep effects sessions active when the caller dies.
Marco Nelissen [Tue, 2 Aug 2011 20:33:41 +0000 (13:33 -0700)]
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

13 years agoreturn correct value from query after connecting a surface
Mathias Agopian [Tue, 9 Aug 2011 02:14:03 +0000 (19:14 -0700)]
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: 51373665121607
Change-Id: I7ac6b5b0daa876638f6bed7c20f286a6e6d984f6

13 years agoNotify the OMX component that it's going to be used in "secure" mode.
Andreas Huber [Mon, 8 Aug 2011 22:28:21 +0000 (15:28 -0700)]
Notify the OMX component that it's going to be used in "secure" mode.

Change-Id: Id87c4b295eb38f7d24045918e73df298d7b842f9
related-to-bug: 5137212

13 years agoMerge "AudioFlinger: protect input/output stream access"
Eric Laurent [Mon, 8 Aug 2011 16:31:42 +0000 (09:31 -0700)]
Merge "AudioFlinger: protect input/output stream access"

13 years agoAudioFlinger: protect input/output stream access
Eric Laurent [Sun, 7 Aug 2011 23:32:26 +0000 (16:32 -0700)]
AudioFlinger: protect input/output stream access

Some methods would not check that the output orinput stream of a thread
was still valid before calling functions on its interface.
This could cause a crash if those methods where called while the output or
input was being closed by another thread.

Make sure that the output or input stream pointer is cleared before closing the
stream.
Always check that the output or input pointer is not null before calling
functions at the stream interface.
Generalize the use of initCheck() method to verify that the output or input
stream is not null.

Change-Id: I9d9ca6b744d011bcf3a7bbacb4a581ac1477bfa5

13 years agoDo not release recording frames if camera is gone
James Dong [Sat, 6 Aug 2011 00:19:29 +0000 (17:19 -0700)]
Do not release recording frames if camera is gone

Change-Id: Ia6038c1a3ca17207e43a955ec47c42cdff1f5a76
related-to-bug: 5129465

13 years agoNetwork traffic accounting for chromium stack support in mediaserver.
Ashish Sharma [Fri, 8 Jul 2011 00:57:05 +0000 (17:57 -0700)]
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

13 years agoMerge "Close the DRM session in the destructor of ChromiumHTTPDataSource. Fix for...
Gloria Wang [Thu, 4 Aug 2011 23:32:10 +0000 (16:32 -0700)]
Merge "Close the DRM session in the destructor of ChromiumHTTPDataSource. Fix for bug 5015079."

13 years agoClose the DRM session in the destructor of ChromiumHTTPDataSource.
Gloria Wang [Thu, 4 Aug 2011 23:01:35 +0000 (16:01 -0700)]
Close the DRM session in the destructor of ChromiumHTTPDataSource.
Fix for bug 5015079.

Change-Id: I45fcf6ff8b50e62f2812930eaf68c00206cb7e52

13 years agoMerge "resolved conflicts for merge of 845fdba7 to master"
Gloria Wang [Thu, 4 Aug 2011 22:33:12 +0000 (15:33 -0700)]
Merge "resolved conflicts for merge of 845fdba7 to master"

13 years agoresolved conflicts for merge of 845fdba7 to master
Gloria Wang [Thu, 4 Aug 2011 22:13:14 +0000 (15:13 -0700)]
resolved conflicts for merge of 845fdba7 to master

Change-Id: I716b6ceb03bd733f9e7f49008112c8f2c53ad9ce

13 years agoEliminate superfluous memcpys by wrapping an ABuffer in a MediaBuffer
Andreas Huber [Thu, 4 Aug 2011 22:05:17 +0000 (15:05 -0700)]
Eliminate superfluous memcpys by wrapping an ABuffer in a MediaBuffer

Change-Id: I1313f117cd7cdfaf7d6ec25413a0b4b8ea495037
related-to-bug: 5122973

13 years agoam 8a6fb50d: am 4e197ea8: am e15a73ee: Merge "Bug fixes in OMA DRM v1 Forward Lock...
Gloria Wang [Thu, 4 Aug 2011 21:47:43 +0000 (14:47 -0700)]
am 8a6fb50d: am 4e197ea8: am e15a73ee: Merge "Bug fixes in OMA DRM v1 Forward Lock Agent"

* commit '8a6fb50d69ec40a413b117bc9145a97ec427852f':
  Bug fixes in OMA DRM v1 Forward Lock Agent

13 years agoRestart HLS streaming from the bottom of the playlist if we miss the boat on the
Andreas Huber [Thu, 4 Aug 2011 19:02:47 +0000 (12:02 -0700)]
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

13 years agoBug fixes in OMA DRM v1 Forward Lock Agent
Henrik B Andersson [Mon, 21 Feb 2011 13:22:08 +0000 (14:22 +0100)]
Bug fixes in OMA DRM v1 Forward Lock Agent

A couple of fixes in the Forward Lock Agent.
The DRM Framework isn't thread safe so the Forward Lock Agent needs
to protect the private structures.
Base64-encoded content with LF-only instead of CRLF line breaks is now
accepted.
A fix for non-standard boundary characters.
The debug prints are also turned off as default.

Change-Id: I8ab417231380fbe1c371d18a147773ceabc6f69f