| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
Bug: 16205169
Change-Id: Ie15ec2a737b6ddd16b2d26030d01564ff70177f5
|
|
|
|
|
| |
Bug: 16658148
Change-Id: I2dd04b23a143e0948b299d408790e7a46b5a53b0
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| | |
Since effects are now enabled for recording, mono cases are possible
and needed to be correctly allocated.
Bug: 16917961
Change-Id: I760fc421f9f90fabb3f0deadd5f9dc61cd284371
|
|/
|
|
|
|
|
|
|
| |
Also improve robustness to choice of sampling rate or buffer size
such that increasing either by 10x does not cause overflow.
Bug: 12979141
Bug: 15933066
Change-Id: If7989bd745d1bee3bdf811b8b7c978543ccafb65
|
|
|
|
|
|
|
|
|
|
|
|
| |
Allow creation of audio patches with more than one sink.
More than one sink is enabled when:
- Connecting an input device to output devices on the same audio HW module.
- Connecting an output mix to output devices on the same audio HA module.
All other patches are limited to one sink.
Bug: 16879363.
Change-Id: I95be6948ef29df64e51e5b8ace38c2db7f3e89f2
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| | |
Do not permit mixing to mono sink in AudioFlinger.
Allow effects on mono sink if not Mixer thread (e.g. Record).
Bug: 16863095
Change-Id: I8b232fc1fb3f07bf017020c5d4f9ace644dec6d8
|
|\ \ |
|
| |/
| |
| |
| |
| |
| |
| |
| |
| | |
Add possibility to use sink and source devices not on
the primary HW module for voice calls (e.g. USB headsets).
Bug: 15520724.
Change-Id: Ib27db4ba759b6d91ea1104dc2e35c87733517b30
|
|\ \ |
|
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Add a method to query from the audio HAL the HW sync
source used for a given audio session.
Modify audio policy to select a direct output with HW sync
when requested.
Bug: 16132368.
Change-Id: I03038f9188f2d389f8a5fd76a671854013a4513e
|
|\ \
| |/
|/| |
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
A memclear in the EffectChain was out of bounds.
Bug 15432115
Bug 16845751
Change-Id: Ib0adc7fa730d630bb71fb87d51163a26149b16e2
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
- Audio policy:
Replace unknown device assertion by debug log in setDeviceConnectionState().
It is possible that some kernels indicate connection of a legacy device type
when a USB audio device is connected.
We should just ignore this device.
- Audio flinger:
Make sure FastMixer thread is idle before exiting the normal mixer thread and
closing the output stream.
Change-Id: Ia10a20176a60a8aa56765538093a555fc998508a
|
|\ \ |
|
| |/
| |
| |
| |
| |
| | |
Legacy code that has not been hooked up.
Change-Id: Ic01a4eddfa1020089d5bc42f58b6a4697698c27a
|
| |
| |
| |
| |
| | |
Bug: 13744704.
Change-Id: I572c89f88dcab2b8b612ec6860983306f9f159ab
|
|/
|
|
|
|
|
|
|
|
| |
Use stdatomic.h instead. We're trying to remove android_atomic use
wherever possible. The 64-bit uses seem easiest to remove first.
This cleans up the code, though not as much as C++ <atomic> would,
if it worked everywhere.
(cherry picked from commit f39b560952d3706a7ff47ef0d82c1a836daeea42)
Change-Id: I3c29bdbd5915cb9d47118834a3a742fe296cf87f
|
|\ |
|
| |
| |
| |
| | |
Change-Id: Ibdbdc6ea0b87cdcd15432257a3455b11b3ce14b7
|
| |
| |
| |
| | |
Change-Id: Ife5e40264f43fb3ccb40830228701003fe106bf5
|
| |
| |
| |
| |
| |
| |
| |
| | |
Indicate the audio session ID when calling getInput(),
startInput(), stopInput(), releaseInput().
Bug: 12378680.
Change-Id: I763793752f93e2f4e1445a5ab217c895af011038
|
|\ \ |
|
| |/
| |
| |
| |
| | |
Bug: 16525305
Change-Id: Ie010822b0fa9dec74adde1d1b091ee44c183fc94
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Rename AudioSystem::newAudioSessionId() to
AudioSystem::newAudioUniqueId() as it can be used
also for I/O handles.
Bug: 12378680.
Change-Id: I611ea3b5eb57a4b0774437f477ee87dc4ccc2cc2
|
|\ \
| |/
|/| |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Add parameters to openInput() and openOutput(): device address,
input source.
Allow caller to specify a given I/O handle
Group parameters in a struct audio_config.
Bug: 12378680.
Change-Id: I7e9af74c0d996561cc13cbee7d9012d2daf33025
|
|/
|
|
|
| |
Bug: 16601366
Change-Id: I573b98631f81b7768f7cc00aa09e560008dea587
|
|
|
|
|
|
| |
But not enabled (kEnableExtendedChannels == false).
Change-Id: I62f7e31fbd29ad703a9a02f5d1a280b6972dd423
|
|
|
|
|
|
|
|
| |
tests/test-mixer updated to handle multichannel.
New mixer path is still disabled (kUseNewMixer = false).
Subsequent CL will enable multichannel capability.
Change-Id: I71dafa94cc1d9af567c285e0ded7c5c94e3ff926
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|\ |
|
| |
| |
| |
| | |
Change-Id: I384bf8317d4f03616bf9f2b458a8700965d5cf56
|
|/
|
|
| |
Change-Id: I1cf0c0d9375779b3074af12f4cbf9c1ec07bf4ff
|
|\ |
|
| |
| |
| |
| |
| |
| |
| | |
This is used to convert between channel masks for input AudioTrack
data.
Change-Id: Iedffaeccb99c7053992152e7b1cb6b2d33b12eef
|
|\ \
| |/ |
|
| |
| |
| |
| | |
Change-Id: I6b1a8755a1e6c29b916662fd376e9509cda5df55
|
|\ \
| |/ |
|
| |
| |
| |
| |
| |
| |
| |
| | |
AudioMixer::ReformatBufferProvider now uses it as a base class.
Fix ReformatBufferProvider object leak.
Change-Id: If196f844eaaa124a173ffa27afe88098023c2ff9
|
|/
|
|
|
|
| |
introduced by Change-Id: I4e9b7fa99858b488ac98a441fa70e31dbba1b865
Change-Id: I9a0c8800f5cf3767cc259776f95c96cad972e392
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Buffer frame count and notification frame count
are now calculated by server instead of by client.
The server has more information and can do a better job.
Also fix a few bugs:
- If a fast track was re-created, even with same pipe depth, it would fail.
Now it can correctly re-create a fast track provided the pipe depth is same.
- Notification frame count for fast tracks was calculated by client
as 1/2 of the total frame count, which is a large value due to the pipe.
Now the notification frame count is set by server to the HAL frame count.
This should reduce latency for fast tracks.
- EVENT_OVERRUN were happening frequently when there was sample rate conversion,
because the client didn't know about the sample rate conversion,
and under-estimated the necessary buffer size. Now since server
calculates the buffer sizes, EVENT_OVERRUN is unlikely.
- RecordThread::createRecordTrack_l was checking for mono and stereo
for fast tracks. This is not necessary, and now we can handle a
multi-channel fast track.
Bug: 7498763
Change-Id: I0c581618e8db33084d5ff9ed50a592990c9749e8
|
|\ \
| |/
|/| |
|
| |
| |
| |
| |
| |
| |
| | |
Also happens when restarting AudioFlinger.
Bug: 16322824
Change-Id: I382b20174cb0639e04316130141f2094d7dd0cb3
|
| |
| |
| |
| |
| |
| |
| | |
For backward compatibility, until flags are correctly calculated,
we will assume that the request is for a low latency input stream.
Change-Id: I76746834e870df00833dc77cbdaa2edd2ffeec95
|
|/
|
|
|
|
| |
Show per-track sample rate, and whether there is a fast capture thread
Change-Id: If6a08a40d1eeba0690aa8da3c541f845ec101b7f
|
|
|
|
|
|
|
| |
For backward compatibility, until flags are added to openInput(),
we will assume that the request is for a low latency input stream.
Change-Id: I5e6f7e574418917ff1b41b0a47199203c69cb40f
|
|
|
|
| |
Change-Id: I0f51470a6d58a22310ce7cda80afc55e9d6df1dc
|