| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
| |
Fixes problem reading large thumbnails via PTP
Bug: 4065217
Change-Id: I643672512829c93ab0827091f39103dbb1918071
Signed-off-by: Mike Lockwood <lockwood@android.com>
|
|
|
|
|
|
|
| |
Modifies Stagefright to verify that there is a hardware-protected path
to video sink for DRM content.
Change-Id: I18b8741390e803a05a88c7f180b860a24ba88a10
|
|\
| |
| |
| | |
are not error logs from non-DRMed content's point of view. - Add more mutex lock to avoid crash by multi-thread calls. - Fix for bug 4050039" into honeycomb-mr1
|
| |
| |
| |
| |
| |
| |
| |
| | |
are not error logs from non-DRMed content's point of view.
- Add more mutex lock to avoid crash by multi-thread calls.
- Fix for bug 4050039
Change-Id: I52fed22069f0cda6c4ac6a5363469168c797a33b
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This change fixes the stability problems experienced when using
a bluetooth headset supporting both A2DP and SCO. Problems occur
when starting the video chat at which time the A2DP output is being
stopped to start SCO. At that time, active AudioTracks are invalidated
by AudioFlinger so that a new AudioTrack binder interface can be
recreated by the client process on the new mixer thread with correct parameters.
The problem was that the process to restore the binder interface was not
protected against concurrent requests which caused 2 binder interfaces
to be created sometimes. This could lead to permanent client deadlock
if one of the client threads was waiting for a condition of the first
created binder interface while the second one was created (as the AudioFlinger
would only signal conditions on the last one created).
This concurrent request situation is more likely to happen when a client
uses the JAVA AudioTrack as the JNI implementation uses simultaneously the
native AudioTrack callback and write push mechanisms. By doing so, the code
that checks if the binder interface should be restored (in obtainBuffer()) is
much more likely to be called concurrently from two different threads.
The fix consists in protecting the critical binder interface restore phase
with a flag in the AudioTrack control block. The first thread acting upon the binder
interface restore request will raise the flag and the second thread will just wait for
a condition to be signaled when the restore process is complete.
Also protected all accesses to the AudioTrack control block by a mutex to prevent
access while the track is being destroyed and restored. If a mutex cannot be held
(e.g because we call a callback function), acquire a strong reference on the IAudioTrack
to prevent its destruction while the cblk is being accessed.
Modified AudioTrack JNI to use GetByteArrayElements() instead of
GetPrimitiveArrayCritical() when writing audio buffers. Entering a critical section would
cause the JNI to abort if a mediaserver crash occurs during a write due to the AudioSystem
callback being called during the critical section when media server process restarts.
Anyway with current JNI implementation, either versions do not copy data most of the times
and the criticial version does not guaranty no data copy.
The same modifications have been made to AudioRecord.
Change-Id: Idc5aa711a04c3eee180cdd03f44fe17f3c4dcb52
|
| |
| |
| |
| |
| |
| | |
bug - 4025673
Change-Id: Ie1c4cf18c06032f9b89cc08e5be25d38c0f76aa1
|
| |
| |
| |
| |
| |
| | |
bug - 3470617
Change-Id: I328e92bc1b2aca72e5856703dae00f957f40bc27
|
|/
|
|
|
|
|
|
|
|
|
| |
must have the same mode
For some mp3 files, the mode can be changed from one audio frame to another. Without
the capability to switch modes, the decoded audio may have lots of artifacts.
bug - 3253310
Change-Id: Id57bb1f204642d15e38a800c72214f6794cfaa37
|
|\
| |
| |
| | |
currently used audio device - The devices are separated as speaker and other audio devices - Provide the collected data to battery application through pullBatteryData()"
|
| |
| |
| |
| |
| |
| |
| |
| | |
- To track the currently used audio device
- The devices are separated as speaker and other audio devices
- Provide the collected data to battery application through pullBatteryData()
Change-Id: I374c755266b5ac6b1c6c630400f4daf901ea8acc
|
|\ \ |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This change modifies Stagefright's ANativeWindow initialization to use
the new MIN_UNDEQUEUED_BUFFERS query on the ANativeWindow.
Change-Id: I62565945e90ac40de326de77adcfa5577ed89975
Related-Bug: 3356050
|
|\ \ \ |
|
| | |/
| |/|
| | |
| | | |
Change-Id: Ie7701048d0dbd51bf358364014a1b41c894b664c
|
|\ \ \
| | | |
| | | |
| | | | |
maximum size."
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
maximum size.
Change-Id: Ibe720e6148799e32d039ccdb4b269659bc779952
|
|\ \ \ \
| |/ / /
| | | |
| | | | |
discontinuity."
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
If present, rendering will be suppressed until reaching the timestamp.
Change-Id: Ic64bdf4225063c5a4d042ea9809960b843a46d19
related-to-bug: 3489454
|
|\ \ \ \ |
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Do not select A2DP output for media strategy when it is suspended because
BT SCO is active. Media audio will be routed to speakers or SCO HS
(depending on phone state and activity on stream VOICE_CALL) which is less
confusing than not hearing anything while music progress bar is moving.
Change-Id: Iff8cc1ea9bf9bde0b33035c4d91398db0934b836
|
|\ \ \ \ \
| |_|/ / /
|/| | | |
| | | | | |
as in unit of bits"
|
| | |/ /
| |/| |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
unit of bits
bug - 3464899
Change-Id: Idef81a1bd3846d60fc5e4a40c11ce1ba78ebaa23
|
|/ / /
| | |
| | |
| | |
| | |
| | |
| | | |
non-streaming source.
Change-Id: Ib823c2dd28e84f4c49e3676f4e4962a6e006b166
related-to-bug: 3107013
|
|\ \ \ |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Bug: 3488016
Change-Id: Ie5536ad77d42a4d0e8270e0fd87ecb73471bcbbc
|
|\ \ \ \ |
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
bug - 3330679
Change-Id: Idc55aea32746c0c57552c5e15a289681421aa859
|
|/ / / /
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Make sure that NumberEffectsEnabled is decremented at the same time as
SamplesToExitCountBb reaches 0 in Effect_process(). Not doing so
causes NumberEffectsEnabled not being decremented if Effect_setEnabled()
is called after SamplesToExitCountBb reaches 0 and before next Effect_process() is called.
Change-Id: Id827a301f93a5a09ecd9995a0c7d731ef526711a
|
|\ \ \ \ |
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
The problem is that when an AudioRecord using the resampler is restarted,
the resampler state is not reset (as there is no reset function in the resampler).
The consequence is that the first time the record thread loop runs, it calls the resampler
which consumes the remaining data in the input buffer and when this buffer is released
the input index is incremented over the limit.
The fix consists in implementing a reset function in the resampler.
A similar problem was also present for playback but unoticed because the track buffer is always
drained by the mixer when a track stops. The only problem for playback was that the initial
phase fraction was wrong when restarting a track after stop (it was correct after a pause).
Change-Id: Ifc2585d685f4402d29f4afc63f6efd1d69265de3
|
|\ \ \ \ \ |
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
This change makes Stagefright query the gralloc buffer usage flags from
the OMX IL component and passing those flags on to the ANativeWindow.
Change-Id: Ic9af8a9e6df9ff4aadc7355890324d68841bc488
Related-Bug: 3479027
|
|\ \ \ \ \ \
| |/ / / / /
| | | | / /
| |_|_|/ /
|/| | | | |
|
| | |_|/
| |/| |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
This change defines an OpenMAX IL API for querying from the IL component
the gralloc buffer usage flags that should be used to allocate the
buffers. It also adds the Stagefright plumbing for using the new OMX IL
API.
Change-Id: I046b5e7be70ce61e2a921dcdc6e3aa9324d19ea6
Related-Bug: 3479027
|
|\ \ \ \
| |_|_|/
|/| | | |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
This change fixes the error path of
OMXCodec::allocateOutputBuffersFromNativeWindow so that it cancels the
correct number of buffers if a dequeueBuffer operation fails.
Change-Id: Ib7cdcdf24f1718bc070ad218a5980949c0e942eb
|
|\ \ \ \
| |_|/ /
|/| | |
| | | | |
width to be a multiple of 2, not 4."
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
to be a multiple of 2, not 4.
bug - 3379293
Change-Id: I8960737f0604b54ce90dfc26137f1582073b4ab2
|
|\ \ \ \
| | | | |
| | | | |
| | | | | |
stagefright cmdline tool."
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
cmdline tool.
Change-Id: Ic84eeed1679d6bf68c92de0e20d30e7a3c4d410f
|
|\ \ \ \ \
| |_|_|_|/
|/| | | | |
|
| |/ / /
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Change volume attenuation curve to provide more attenuation at
low volume settings, and finer steps at high volume.
See bug entry for link to doc with curve values.
Change-Id: I750548b2161a4c550ef982ba793156e4518119e8
|
|/ / /
| | |
| | |
| | | |
Change-Id: I5b15cf6a15623cf73f007c59143ab5e3fa5a07e8
|
|\ \ \
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
dynamically adding and removing storage units
* commit 'fbd67fec87e425cfbbd80926cec8cd345d134b4c':
DO NOT MERGE: MTP: Add support for dynamically adding and removing storage units
|
| |\ \ \
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
removing storage units
* commit '0600fff9149df3af01e90d4996b70dbc1ee7c135':
DO NOT MERGE: MTP: Add support for dynamically adding and removing storage units
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
BUG: 3402847
Change-Id: I46e90f546a8d72c273cd7f2de2d086bb6dbdc1b8
Signed-off-by: Mike Lockwood <lockwood@android.com>
|
|\ \ \ \ \
| |/ / / /
| | | | /
| |_|_|/
|/| | |
| | | |
| | | | |
to better hide A/V sync issues." into honeycomb
* commit 'cd6828e84220c6bdf92bbca12fcd88a8da76387c':
DO NOT MERGE: Cherry picked hacks to better hide A/V sync issues.
|
| |\ \ \
| | |/ /
| | | |
| | | |
| | | |
| | | |
| | | | |
sync issues." into honeycomb
* commit '2332cd8c675628f3bdd6e46a8dd6da639bd7f76e':
DO NOT MERGE: Cherry picked hacks to better hide A/V sync issues.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Squashed commit of the following:
commit b1732e9b8bfea4c99bd07907c9aac9fcf1e8b264
Author: Andreas Huber <andih@google.com>
Date: Thu Feb 24 12:05:40 2011 -0800
DO NOT MERGE: 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: I4f6eb4e577147bc12ed2e998bea299f4bcfaf936
related-to-bug: 3375737
commit 5e7282cf0b5c7a613da5e65fd6c8cb33a1058f8e
Author: Andreas Huber <andih@google.com>
Date: Fri Feb 11 13:09:36 2011 -0800
DO NOT MERGE: 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: If17c4243546b1c27c8e5ee43941654d0e36f5ee5
related-to-bug: 3431702
Change-Id: Ic3a6be467ff7ad09da04b1d2bb1a692ee38002b4
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
In this case, the MediaExtractor returns ERROR_UNSUPPORTED since our
software MP3 audio decoder may not be able to handle packetized
MP3 audio.
bug - 3377570
Change-Id: I8bb6b3813716b5fa019e318842e8e1908b3c8bf8
|