| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The audio port field mName was used for two different purposes
which caused a problem when exposing this information at the SDK API.
Create a new "mTag" field storing the audio_policy.conf device tag
if needed.
Field "mName" is now used to store any additional name associated to
a given device when available (e.g Manufacturer and model name for a USB device).
Change-Id: I17fa872e4a3a2e1b7cbb807c6f72e095a8a2c9c5
|
| |
| |
| |
| |
| | |
Change-Id: Iefac44f3c0e1c3fd4b19833d9692744100f92e00
(cherry picked from commit 5e9febef197a9852c833a0aedc6bfee179c4ae9e)
|
|\ \
| |/
|/| |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Add class AudioSystem::AudioDeviceCallback notifying
AudioSystem clients upon device selection change on a given
input or output thread.
Maintain a list of installed callback per I/O handle in AudioSystem
and call registered callbacks when an OPEN of CONFIG_CHANGED event
is received on IAudioFlingerClient::ioConfigChanged().
Add methods to AudioTrack and AudioRecord to add and remove device
change callbacks.
Add methods to AudioTrack and AudioRecord to query currently selected
device.
ioConfigChanged() events now convey the audio patch describing
the input or output thread routing.
Fix AudioRecord failure to start when invalidation is
handled by start().
Change-Id: I9e938adf025fa712337c63b1e02a8c18f2a20d39
|
|\ \ |
|
| |/
| |
| |
| |
| |
| |
| |
| | |
Only advertise CONTROL_MODE_OFF when manual 3A controls are supported.
Also fixed some bug regarding static metadata update.
Bug: 20734940
Change-Id: I5061f3c49ec20dc8cf5d849771c000fb82543e8f
|
|\ \
| |/
|/| |
|
| |
| |
| |
| |
| |
| | |
Bug 20832981
Change-Id: If5f3c61fae02d86b9d6fdf411711f854fd56c77d
|
| |
| |
| |
| | |
Change-Id: I26570cc0a23fdea740b416a26838d40cac296c85
|
|\ \ |
|
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When a Direct Track is paused and the HAL does not support
pause() and resume() then the HW never gets paused.
The app can just keep writing data, which gets played.
Bug: 18899620
Change-Id: Ice0f360956ff7ca425f6f24a0a2a8640d8b43fa8
Signed-off-by: Phil Burk <philburk@google.com>
|
|\ \ |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Clean up implementation of audio configuration cache and
callback events from AudioFlinger:
- Define class AudioIoDescriptor for audio input and output
configurations outside of AudioSystem class.
- Do not use void * but an AudioIoDescriptor as argument to
audio config callbacks from AudioFlinger.
- Remove unused configuration events.
- Move AudioSystem audio input and output cache from static singletons to
members of AudioFlingerClient subclass.
Change-Id: I67c196c32c09ce2756af0755ee1fe631040c3270
|
| |/
|/|
| |
| |
| | |
Bug: 20721655
Change-Id: I0d974cad19683a8c86a76dac7f61ac0010bd977a
|
|\ \
| |/ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Do not use setParameters() with AUDIO_PARAMETER_STREAM_ROUTING
when communicating the input or output device selected to playback or
record threads, even for HAL version less than 3.0.
Use createAudioPatch()/releaseAudioPatch() instead.
This allows to send more information on the output or input device being
selected.
Also fix a regression introduced in L where the output device selection
was not communicated to effects on record threads.
Change-Id: I4780ada53241d56694b005c992171e173c3bf8f5
|
|\ \ |
|
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Due to older HAL compatibility, we have been setting a tight crop region
that just bounds the current output streams. However, this did not take
into account any possible ZSL output stream, so correct application of
our stream cropping rules to ZSL results in double-crop scenarios, if
the ZSL stream aspect ratio does not match the aspect ratio of the other
output streams.
Since all current HALs follow the correct stream cropping rules (or
at least sufficiently ignore them for ZSL), simplify the cropping
substantially - now either calculate the crop region based purely
off the active array dimensions and zoom factor, or purely off
the preview stream and zoom factor. The former is used for setting
the request crop, and the latter is used for converting coordinates
for metering regions.
Bug: 20316691
Change-Id: I5a0bc2e7c09cf60fbae4220566540ca9e674d652
|
|\ \ |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The retrograde motion was confused by some positions coming from
the DSP on offloaded tracks. So the retrograde check was moved up
into AudioTrack.cpp. This allows us to take advantage of the checks
for invalid positions based on timing.
Bug: 2047891
Change-Id: Ifcad2349201443a7f1711347c203297100449536
Signed-off-by: Phil Burk <philburk@google.com>
|
|\ \ \ |
|
| | |/
| |/|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
- Clear session routes when client process dies.
- Enforce the route only when the requesting session is active.
- Fix requested route not working if an output mix change is required
(e.g forcing to SPEAKER when the default route is USB or A2DP).
- Make sure all sessions sharing the strategy with a rerouted session
have the same route (needed for volume control consistency)
Change-Id: I0ab347a8fb97e73e2c5965374544c5f4fe509ef1
|
|\ \ \
| |_|/
|/| | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Add method to AudioPolicyServiceClient for dynamic policy mix
activity notification.
Propagate notification to a dedicated callback.
Bug 20226914
Change-Id: I37928ed38e15ea2b8fed022cccadeca8c4d6c876
|
| |/
|/|
| |
| | |
Change-Id: I3a97977b6e9a09355e2008f780d22d480fb7308b
|
|\ \
| | |
| | |
| | | |
Binder" into mnc-dev
|
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
[Cause]
CallbackProcessor uses always same buffer to send preview data.
A buffer is written before it is read by user process.
[Solution]
Increment buffer index correctly.
Change-Id: I87a7e3dc6546448a419c96aa58ace3b7d086bf70
|
|/
|
|
| |
Change-Id: I9cc5d54883a3e5c75d553fabb619fc8e49f4f9e5
|
|
|
|
|
|
| |
This reverts commit 65c3781db3443531deacecfbda5c7e7e82868a34.
Change-Id: Ib61cd70f97c4c4f4b503fb845643627d6896f4f9
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch adds a configurable version of the policy engine
based on the parameter framework.
This configurable engine shall be activated with a flag
USE_CONFIGURABLE_AUDIO_POLICY within BoardConfig.mk
This patch provides the generic configuration as an example.
This configuration provides the same user experience as the default
policy engine.
Change-Id: Ic8217333ae370b89bfdd2ad11320c5f14ea4da34
Signed-off-by: François Gaffie <francois.gaffie@intel.com>
|
|\ |
|
| |
| |
| |
| |
| | |
Bug: 20233206
Change-Id: Ic253985e408b05b488e87cd5c50c0d619ac568ef
|
|\ \ |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Use ref counting on start/stop inputs to notify audio policy client
of mix activity changes.
Bug 20226914
Change-Id: Ic4f9c91301d0bcbc0ff749acebdc3b2300309c38
|
|\ \ \ |
|
| | |/
| |/|
| | |
| | |
| | |
| | | |
Fix typo causing tuner open error to be ignored.
Change-Id: I10735f0cf6ae64ff9c4efa2eb4b20d94d3597ae5
|
|/ /
| |
| |
| |
| |
| |
| | |
Otherwise AUDIO_FORMAT_DEFAULT (used for dynamic formats)
is no longer the first entry.
Change-Id: I23869a9ca2ed138759d722e7c9838497f640921a
|
| |
| |
| |
| | |
Change-Id: Ia388fb012a0b6d81613ef87142a97d76836338f9
|
| |
| |
| |
| | |
Change-Id: Ic534bee084108a68c7818600df6e1c9dc9258a0d
|
|\ \ |
|
| | |
| | |
| | |
| | | |
Change-Id: Id4bb9b973eeea16946fba3bc084c7ac270d9fa33
|
|\ \ \
| |/ / |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Mono channel playback without resampling and not using
AUDIO_CHANNEL_OUT_MONO can show low frequency garbling.
Bug: 20463456
Change-Id: I0c1bbf957ea439bb8d8da57b9e78938e1acb4793
|
|\ \ \ |
|
| |/ /
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Use this struct to handle the parameters for TimestretchBufferProvider all
across the system.
Add stretch mode and fallback mode to TimestretchBuffer Provider.
Change-Id: I19099924a7003c62e48bb6ead56c785cb129fba2
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Have AudioTrack::setOutputDevice() set CBLK_INVALID flag instead
of calling restoreTrack_l(). This allows restoreTrack_l() to be called in
a safe context.
Allow device change while the AudioTrack is active by forcing a new
device selection in startOutput() if the output route for this
session was changed.
Remove some warnings.
Change-Id: I2d921a63c9bfa0e122233645e2d6d39f95f5f17d
|
|/ /
| |
| |
| |
| |
| |
| | |
Remove check for MODIFY_AUDIO_ROUTING permission in
audio policy methods just getting devices or patches state.
Change-Id: Id3bafc5ad0d0bd96210822243139898e314327d8
|
|\ \ |
|