OSDN Git Service

android-x86/frameworks-av.git
10 years agoBack to the old way of making sure that no more buffers are submitted
Andreas Huber [Fri, 8 Nov 2013 18:57:34 +0000 (10:57 -0800)]
Back to the old way of making sure that no more buffers are submitted

to the component while in executing->idle state.

Change-Id: Ia207f0a112025ed0e2c4d62f404afbbfa694cbab
related-to-bug: 1155746311573543

10 years agoMerge "Properly handle executing->idle in GraphicBufferSource" into klp-dev
Andreas Huber [Fri, 8 Nov 2013 16:19:35 +0000 (16:19 +0000)]
Merge "Properly handle executing->idle in GraphicBufferSource" into klp-dev

10 years agoReplace assert with error message
Andy McFadden [Thu, 7 Nov 2013 22:39:03 +0000 (14:39 -0800)]
Replace assert with error message

The failure happens when vendor code sends EMPTY_BUFFER_DONE
twice on the same buffer.  The second time through, we see a slot
that has already been emptied, and get very confused.

This should be handled with an error, not an assertion, so we now
log a stern complaint and carry on.

Bug 11557463

Change-Id: I76e53ff08924bca81afb6980df8e59a6012ff8fe

10 years agoProperly handle executing->idle in GraphicBufferSource
Andreas Huber [Thu, 7 Nov 2013 19:13:27 +0000 (11:13 -0800)]
Properly handle executing->idle in GraphicBufferSource

ACodec has initiated the transition from exectuing->idle and is waiting
for the component to return all buffers so they can be freed.
It's counter productive and with some vendors harmful to submit additional
buffers to the component from this point on.

Change-Id: I332be254a1faf94902c77b5792a373ab447e44d3
related-to-bug: 11573543

10 years agoCamera HAL3/API1: Add support for the partial result quirk.
Eino-Ville Talvala [Fri, 11 Oct 2013 16:51:09 +0000 (09:51 -0700)]
Camera HAL3/API1: Add support for the partial result quirk.

- Camera2Client:
 - Detect partial result quirk
- Camera3Device:
 - Accumulate all partial results together
 - Fire off 3A-only result once all 3A states are available
- FrameProcessorBase:
 - Filter out partials, don't send to listeners
- FrameProcessor:
 - Skip face detect on partials
 - Make sure to only handle a 3A update for a given frame once
 - Trigger AF notifications when AF mode or trigger changes, to
   properly detect all AF transitions.

Bug: 11115603
Change-Id: Iea8aa73c568701562a46071f7ea100624251d10b

10 years agoMerge "audioflinger: fix direct output underrun" into klp-dev
Eric Laurent [Wed, 6 Nov 2013 17:29:58 +0000 (17:29 +0000)]
Merge "audioflinger: fix direct output underrun" into klp-dev

10 years agoaudioflinger: fix direct output underrun
Eric Laurent [Wed, 6 Nov 2013 02:22:08 +0000 (18:22 -0800)]
audioflinger: fix direct output underrun

Underruns on tracks handled by a direct or offloaded
threads were not properly reported to the applications
causing a failure to automatically recover.

Bug: 11535001.
Change-Id: I7a8696b4d646f78b16710addfe7c108d0dd0038d

10 years agoMerge "Notify current video size if available" into klp-dev
Marco Nelissen [Mon, 4 Nov 2013 17:42:11 +0000 (17:42 +0000)]
Merge "Notify current video size if available" into klp-dev

10 years agoMerge "Restore NuPlayer error and EOS handling" into klp-dev
Lajos Molnar [Fri, 1 Nov 2013 23:17:47 +0000 (23:17 +0000)]
Merge "Restore NuPlayer error and EOS handling" into klp-dev

10 years agoNotify current video size if available
Marco Nelissen [Fri, 1 Nov 2013 17:33:18 +0000 (10:33 -0700)]
Notify current video size if available

b/11248101

Change-Id: I0fa3b5592efcf400c86692002267da6825e331ad

10 years agoMerge "AudioFlinger: fix duplicating thread standby." into klp-dev
Eric Laurent [Thu, 31 Oct 2013 22:29:50 +0000 (22:29 +0000)]
Merge "AudioFlinger: fix duplicating thread standby." into klp-dev

10 years agoAudioFlinger: fix duplicating thread standby.
Eric Laurent [Wed, 30 Oct 2013 23:57:06 +0000 (16:57 -0700)]
AudioFlinger: fix duplicating thread standby.

Commit fd47797 fixing issue 11247103 introduced a regression
where the duplicating thread does not exit standby state as
expected. This in turn prevents the tracks sending audio to
other threads to complete their activity cycle normally.

The fix conists in clearing mStandby state also in the specialized
threadLoop_write() method of DuplicatingThread subclass.

Bug: 11451415.
Change-Id: Ie8a92c819a56a2834ea25fa70a8b7b2125721775

10 years agoMerge "camera: Collect stack traces when bad things happen, print with dumpsys" into...
Igor Murashkin [Wed, 30 Oct 2013 21:09:49 +0000 (21:09 +0000)]
Merge "camera: Collect stack traces when bad things happen, print with dumpsys" into klp-dev

10 years agoRestore NuPlayer error and EOS handling
Lajos Molnar [Mon, 28 Oct 2013 21:59:21 +0000 (14:59 -0700)]
Restore NuPlayer error and EOS handling

This was erroneously removed by commit a73c954

Change-Id: I4742339139e770f0181c99d427875897fd60b68e
Signed-off-by: Lajos Molnar <lajos@google.com>
Bug: 11413439

10 years agoMerge "AwesomePlayer: ensure STARTED message works after reset" into klp-dev
Lajos Molnar [Wed, 30 Oct 2013 20:23:17 +0000 (20:23 +0000)]
Merge "AwesomePlayer: ensure STARTED message works after reset" into klp-dev

10 years agoMerge "audioflinger: enable effects after registration if needed" into klp-dev
Eric Laurent [Wed, 30 Oct 2013 01:13:52 +0000 (01:13 +0000)]
Merge "audioflinger: enable effects after registration if needed" into klp-dev

10 years agocamera: Collect stack traces when bad things happen, print with dumpsys
Igor Murashkin [Wed, 23 Oct 2013 23:40:06 +0000 (16:40 -0700)]
camera: Collect stack traces when bad things happen, print with dumpsys

Bug: 11324229
Change-Id: Ic920e170a8f5a389fc139bbf5416c0e3186c7fb6

10 years agoAwesomePlayer: ensure STARTED message works after reset
Lajos Molnar [Mon, 28 Oct 2013 22:01:15 +0000 (15:01 -0700)]
AwesomePlayer: ensure STARTED message works after reset

Change-Id: I06217c07c0b68476cb296fd6151f6a0d8d4e02d0
Signed-off-by: Lajos Molnar <lajos@google.com>
Bug: 11412881

10 years agoAudioFlinger: more fixes for offload audio lost
Eric Laurent [Sat, 26 Oct 2013 01:10:40 +0000 (18:10 -0700)]
AudioFlinger: more fixes for offload audio lost

mStandby being false was not a reliable indication that
something had been written to audio HAL.

Considering the last track in mActiveTracks vector as the
latest activated track was wrong as this is a SortedVector.

Bug: 11247103.
Change-Id: I397d011c5afcdd779def3fe25aaae7669a472cfc

10 years agoAssign blame for playback wakelocks.
Marco Nelissen [Mon, 14 Jan 2013 22:12:05 +0000 (14:12 -0800)]
Assign blame for playback wakelocks.

Set a work source for the playback wakelock, so that playback is
counted against the requesting app instead of the media server.

Cherrypicked from master.

b/9464621

Change-Id: I7329f88a288a95a582a78005a1c3d16a5a611e31

10 years agoMerge "Check for NULL buffer in repeat-latest" into klp-dev
Andy McFadden [Thu, 24 Oct 2013 17:35:43 +0000 (17:35 +0000)]
Merge "Check for NULL buffer in repeat-latest" into klp-dev

10 years agoCheck for NULL buffer in repeat-latest
Andy McFadden [Wed, 23 Oct 2013 20:39:43 +0000 (13:39 -0700)]
Check for NULL buffer in repeat-latest

Repeating the most-recent buffer appears to fail when the producer
disconnects.  This adds a NULL check to avoid crashing.

Bug 10607920

Change-Id: Ied036004425f046fcf9c26303823681f3fddb99e

10 years agoMerge "Fix kAutoRampDurationUs overflow issue" into klp-dev
Vineeta Srivastava [Wed, 23 Oct 2013 19:58:15 +0000 (19:58 +0000)]
Merge "Fix kAutoRampDurationUs overflow issue" into klp-dev

10 years agoMerge "Allow releaseBuffer after flush" into klp-dev
Glenn Kasten [Fri, 18 Oct 2013 22:02:46 +0000 (22:02 +0000)]
Merge "Allow releaseBuffer after flush" into klp-dev

10 years agoFix kAutoRampDurationUs overflow issue
Vineeta Srivastava [Thu, 17 Oct 2013 21:23:00 +0000 (14:23 -0700)]
Fix kAutoRampDurationUs overflow issue

When kAutoRampDurationUs multiplies with mSampleRate, it overflows to int64.
Type cast it to int64 to make sure RampDurationUs properly.

BUg: 11162491
Change-Id: I4f93bc9acc8456e25623a9255ca7a5b206425009

10 years agoAllow releaseBuffer after flush
Glenn Kasten [Fri, 18 Oct 2013 20:00:29 +0000 (13:00 -0700)]
Allow releaseBuffer after flush

After AudioTrack start checks for pending flush,
allow releaseBuffer on any previously obtained buffer.
For example, this can happen if the resampler has obtained
a buffer but not released the whole buffer yet.
Note that the resampler will be reading obsolete data.

Bug: 11285590
Change-Id: I0614fbb62e43604aac3089cce4b7797c87a306b5

10 years agoaudioflinger: fix track terminated before playing
Eric Laurent [Fri, 18 Oct 2013 01:59:26 +0000 (18:59 -0700)]
audioflinger: fix track terminated before playing

When a track is terminated before any audio was written,
we should not send a drain request to the HAL. The drain
will be ignored and we will wait the async callback for ever.

Also fix a potential deadlock by not deleting a track with the
thread mutex held: mPreviousTrack changed from a sp to a raw pointer.

Bug: 11247103.
Change-Id: I0a4b47b099204c7c326d45d700234ab8f72d8eae

10 years agoMerge "Fix flush() followed by start()" into klp-dev
Glenn Kasten [Thu, 17 Oct 2013 23:12:05 +0000 (23:12 +0000)]
Merge "Fix flush() followed by start()" into klp-dev

10 years agoMake sure we get to discover that the cache is sufficiently full again
Andreas Huber [Thu, 17 Oct 2013 20:24:42 +0000 (13:24 -0700)]
Make sure we get to discover that the cache is sufficiently full again

by posting buffering events while in the CACHE_UNDERRUN state.

Change-Id: Ic60c8d57f0ae502aa2b6eec7160dc4224b989604
related-to-bug: 11262689

10 years agoFix flush() followed by start()
Glenn Kasten [Thu, 17 Oct 2013 18:32:39 +0000 (11:32 -0700)]
Fix flush() followed by start()

Bug: 11259166
Change-Id: I72526cdfd4e3ff4b06e6a317e577f57cc285205d

10 years agoMerge "Fix race condition in AudioTrack::pause followed by start" into klp-dev
Glenn Kasten [Thu, 17 Oct 2013 00:59:33 +0000 (00:59 +0000)]
Merge "Fix race condition in AudioTrack::pause followed by start" into klp-dev

10 years agomerge in klp-release (no-op)
Ed Heyl [Thu, 17 Oct 2013 00:42:20 +0000 (17:42 -0700)]
merge in klp-release (no-op)

10 years agoFix race condition in AudioTrack::pause followed by start
Glenn Kasten [Thu, 17 Oct 2013 00:02:13 +0000 (17:02 -0700)]
Fix race condition in AudioTrack::pause followed by start

Bug: 11148722
Change-Id: Iec88f00c8510363d4418e4b8d5b34feb06ecf04d

10 years agoMerge "Camera: don't do hw support check for ZSL" into klp-dev
Zhijun He [Wed, 16 Oct 2013 22:47:47 +0000 (22:47 +0000)]
Merge "Camera: don't do hw support check for ZSL" into klp-dev

10 years agoMerge "AudioTrack: fix head position after restore" into klp-dev
Eric Laurent [Wed, 16 Oct 2013 22:28:33 +0000 (22:28 +0000)]
Merge "AudioTrack: fix head position after restore" into klp-dev

10 years agoAudioTrack: fix head position after restore
Eric Laurent [Wed, 16 Oct 2013 22:12:32 +0000 (15:12 -0700)]
AudioTrack: fix head position after restore

The head position transfered to the new track
by restoreTrack_l() must take into account the frames that
are dropped from the old track to avoid a non recoverable
offset in the playback head position returned to applications.

Bug: 11230062.
Change-Id: I51143a08b95e8f264ed709ae2054360315f2b8b1

10 years agoCamera: don't do hw support check for ZSL
Zhijun He [Wed, 16 Oct 2013 22:09:17 +0000 (15:09 -0700)]
Camera: don't do hw support check for ZSL

Only use camera.disable_zsl_mode to control disable/enable ZSL.

Bug: 11258054
Change-Id: Ibf10b959d0913f7dedb59d89b571e9bf66fe978a

10 years agoAwesomePlayer: fix concurrent pause and teardown
Eric Laurent [Tue, 15 Oct 2013 23:11:24 +0000 (16:11 -0700)]
AwesomePlayer: fix concurrent pause and teardown

There was a race condition if a pause request was received
while we were executing a teardown event. Although we hold
a mutex while processing the teardown event, there is a step
of the prepare sequence where we release the mutex if streaming.
In this case, the pause request is executed but ignored because
the player state is still preparing. At the end of the teardown
event processing we restore previous playback state and resume.

The fix consists in clearing the saved teardown playback state
when a pause request is received while processing a teardown event.

Bug: 11225491.
Change-Id: If0e61855ce5a336322f1ba8e5559bdc190beeb76

10 years agomerge in klp-release history after reset to klp-dev
The Android Automerger [Tue, 15 Oct 2013 13:00:42 +0000 (06:00 -0700)]
merge in klp-release history after reset to klp-dev

10 years agoMake Audio wakelock names less unique.
Narayan Kamath [Mon, 14 Oct 2013 14:03:38 +0000 (15:03 +0100)]
Make Audio wakelock names less unique.

These wakelocks now show up in the client process, where they
might cause wakelock overflows if AudioFlinger threads die often.

The client process should be agnostic of audio flinger threading,
so don't make the wakelock names rely on audioflinger thread names.

Wakelock names now depend only on the audio flinger thread type, and
not the ID itself.

bug: 11200551

Change-Id: Ia1f71b569cb7502d617b77596abc245f461a6ec0

10 years agomerge in klp-release history after reset to klp-dev
The Android Automerger [Mon, 14 Oct 2013 02:20:21 +0000 (19:20 -0700)]
merge in klp-release history after reset to klp-dev

10 years agomerge in klp-release history after reset to klp-dev
The Android Automerger [Sun, 13 Oct 2013 13:01:45 +0000 (06:01 -0700)]
merge in klp-release history after reset to klp-dev

10 years agoSoundPool: handle new audio track event
Eric Laurent [Sun, 13 Oct 2013 00:05:19 +0000 (17:05 -0700)]
SoundPool: handle new audio track event

If the AudioTrack is torn down, SoundPool will never
receive the buffer end event and the track will stay active
for ever.

The fix consists in stopping the AudioTrack when a new audiotrack
event is received.

Bug: 11193583.
Change-Id: I9876eb2a8f75c601368f669acd67b0accf6e2736

10 years agoaudioflinger: enable effects after registration if needed
Eric Laurent [Sat, 12 Oct 2013 23:17:46 +0000 (16:17 -0700)]
audioflinger: enable effects after registration if needed

This fixes a bug where effects were not properly reenabled after
being moved from one playback thread to another. The effect
is enabled but the audio policy manager sees it as disabled.

Bug: 11181933.
Change-Id: I19cac7acbaf61c546e667fd85ed7d4eda1c716d8

10 years agoCamera: Fix deadlock in Camera3OutputStream
Zhijun He [Fri, 11 Oct 2013 23:21:11 +0000 (16:21 -0700)]
Camera: Fix deadlock in Camera3OutputStream

process capture request thread, process capture result and setParameter
binder threads can run into circular locking situation when acquiring
StreamingProcessor lock, Camera3Stream lock, and bufferQueue lock.
Releasing the Camera3Stream lock briefly in process capture request
thread getbuffer call can break this deadlock.

Bug: 11016037
Change-Id: If08d4b134c26be26039b1d5363759e60f911bad6

10 years agoCamera: Skip AE precapture when possible
Zhijun He [Fri, 11 Oct 2013 17:26:52 +0000 (10:26 -0700)]
Camera: Skip AE precapture when possible

Skip AE precapture when AE is already converged for still capture use case. This
could save still capture latency 6-7 frame time for AE already converged case.

Bug: 10712902
Change-Id: Ie5512618b76e5d87c62c57c3d96d2004c604e29e

10 years agoMerge "Camera: Skip AE precapture when possible" into klp-dev
Zhijun He [Fri, 11 Oct 2013 19:22:15 +0000 (19:22 +0000)]
Merge "Camera: Skip AE precapture when possible" into klp-dev

10 years agoMerge "Camera2/3: Add more tracing for API1" into klp-dev
Eino-Ville Talvala [Fri, 11 Oct 2013 19:21:51 +0000 (19:21 +0000)]
Merge "Camera2/3: Add more tracing for API1" into klp-dev

10 years agoCamera: Skip AE precapture when possible
Zhijun He [Fri, 11 Oct 2013 17:26:52 +0000 (10:26 -0700)]
Camera: Skip AE precapture when possible

Skip AE precapture when AE is already converged for still capture use case. This
could save still capture latency 6-7 frame time for AE already converged case.

Bug: 10712902
Change-Id: Ie5512618b76e5d87c62c57c3d96d2004c604e29e

10 years agoCamera2/3: Add more tracing for API1
Eino-Ville Talvala [Thu, 10 Oct 2013 22:13:09 +0000 (15:13 -0700)]
Camera2/3: Add more tracing for API1

- AF state
- Async autofocus completion
- Async takePicture completion
- Stages of takePicture

Bug: 10570497
Change-Id: Ida9fedd81aa4ee3ae3fb8dfada858a3bc3c213a3

10 years agomerge in klp-release history after reset to klp-dev
The Android Automerger [Thu, 10 Oct 2013 13:01:02 +0000 (06:01 -0700)]
merge in klp-release history after reset to klp-dev

10 years agoCamera: Save 1 frame time for takePicture call
Zhijun He [Thu, 3 Oct 2013 23:12:43 +0000 (16:12 -0700)]
Camera: Save 1 frame time for takePicture call

Move the latest request signal call right before submitting request to HAL,
which avoids unnecessary 1 frame time wait.

Also fix request status constructor issue, and the log tag for Camera2Client.

Bug: 10570497
Change-Id: I0b1818658bee9983b117e49a5a00f1aab515c567

10 years agomerge in klp-release history after reset to klp-dev
The Android Automerger [Wed, 9 Oct 2013 13:01:03 +0000 (06:01 -0700)]
merge in klp-release history after reset to klp-dev

10 years agomerge in KFS78N (no-op)
Ed Heyl [Tue, 8 Oct 2013 22:59:50 +0000 (15:59 -0700)]
merge in KFS78N (no-op)

10 years agoMerge "camera2: Don't race while dumping last frame metadata" into klp-dev
Igor Murashkin [Tue, 8 Oct 2013 22:57:32 +0000 (22:57 +0000)]
Merge "camera2: Don't race while dumping last frame metadata" into klp-dev

10 years agomerge in KQS81M
Ed Heyl [Tue, 8 Oct 2013 22:40:01 +0000 (15:40 -0700)]
merge in KQS81M

10 years agoMerge "Camera3: Improve resilience to stream failures" into klp-dev
Eino-Ville Talvala [Tue, 8 Oct 2013 18:46:21 +0000 (18:46 +0000)]
Merge "Camera3: Improve resilience to stream failures" into klp-dev

10 years agoCamera3: Improve resilience to stream failures
Eino-Ville Talvala [Wed, 25 Sep 2013 01:04:19 +0000 (18:04 -0700)]
Camera3: Improve resilience to stream failures

- Handle binder connection drops (DEAD_OBJECT) for streams
- Just log an error, don't go to an error state when queue/dequeue fails

Bug: 10347526
Change-Id: Ib463ffe15d58db444cf5d8cad176a201c7d1facc

10 years agoAwesomePlayer: do not send events when paused.
Eric Laurent [Tue, 8 Oct 2013 16:22:31 +0000 (09:22 -0700)]
AwesomePlayer: do not send events when paused.

When streaming audio and paused, AwesomePlayer should
stop sending BufferingEvents as they will keep a wake lock
for no reason.

TimedEventQueue should always acquire the wakelock with mediaserver
identity so that it is released with the same identity by the
event handler thread.

Bug: 11104408.
Change-Id: Ied0e03acd6ad2f5a4c0ec82d5c2aa4e1c6da772c

10 years agocamera2: Don't race while dumping last frame metadata
Igor Murashkin [Tue, 8 Oct 2013 01:01:46 +0000 (18:01 -0700)]
camera2: Don't race while dumping last frame metadata

Bug: 11095203
Change-Id: Icfb31e1719634b62004d6c15a95a9316e9642e4c

10 years agoCleanup openRecord error handling
Glenn Kasten [Tue, 24 Sep 2013 18:52:37 +0000 (11:52 -0700)]
Cleanup openRecord error handling

Bug: 10888816
Change-Id: I84897dd7d30b370640b54e928f230604b873cb68

10 years agoMerge "Cleanup openRecord error handling" into klp-dev
Glenn Kasten [Mon, 7 Oct 2013 16:16:06 +0000 (16:16 +0000)]
Merge "Cleanup openRecord error handling" into klp-dev

10 years agomerge in klp-release history after reset to klp-dev
The Android Automerger [Sun, 6 Oct 2013 13:01:09 +0000 (06:01 -0700)]
merge in klp-release history after reset to klp-dev

10 years agoaudioflinger: offload: fix pause/flush/resume
Eric Laurent [Fri, 4 Oct 2013 23:23:48 +0000 (16:23 -0700)]
audioflinger: offload: fix pause/flush/resume

If a pause/flush/resume sequence is fast enough, resume is received while
we are still in PAUSING state in which case it is a NOP. If this happens,
flush is still forwarded to the audio HAL but is not preceeded by a pause
which can cause problems to the audio DSP.
It is necessary to preserve the flush as this sequence is typical to a seek.

The fix consists in forcing a pause/resume when a flush request must be
executed and the audio HAL has not been paused previously.

Bug: 11081559.
Change-Id: Ib84ed26d503a61c05933b923ec556b10cedfe140

10 years agoTimedEventQueue takes a wake lock
Eric Laurent [Fri, 4 Oct 2013 00:54:26 +0000 (17:54 -0700)]
TimedEventQueue takes a wake lock

Take a wake lock when events present in a TimedEventQueue
to prevent from going idle before all delayed events are
processed.

Bug: 11057387.
Change-Id: I26a17df68068fde5e879a2fe7568dec439fc540f

10 years agofix offload audio effect proxy implementation uuid
Eric Laurent [Fri, 4 Oct 2013 15:36:52 +0000 (08:36 -0700)]
fix offload audio effect proxy implementation uuid

The proxy implementation UUID should not be the NULL UUID as
AudioFlinger will reject effect creation if the AudioEffect
is constructed by passing the implementation UUID and not the
type UUID.

Bug: 11070481.

Change-Id: Ia9049d974e76303c5b63a607ee594b7dc1f182d4

10 years agoMerge "audioflinger: fix wake lock acquisition check" into klp-dev
Eric Laurent [Fri, 4 Oct 2013 19:57:14 +0000 (19:57 +0000)]
Merge "audioflinger: fix wake lock acquisition check" into klp-dev

10 years agoaudioflinger: fix wake lock acquisition check
Eric Laurent [Fri, 4 Oct 2013 18:46:55 +0000 (11:46 -0700)]
audioflinger: fix wake lock acquisition check

Commit e14a5d6 introduced a bug in ThreadBase::acquireWakeLock() where
the wake lock acquisition return code is not initialized before
being checked causing the wake lock token to be sometines not set
and potential failure to release the wake lock later.

Bug: 10985160.
Change-Id: Iffd40e773ae3bcfec3c148a844d5dbebbf474eaf

10 years agoMerge "TimedEventQueue takes a wake lock" into klp-dev
Eric Laurent [Fri, 4 Oct 2013 17:47:25 +0000 (17:47 +0000)]
Merge "TimedEventQueue takes a wake lock" into klp-dev

10 years agoTimedEventQueue takes a wake lock
Eric Laurent [Fri, 4 Oct 2013 00:54:26 +0000 (17:54 -0700)]
TimedEventQueue takes a wake lock

Take a wake lock when events present in a TimedEventQueue
to prevent from going idle before all delayed events are
processed.

Bug: 11057387.
Change-Id: I26a17df68068fde5e879a2fe7568dec439fc540f

10 years agofix offload audio effect proxy implementation uuid
Eric Laurent [Fri, 4 Oct 2013 15:36:52 +0000 (08:36 -0700)]
fix offload audio effect proxy implementation uuid

The proxy implementation UUID should not be the NULL UUID as
AudioFlinger will reject effect creation if the AudioEffect
is constructed by passing the implementation UUID and not the
type UUID.

Bug: 11070481.

Change-Id: Ia9049d974e76303c5b63a607ee594b7dc1f182d4

10 years agoMerge "MediaCodec: avoid codec EOS if flushing during port reconfiguration" into...
Lajos Molnar [Fri, 4 Oct 2013 13:18:02 +0000 (13:18 +0000)]
Merge "MediaCodec: avoid codec EOS if flushing during port reconfiguration" into klp-dev

10 years agoMerge "Camera3: track request status in inflight queue" into klp-dev
Zhijun He [Thu, 3 Oct 2013 23:05:41 +0000 (23:05 +0000)]
Merge "Camera3: track request status in inflight queue" into klp-dev

10 years agoCamera3: track request status in inflight queue
Zhijun He [Wed, 2 Oct 2013 23:29:51 +0000 (16:29 -0700)]
Camera3: track request status in inflight queue

Bug: 9758581
Change-Id: I1d7135cd0932bd6b453acabfeb9a553985c887bc

10 years agoMerge "Better recording wake lock accounting" into klp-dev
Marco Nelissen [Thu, 3 Oct 2013 21:15:05 +0000 (21:15 +0000)]
Merge "Better recording wake lock accounting" into klp-dev

10 years agoBetter recording wake lock accounting
Marco Nelissen [Thu, 3 Oct 2013 15:51:24 +0000 (08:51 -0700)]
Better recording wake lock accounting

Count wake lock use against the app that initiated the recording,
not against the media server.

b/10985160

Change-Id: Iae6e6c030b7f1c6081d9c79725d6990f60dadaaa

10 years agoMerge "stagefright: enable adaptive playback based on codec format key" into klp-dev
Lajos Molnar [Thu, 3 Oct 2013 19:08:06 +0000 (19:08 +0000)]
Merge "stagefright: enable adaptive playback based on codec format key" into klp-dev

10 years agoMerge "Camera API 2, Device 2/3: Implement idle and shutter callbacks" into klp-dev
Eino-Ville Talvala [Thu, 3 Oct 2013 18:33:55 +0000 (18:33 +0000)]
Merge "Camera API 2, Device 2/3: Implement idle and shutter callbacks" into klp-dev

10 years agostagefright: enable adaptive playback based on codec format key
Lajos Molnar [Thu, 2 May 2013 23:46:41 +0000 (16:46 -0700)]
stagefright: enable adaptive playback based on codec format key

Added support for prepareForAdaptivePlayback() call in
configureCodec, if max-width and max-height keys are specified
in the format.  It is OK for this call to fail, if component
does not implement adaptive playback.

Change-Id: Ie15892bc666df103b635890a0fda799b204bb06c
Signed-off-by: Lajos Molnar <lajos@google.com>
Bug: 7093648
Bug: 10192531

10 years agoIOMX: Add prepareForAdaptivePlayback method
Lajos Molnar [Thu, 2 May 2013 23:30:48 +0000 (16:30 -0700)]
IOMX: Add prepareForAdaptivePlayback method

prepareForAdaptivePlayback is the fallback mechanism to support
seamless resolution change for devices that do not support dynamic
output buffers.  It is up to the codecs to handle this appropriately,
but codecs that do not handle dynamic output buffers would
request enough buffers up to the requested size in this method
to avoid port reconfiguration on resolution changes.

Change-Id: I58d4aa8ef1359ea3472735bbe9140c3132039b3d
Signed-off-by: Lajos Molnar <lajos@google.com>
Bug: 10192531
Related-to-bug: 7093648

10 years agoRemove now unused wfd commandline tool. (also unbreaks the build)
Andreas Huber [Thu, 3 Oct 2013 15:43:20 +0000 (08:43 -0700)]
Remove now unused wfd commandline tool. (also unbreaks the build)

Change-Id: I03320342976e4e355cc6aeb3d2c485985613b3b5
related-to-bug: 11047222

10 years agoMediaCodec: avoid codec EOS if flushing during port reconfiguration
Lajos Molnar [Wed, 2 Oct 2013 18:25:20 +0000 (11:25 -0700)]
MediaCodec: avoid codec EOS if flushing during port reconfiguration

Change-Id: Ic2e93f38feeb2e906f8d6b400ed6df2b7580ca87
Signed-off-by: Lajos Molnar <lajos@google.com>
Bug: 11045434

10 years agoCamera API 2, Device 2/3: Implement idle and shutter callbacks
Eino-Ville Talvala [Fri, 6 Sep 2013 16:32:43 +0000 (09:32 -0700)]
Camera API 2, Device 2/3: Implement idle and shutter callbacks

- Update callback Binder interface
- Rename frameId to be requestId to be consistent and disambiguate
  from frameNumber.
- Implement shutter callback from HAL2/3 notify()
  - Add in-flight tracking to HAL2
  - Add requestId to in-flight tracking
  - Report requestId from shutter callback
- Implement idle callback from HAL3 process_capture_result
  - Add new idle tracker thread
  - Update all idle waiting to use the tracker
  - Add reporting from request thread, all streams to tracker
  - Remove existing idle waiting infrastructure

Bug: 10549462
Change-Id: I867bfc248e3848c50e71527e3561fe92dc037958

10 years agoRemove obsolete miracast sink code and friends.
Andreas Huber [Wed, 2 Oct 2013 20:06:06 +0000 (13:06 -0700)]
Remove obsolete miracast sink code and friends.

Change-Id: I8bbb22fb0cfe2d73881d9f05bf8112ae86d8040b
related-to-bug: 11047222

10 years agomerge in klp-release history after reset to klp-dev
The Android Automerger [Wed, 2 Oct 2013 13:01:04 +0000 (06:01 -0700)]
merge in klp-release history after reset to klp-dev

10 years agoMediaCodecInfo: report supported color formats for non-native-window mode
Lajos Molnar [Mon, 30 Sep 2013 20:18:55 +0000 (13:18 -0700)]
MediaCodecInfo: report supported color formats for non-native-window mode

Revert the change in behavior when checking for adaptive playback was
introduced.

Change-Id: I59dc2450a4299b912015f2e4c9ec018a19a20b84
Signed-off-by: Lajos Molnar <lajos@google.com>
Bug: 10921537

10 years agoCamera: only return static metadata for HAL3 device
Zhijun He [Tue, 1 Oct 2013 18:05:33 +0000 (11:05 -0700)]
Camera: only return static metadata for HAL3 device

This effectively disables the camera2 APIs for HAL2.x or lower HAL device.

Bug: 10360518
Change-Id: I0f374ac533468c6181f5672c75088b7144b9c53d

10 years agoMerge "Camera: drop stale callback buffer" into klp-dev
Zhijun He [Tue, 1 Oct 2013 17:47:18 +0000 (17:47 +0000)]
Merge "Camera: drop stale callback buffer" into klp-dev

10 years agoMerge "MediaTimeProvider support fixes" into klp-dev
Lajos Molnar [Tue, 1 Oct 2013 16:36:52 +0000 (16:36 +0000)]
Merge "MediaTimeProvider support fixes" into klp-dev

10 years agoMerge "MediaCodecInfo: report supported color formats for non-native-window mode...
Lajos Molnar [Tue, 1 Oct 2013 16:36:32 +0000 (16:36 +0000)]
Merge "MediaCodecInfo: report supported color formats for non-native-window mode" into klp-dev

10 years agomerge in klp-release history after reset to klp-dev
The Android Automerger [Tue, 1 Oct 2013 13:00:48 +0000 (06:00 -0700)]
merge in klp-release history after reset to klp-dev

10 years agoCamera: drop stale callback buffer
Zhijun He [Tue, 1 Oct 2013 02:31:39 +0000 (19:31 -0700)]
Camera: drop stale callback buffer

Sometimes, when preview size is changed and preview callback is enabled, stale
callback buffer from previous size could be delivered to callback processor
because stop preview doesn't guarantee consumer side buffers are properly
cleaned up. We need drop these buffers to avoid sending wrong data to app side.

Bug: 11009183
Change-Id: If9281e8c02481f883872ce58dfd8660a06d56a47

10 years agoMerge "Camera: Set default thumbnail size with matched aspect ratio" into klp-dev
Zhijun He [Tue, 1 Oct 2013 00:23:50 +0000 (00:23 +0000)]
Merge "Camera: Set default thumbnail size with matched aspect ratio" into klp-dev

10 years agoMediaTimeProvider support fixes
Lajos Molnar [Wed, 25 Sep 2013 15:09:41 +0000 (08:09 -0700)]
MediaTimeProvider support fixes

Add MEDIA_SKIPPED event when resuming at a different time than
seeked to.

Send MEDIA_STARTED/PAUSED events only when playing (vs. when doing seek
previews)

Change-Id: I243ebf054303755ea8863229c3211694f2c204a7
Signed-off-by: Lajos Molnar <lajos@google.com>
Bug: 10954008

10 years agoMerge "fix volume and effect enable delay on offloaded tracks" into klp-dev
Eric Laurent [Mon, 30 Sep 2013 21:31:34 +0000 (21:31 +0000)]
Merge "fix volume and effect enable delay on offloaded tracks" into klp-dev

10 years agoMediaCodecInfo: report supported color formats for non-native-window mode
Lajos Molnar [Mon, 30 Sep 2013 20:18:55 +0000 (13:18 -0700)]
MediaCodecInfo: report supported color formats for non-native-window mode

Revert the change in behavior when checking for adaptive playback was
introduced.

Change-Id: I59dc2450a4299b912015f2e4c9ec018a19a20b84
Signed-off-by: Lajos Molnar <lajos@google.com>
Bug: 10921537

10 years agoCamera: Set default thumbnail size with matched aspect ratio
Zhijun He [Mon, 30 Sep 2013 19:07:57 +0000 (12:07 -0700)]
Camera: Set default thumbnail size with matched aspect ratio

Make default thumbnail size match the default still capture size aspect ratio.

Bug: 10885012
Change-Id: If46da9508d3b71992f0e14a35c600b7e8d347f4e

10 years agoMerge "Change VP8 encoder bitrate" into klp-dev
Rachad Alao [Mon, 30 Sep 2013 19:11:06 +0000 (19:11 +0000)]
Merge "Change VP8 encoder bitrate" into klp-dev

10 years agoMerge "Indicate sync frames returned by encoder" into klp-dev
Rachad Alao [Mon, 30 Sep 2013 19:10:47 +0000 (19:10 +0000)]
Merge "Indicate sync frames returned by encoder" into klp-dev

10 years agofix volume and effect enable delay on offloaded tracks
Eric Laurent [Sat, 28 Sep 2013 01:48:26 +0000 (18:48 -0700)]
fix volume and effect enable delay on offloaded tracks

Volume: add a method to wake up the mediaserver playback
thread when a volume command is received on an offloaded track.

Effects: call effect chain process on offloaded playback threads
asynchronously from writes to allow effect state updates while
waiting for async write callback.

Bug: 10796540.

Change-Id: Id2747ae88783575d1d7ffd6fc86fbd054ab2c739