Persist input gain in settings

Creates InputDeviceVolumeHelper to maintain a map of input device to its
gain index. Plug it into AudioService to allow persist input gain and
call lower stack to apply the gain.
Expose APIs in AudioDeviceVolumeManager to set/get device input gain,
get max/min input gain, get isInputGainFixed.

Design doc: go/audio-system-settings-gain-control

Change-Id: Ib69793348cad3af145391b43d396fcc729d92244
Bug:b/364923030
Test:AudioServiceTest
Flag:com.android.media.flags.enable_audio_input_device_routing_and_volume_control
7 files changed