Audio focus enforcement: use VolumeShaper for ducking

When ducking players, check whether their content type
  is speech, or the player is a SoundPool. If yes, do
  not enforce ducking and leave it to the app. Otherwise
  use a VolumeShaper to duck, and keep it in a list
  so it can be reused to unduck (by using the REVERSE
  operation).

Test: play a notification while an AudioTrack is playing
Bug 30258418

Change-Id: I7e0204ad38d4ef48e88ffc45533caccfc6e279b5
3 files changed