Merge "Do not duck AAudio streams as a result of focus loss" into oc-dr1-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
be6989cb9d
@@ -29,6 +29,8 @@ import android.os.IBinder;
|
||||
import android.os.RemoteException;
|
||||
import android.util.Log;
|
||||
|
||||
import com.android.internal.util.ArrayUtils;
|
||||
|
||||
import java.io.PrintWriter;
|
||||
import java.text.DateFormat;
|
||||
import java.util.ArrayList;
|
||||
@@ -67,6 +69,12 @@ public final class PlaybackActivityMonitor
|
||||
.createIfNeeded()
|
||||
.build();
|
||||
|
||||
// TODO support VolumeShaper on those players
|
||||
private static final int[] UNDUCKABLE_PLAYER_TYPES = {
|
||||
AudioPlaybackConfiguration.PLAYER_TYPE_AAUDIO,
|
||||
AudioPlaybackConfiguration.PLAYER_TYPE_JAM_SOUNDPOOL,
|
||||
};
|
||||
|
||||
// like a PLAY_CREATE_IF_NEEDED operation but with a skip to the end of the ramp
|
||||
private static final VolumeShaper.Operation PLAY_SKIP_RAMP =
|
||||
new VolumeShaper.Operation.Builder(PLAY_CREATE_IF_NEEDED).setXOffset(1.0f).build();
|
||||
@@ -298,12 +306,12 @@ public final class PlaybackActivityMonitor
|
||||
+ " uid:" + apc.getClientUid() + " pid:" + apc.getClientPid()
|
||||
+ " - SPEECH");
|
||||
return false;
|
||||
} else if (apc.getPlayerType()
|
||||
== AudioPlaybackConfiguration.PLAYER_TYPE_JAM_SOUNDPOOL) {
|
||||
// TODO support ducking of SoundPool players
|
||||
} else if (ArrayUtils.contains(UNDUCKABLE_PLAYER_TYPES, apc.getPlayerType())) {
|
||||
Log.v(TAG, "not ducking player " + apc.getPlayerInterfaceId()
|
||||
+ " uid:" + apc.getClientUid() + " pid:" + apc.getClientPid()
|
||||
+ " - SoundPool");
|
||||
+ " due to type:"
|
||||
+ AudioPlaybackConfiguration.toLogFriendlyPlayerType(
|
||||
apc.getPlayerType()));
|
||||
return false;
|
||||
}
|
||||
apcsToDuck.add(apc);
|
||||
|
||||
Reference in New Issue
Block a user