<feed xmlns='http://www.w3.org/2005/Atom'>
<title>frameworks_av/services/audioflinger/Effects.cpp, branch lineage-17.1</title>
<subtitle>Fork of frameworks/av
</subtitle>
<link rel='alternate' type='text/html' href='https://git.replicant.us/replicant-next/frameworks_av/'/>
<entry>
<title>Request to reset effect buffer in clearInputBuffer</title>
<updated>2019-12-11T17:14:43+00:00</updated>
<author>
<name>Ryoichi Yasutake</name>
<email>ryoichi.x.yasutake@sonymobile.com</email>
</author>
<published>2018-02-21T11:53:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/replicant-next/frameworks_av/commit/?id=cdd1f515046fb0c67971562e2313eb61da6b8ec0'/>
<id>cdd1f515046fb0c67971562e2313eb61da6b8ec0</id>
<content type='text'>
When switching track, previous data may remain in work buffer of
effect, and causes pop noise at the begining of next track.
So send reset request to effect during switching track
in order to clear useless data.

Bug: 73720726
Test: No pop noise with AudioEffect when switching track
Change-Id: Iaeb4ab928303310427032617e9398b08f4abe5fa
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
When switching track, previous data may remain in work buffer of
effect, and causes pop noise at the begining of next track.
So send reset request to effect during switching track
in order to clear useless data.

Bug: 73720726
Test: No pop noise with AudioEffect when switching track
Change-Id: Iaeb4ab928303310427032617e9398b08f4abe5fa
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix for untimely suspension of Dynamics Processing</title>
<updated>2019-07-17T23:17:10+00:00</updated>
<author>
<name>Ricardo Garcia</name>
<email>rago@google.com</email>
</author>
<published>2019-07-17T21:29:12+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/replicant-next/frameworks_av/commit/?id=c2a3a82419327c6ffbad9711ed07415341eca00d'/>
<id>c2a3a82419327c6ffbad9711ed07415341eca00d</id>
<content type='text'>
Added exception to avoid suspending Dynamics Processing Effect.

Test: Manual testing with popular apps
Bug: 134852575
Change-Id: I1ffee570984897304169b30b7af417f61f762ffa
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Added exception to avoid suspending Dynamics Processing Effect.

Test: Manual testing with popular apps
Bug: 134852575
Change-Id: I1ffee570984897304169b30b7af417f61f762ffa
</pre>
</div>
</content>
</entry>
<entry>
<title>audio policy: concurrent capture effects</title>
<updated>2019-04-18T02:27:20+00:00</updated>
<author>
<name>Eric Laurent</name>
<email>elaurent@google.com</email>
</author>
<published>2019-04-06T02:37:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/replicant-next/frameworks_av/commit/?id=b20cf7db9e669169bbae5f0da97018a866c3f634'/>
<id>b20cf7db9e669169bbae5f0da97018a866c3f634</id>
<content type='text'>
Add pre processing effect management for concurrent capture scenarii.
When several clients on the same input stream have enabled audio effects,
only the effects attached to the top priotity client are active.
Other effects are suspended.

Add AudioFlinger API to suspend/restore audio effects build on top
of exisiting internal effect suspend mechanism.

RecordThread now supports more than one effect chain.

AOSP pre processing implementation supports more than one effect session
per input.

Refactor AudioPolicyManager::closeAllInputs() to call closeInput() on
all inputs instead of partially duplicated code.

Bug: 128419018
Test: make
Change-Id: I685286da4c2905a8894a4354679f9787b1400621
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Add pre processing effect management for concurrent capture scenarii.
When several clients on the same input stream have enabled audio effects,
only the effects attached to the top priotity client are active.
Other effects are suspended.

Add AudioFlinger API to suspend/restore audio effects build on top
of exisiting internal effect suspend mechanism.

RecordThread now supports more than one effect chain.

AOSP pre processing implementation supports more than one effect session
per input.

Refactor AudioPolicyManager::closeAllInputs() to call closeInput() on
all inputs instead of partially duplicated code.

Bug: 128419018
Test: make
Change-Id: I685286da4c2905a8894a4354679f9787b1400621
</pre>
</div>
</content>
</entry>
<entry>
<title>refactor mutexes for audio effects in audio flinger and audio policy</title>
<updated>2019-04-17T17:29:30+00:00</updated>
<author>
<name>Eric Laurent</name>
<email>elaurent@google.com</email>
</author>
<published>2019-04-09T21:13:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/replicant-next/frameworks_av/commit/?id=6c79632bbece71f7af0c2453bb62a5d6f0cca664'/>
<id>6c79632bbece71f7af0c2453bb62a5d6f0cca664</id>
<content type='text'>
Remove effect specific mutex (mEffectLock) in AudioPolicyService: Due to
concurrent capture (among other reasons), it is necessary that the audio
policy manager state preserved by mLock includes audio effects
registration and enabling.

Moved all audio policy API calls from audio flinger out of locked regions
for audio flinger, thread and effects mutexes to avoid cross deadlocks
between audioflinger and audio policy manager:
- centralized audio policy API calls in EffectModule::updatePolicyState()
- the enabled state now reflects the state requested by the controlling
handle, not the actual effect processing state: a suspended effect is
now considered enabled.

A new audio policy manager API moveEffectsToIo() is added to atomically
handle moving effects to a new input or output without having to call
unregister &gt; register &gt; enable sequence.

Also fix assert in setStreamVolume to match volume group refactoring
in audio policy manager.

Bug: 128419018
Test: CTS tests for audio effects.
Test: manual tests with Duo calls, Play Music, Youtube, notifications
 with and without Bluetooth and wired headset.

Change-Id: I8bd3af81026c55b6be283b3a9b41fe4998e060fd
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Remove effect specific mutex (mEffectLock) in AudioPolicyService: Due to
concurrent capture (among other reasons), it is necessary that the audio
policy manager state preserved by mLock includes audio effects
registration and enabling.

Moved all audio policy API calls from audio flinger out of locked regions
for audio flinger, thread and effects mutexes to avoid cross deadlocks
between audioflinger and audio policy manager:
- centralized audio policy API calls in EffectModule::updatePolicyState()
- the enabled state now reflects the state requested by the controlling
handle, not the actual effect processing state: a suspended effect is
now considered enabled.

A new audio policy manager API moveEffectsToIo() is added to atomically
handle moving effects to a new input or output without having to call
unregister &gt; register &gt; enable sequence.

Also fix assert in setStreamVolume to match volume group refactoring
in audio policy manager.

Bug: 128419018
Test: CTS tests for audio effects.
Test: manual tests with Duo calls, Play Music, Youtube, notifications
 with and without Bluetooth and wired headset.

Change-Id: I8bd3af81026c55b6be283b3a9b41fe4998e060fd
</pre>
</div>
</content>
</entry>
<entry>
<title>audioflinger: Fix EffectChain::dump</title>
<updated>2019-03-28T19:25:01+00:00</updated>
<author>
<name>Mikhail Naganov</name>
<email>mnaganov@google.com</email>
</author>
<published>2019-03-28T19:25:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/replicant-next/frameworks_av/commit/?id=19740cae5b12dadd5edb221d2aab678fc88bbaee'/>
<id>19740cae5b12dadd5edb221d2aab678fc88bbaee</id>
<content type='text'>
Fix missing log line in the case when there are no effects in
the chain.

Bug: 118842894
Test: adb shell dumpsys media.audio_flinger
Change-Id: I31fe4760caa61610de4f143b3a6ae185efb55baa
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Fix missing log line in the case when there are no effects in
the chain.

Bug: 118842894
Test: adb shell dumpsys media.audio_flinger
Change-Id: I31fe4760caa61610de4f143b3a6ae185efb55baa
</pre>
</div>
</content>
</entry>
<entry>
<title>audio: Add support for dumping info from effect HAL modules</title>
<updated>2019-02-22T22:19:19+00:00</updated>
<author>
<name>Mikhail Naganov</name>
<email>mnaganov@google.com</email>
</author>
<published>2019-02-22T22:19:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/replicant-next/frameworks_av/commit/?id=4d54767b7dad323de5f747096f5cdeea0d7691e5'/>
<id>4d54767b7dad323de5f747096f5cdeea0d7691e5</id>
<content type='text'>
The implementation uses IBase::debug() method which can write
debugging info into the provided file descriptor (same model
as used for devices and streams).

Bug: 69939533
Test: adb shell dumpsys media.audio_flinger
Change-Id: I02a74b51977d105edf6f7e624ea26f866c965708
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The implementation uses IBase::debug() method which can write
debugging info into the provided file descriptor (same model
as used for devices and streams).

Bug: 69939533
Test: adb shell dumpsys media.audio_flinger
Change-Id: I02a74b51977d105edf6f7e624ea26f866c965708
</pre>
</div>
</content>
</entry>
<entry>
<title>Effects: add new effect volume flag</title>
<updated>2019-01-28T03:22:46+00:00</updated>
<author>
<name>Jasmine Cha</name>
<email>chajasmine@google.com</email>
</author>
<published>2019-01-23T10:19:14+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/replicant-next/frameworks_av/commit/?id=934ecfbdd877f4f1fdfaa23710eb3164ab6e7715'/>
<id>934ecfbdd877f4f1fdfaa23710eb3164ab6e7715</id>
<content type='text'>
Add new effect flag to monitor requested volume from
audio framework.
Pass requested volume directly if effect is volume monitor,
and others still follow an original rule by volume controller.

Bug: 123251705
Test: On/off equalizer on spotify/google music.
      Switch songs with equalizer
      Attach an effect with EFFECT_FLAG_INSERT_ANY,
                            EFFECT_FLAG_INSERT_FIRST,
			    EFFECT_FLAG_INSERT_LAST
      and check received volume.

Change-Id: I01632bebb32aa6f921c964536039d43859ae3632
Signed-off-by: Jasmine Cha &lt;chajasmine@google.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Add new effect flag to monitor requested volume from
audio framework.
Pass requested volume directly if effect is volume monitor,
and others still follow an original rule by volume controller.

Bug: 123251705
Test: On/off equalizer on spotify/google music.
      Switch songs with equalizer
      Attach an effect with EFFECT_FLAG_INSERT_ANY,
                            EFFECT_FLAG_INSERT_FIRST,
			    EFFECT_FLAG_INSERT_LAST
      and check received volume.

Change-Id: I01632bebb32aa6f921c964536039d43859ae3632
Signed-off-by: Jasmine Cha &lt;chajasmine@google.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Effects: Fix write mode for disabled effects</title>
<updated>2018-10-31T22:47:58+00:00</updated>
<author>
<name>Andy Hung</name>
<email>hunga@google.com</email>
</author>
<published>2018-10-31T21:22:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/replicant-next/frameworks_av/commit/?id=e8ac1b2f52dc760bd1abd3dc720a5d9b59df51ad'/>
<id>e8ac1b2f52dc760bd1abd3dc720a5d9b59df51ad</id>
<content type='text'>
This case is generally not encountered; we are fixing this
to ensure correctness for future code.

Test: No regression with MP3 effects and solo tester
Bug:118775810
Change-Id: I016e23101d42ffeee1e66102b6f6276f17c47684
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This case is generally not encountered; we are fixing this
to ensure correctness for future code.

Test: No regression with MP3 effects and solo tester
Bug:118775810
Change-Id: I016e23101d42ffeee1e66102b6f6276f17c47684
</pre>
</div>
</content>
</entry>
<entry>
<title>Effects: Fix multichannel accumulate when disabled</title>
<updated>2018-10-31T21:56:21+00:00</updated>
<author>
<name>Andy Hung</name>
<email>hunga@google.com</email>
</author>
<published>2018-10-31T21:19:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/replicant-next/frameworks_av/commit/?id=dd2e7a8ec3894faa66776f058355b1acff2b7e31'/>
<id>dd2e7a8ec3894faa66776f058355b1acff2b7e31</id>
<content type='text'>
Ensure all channels are accumulated.

Test: Use 4ch USB device, play MP3 with effects, see bug
Bug: 115693755
Change-Id: Ic1eb04dcff34284b3fff67266874eca41a43e523
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Ensure all channels are accumulated.

Test: Use 4ch USB device, play MP3 with effects, see bug
Bug: 115693755
Change-Id: Ic1eb04dcff34284b3fff67266874eca41a43e523
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge "Suppress implicit-fallthrough warnings in audioflinger etc." am: a494bb1527 am: 8662f3b9a2</title>
<updated>2018-09-17T23:44:40+00:00</updated>
<author>
<name>Chih-hung Hsieh</name>
<email>chh@google.com</email>
</author>
<published>2018-09-17T23:44:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/replicant-next/frameworks_av/commit/?id=17a4a0feba513a721b23edeb9a915e4ce87b58a8'/>
<id>17a4a0feba513a721b23edeb9a915e4ce87b58a8</id>
<content type='text'>
am: d06ae78ee7

Change-Id: Iee095b6e1278d372b3a7c171f926bd730dbc388b
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
am: d06ae78ee7

Change-Id: Iee095b6e1278d372b3a7c171f926bd730dbc388b
</pre>
</div>
</content>
</entry>
</feed>
