| Commit message (Collapse) | Author | Age | Files | Lines |
|\
| |
| |
| | |
Change-Id: I9b2b1ff690d35e0da644bdb52c8c42a72e5fd4f6
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Clear output stream pointer in duplicating thread
when the main output to which it is attached is closed.
Also do not forward master mute and volume commands to
duplicating threads as this is not applicable.
Also fix logic in AudioFlinger::primaryPlaybackThread_l()
that could accidentally return a duplicating thread.
This never happens because the primary thread is always
first in the list.
Bug: 20731946.
Change-Id: Ic8869699836920351b23d09544c50a258d3fb585
(cherry picked from commit f6870aefc5e31d4220f3778c4e79ff34a61f48ad)
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Do not standby, starve or feed 0s to the audio HAL on direct
output using HW A/V sync mode.
Bug: 17883772.
Change-Id: I11e6c97ec24360d75f9b602814d40a54b60cb7a7
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Extend pause/resume support to direct output threads
(was only for offload threads).
If the HAL implements pause/resume, track pause/resume is forwarded to
the HAL.
Pause, flush, resume sequence is respected by executing the HAL
calls in the playback thread (same as offload).
Make sure the track flags on client side are consistent with the
flags on server side.
Bug: 17883772.
Change-Id: I89b360d69818f7a9204bd36e3ec63a79e106ecf1
|
|/
|
|
|
|
|
|
|
|
|
|
|
| |
Added new routing strategies and stream type for internal use
by audio policy manager and audio flinger:
- One for accessibility to allow different routing than media
- One for re-routing (remote submix) in preparation of dynamic
policies
- Added stream type for "internal" audio flinger tracks used
for audio patches and duplication.
Bug: 18067208.
Change-Id: I88f884b552e51e4a49c29125e5a1204cf58ff434
|
|
|
|
|
|
|
|
|
|
| |
The per-thread timestamp latch was not synchronized with the per-track
released frames. Now the value of each track's released frames is
latched along with the timestamp.
Bug: 17531839
Bug: 17669342
Change-Id: I9d50c8c6a5de55a3f4561ac40e20d497376c1257
|
|\
| |
| |
| | |
AudioTrack::getTimestamp"" into lmp-dev
|
| |
| |
| |
| |
| |
| |
| |
| | |
This reverts commit 54464ba861aaafd11ee5645f5d1ecd1171c6e9fe.
Bug: 17733142.
Change-Id: I9886d40032b2f7d96bee03e600e14f78943d8052
|
|\ \
| |/
| |
| | |
into lmp-dev
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The per-thread timestamp latch was not synchronized with the per-track
released frames. Now the value of each track's released frames is
latched along with the timestamp.
Bug: 17531839
Bug: 17669342
Change-Id: I96252782911bd42a2534cc4030521b7eeb99a7b9
|
|/
|
|
|
|
|
|
| |
Track flush should be forwarded to the audio HAL when playing
on a direct output stream.
Bug: 17704953.
Change-Id: Iafc94327fe9aebf1d4eaa97b76c6767b7ac5babe
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When a capture thread was closed, the effects attached to this thread
were left dangling and the associated effect chain destroyed.
When their last client was disconnected, the effects were not released
properly from the effect library because the destruction process could
not be completed without the effect being attached to a thread.
A similar problem prevented a RecordTrack to be properly released if
its client was destroyed after the capture thread.
The fix consists in allowing the effect or record track to be properly
released even if its parent thread cannot be promoted.
Also save any effect chain still present on a closed capture thread
in case a new client wants to reuse the effects on the same session later.
Bug: 17110064.
Change-Id: I5cd644daa357afd1f3548f9bcb28e6152d95fdb8
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add support for audio device connections between different audio
hw modules.
The patch is performed by creating a bridge between the playback
thread connected to the sink device and the record thread connected
to the source device using a pair of specialized PlaybackTrack and
RecordTrack.
- Added PatchTrack and PatchRecord classes.
- Added TrackBase type to indicate more clearly the track behavior.
- A TrackBase can allocate the buffer or reuse an existing one.
- Factored some code in openOutput() and openInput() for internal use
by PatchPanel.
Bug: 14815883.
Change-Id: Ib9515fcda864610458a4bc81fa8f59096ff4d7db
|
|
|
|
|
|
|
|
| |
Fixes an issue caused by extended precision and the FastMixer
when the format to the FastMixer was returned instead of the
HAL format.
Change-Id: I2be9d55d5c87d82e46b5200b07fcdd986ebde08a
|
|\ |
|
| |
| |
| |
| | |
Change-Id: I08885cc381d03c522a23289e74f0e1ed46563863
|
|\ \
| |/
|/| |
|
| |
| |
| |
| | |
Change-Id: Ie623edae2e795f9155f1f452fe4e6c7217a4a4c8
|
| |
| |
| |
| |
| |
| |
| | |
This avoids worry about the thread lifetime during tear-down.
Bug: 15858655
Change-Id: I896d24317bd6f53a574645cdf4cd514eaa205dd5
|
|/
|
|
|
|
|
| |
Will only configure fast capture path if the input buffer size is less than
10 ms and the input sample rate is same as the primary output sample rate.
Change-Id: I4a7cdc6069d750845412c626d27e83f72a1ab397
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Added a new PatchPanel subclass to AudioFlinger
to handle audio ports and audio patches configuration
and connection.
The first implementation does not add new functionnality.
AudioPolicyManager uses patch panel interface to control
device routing.
AudioFlinger:
- Added PatchPanel class. The first implementation does not
add new functionnality. PatchPanel handles routing commands
for audio HAL after 3.0 or converts to setParameters for audio
HALs before 3.0.
- Added config events to ThreadBase to control synchronized
audio patch connection.
AudioPolicyManager:
- Use PatchPanel API to control device selection isntead of setParameters.
- New base class AudioPort common to audio device descriptors
and input output stream profiles. This class is RefBase and groups
attributes common to audio ports.
- Use same device selection flow for input as for outputs:
getNewInputDevice -> getDeviceForInptusiource -> setInputDevice
Change-Id: Idaa5a883b19a45816651c58cac697640dc717cd9
|
|\ |
|
| |
| |
| |
| |
| | |
Change-Id: Ia152a839014e235fbfb656104c15d7c1b456d02e
Signed-off-by: Andy Hung <hunga@google.com>
|
|/
|
|
| |
Change-Id: Ib9ac170f8e8b7746b3588157a56cbee3b753a1cb
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add a specific mutex to protect access to mClients and
mNotificationClients lists. This avoids locking the main AudioFlinger
mutex from inside thread loops and allows not to worry about
cross deadlocks when sending a config event with status reply while
keeping the ThreadBase or AudioFlinger mutex locked.
As a way of consequence, remove notification client list passed to
processConfigEvents_l() and audioConfigChanged() as the list
can now be accessed by locking client mutex only.
Change-Id: I228022204b6709a8bb60cc96d9514a6ffe59b62e
|
|
|
|
|
|
|
|
|
|
|
| |
Merge config events and set parameters messaging mechanism.
- setting parameters now uses the config event mechanism
- config event now allow to wait for a condition and synchronize caller
binder thread with execution thread and return an execution status.
- simplify locking mechanism to avoid unlocking the thread
mutex while processing events.
Change-Id: Ia49cb3e617abec4bacb6c1f9a8cb304c4ed3902e
|
|
|
|
| |
Change-Id: I401263566ca20fbfb565689c8fa99458d3b283b2
|
|
|
|
| |
Change-Id: I759be200fae32969212c52a409f46f2e704081e3
|
|
|
|
| |
This reverts commit e2a9c29f35e0c09782558542fc4cf9823779590e.
|
|
|
|
|
|
|
| |
This reverts commit e7e676fd2866fa4898712c4effa9e624e969c182.
Bug: 13450717.
Change-Id: Ib80b0d14428fecce33c62003a1fcf83f71cee03b
|
|
|
|
|
| |
Change-Id: I618d9c99a5f6f8c8d6a9f4b2d19e82c9ddc3b06e
Signed-off-by: Andy Hung <hunga@google.com>
|
|
|
|
|
| |
Change-Id: Icf97c50040bc127723d56eb4d2fb6e790a7253d9
Signed-off-by: Andy Hung <hunga@google.com>
|
|
|
|
|
|
|
|
| |
Path into and out of MixerBuffer is set up, but not
currently enabled.
Change-Id: I9d50752607d22dd2a3d9cc7e053babf8dfb22958
Signed-off-by: Andy Hung <hunga@google.com>
|
|
|
|
|
| |
Change-Id: I4d1d18d716fa3ad8c0e7cc87f5a2823422f504eb
Signed-off-by: Andy Hung <hunga@google.com>
|
|
|
|
|
| |
Change-Id: I1f55630425b8ce36e9df2aaf64e06a8960b69a47
Signed-off-by: Andy Hung <hunga@google.com>
|
|
|
|
|
|
|
|
|
| |
Remove mReqChannelCount and mReqSampleRate.
Increase number of input frames needed for sample rate converter.
Add TODO comments to investigate later.
Fix bugs in sample rate conversion.
Change-Id: I3aa54b862843d518b6e4ece9a7f52fd27d741629
|
|
|
|
| |
Change-Id: I611a63e63acf3eb17e2072c1a77b91fe9e62e36a
|
|
|
|
|
|
|
| |
They are always called while thread mutex is locked,
or in the thread constructor.
Change-Id: I56df71563a52a5cd6cea6fc0914df993519e1b74
|
|
|
|
|
|
| |
Supports multiple clients both at native sample rate and with resampling.
Change-Id: Icea55b4fd30751761b7debaa3ce016c79e712d8d
|
|\
| |
| |
| | |
Change-Id: I7b1cc71057b2bd4f771e7bcf508a8c3abd6017ce
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Contains the necessary changes to make frameworks/av build and work
on a 64-bit machine.
Signed-off-by: Craig Barber <craig.barber@arm.com>
Signed-off-by: Kévin PETIT <kevin.petit@arm.com>
Signed-off-by: Ashok Bhat <ashok.bhat@arm.com>
Signed-off-by: Marcus Oakland <marcus.oakland@arm.com>
Change-Id: I725feaae50ed8eee25ca2c947cf15aee1f395c43
|
| |
| |
| |
| | |
Change-Id: I9add0872030a26933f6b6dad1be299154611cc56
|
|\ \ |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Trigger state changes in OffloadThread on adding a new offload track.
Bug: 12530661
Change-Id: I95b62764c7ac041d470702e86b951f812eb0e70f
|
|\ \ \
| |/ / |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Do not allow an offload track to directly control the offload thread
behavior. OffloadThread can check for any pending flush reporting
by its active tracks and decide to flush the HW or not.
Bug: 12530661
Change-Id: Ib33f023c942f6c091b618004136b153c38a6eef6
|
|\ \ \
| |/ /
|/| | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Fortunately this bug never showed up, because the parameter
field has not been used yet.
Change-Id: I2b36e2b7e1dcc2039c494fc5ea4994d262435aac
|
|/ /
| |
| |
| | |
Change-Id: I665ba3358dd9502f0adec70d486e7bf8a2e1b0fe
|
|\ \ |
|