VolumeShaper: Initial implementation

The VolumeShaper is used to apply a volume
envelope to an AudioTrack or a MediaPlayer.

Test: CTS
Bug: 30920125
Bug: 31015569
Change-Id: I42e2f13bd6879299dc780e60d143c2d465483a44
diff --git a/include/media/mediaplayer.h b/include/media/mediaplayer.h
index 2c5ff1f..fbe3926 100644
--- a/include/media/mediaplayer.h
+++ b/include/media/mediaplayer.h
@@ -261,6 +261,11 @@
             status_t        getParameter(int key, Parcel* reply);
             status_t        setRetransmitEndpoint(const char* addrString, uint16_t port);
             status_t        setNextMediaPlayer(const sp<MediaPlayer>& player);
+
+            VolumeShaper::Status applyVolumeShaper(
+                                    const sp<VolumeShaper::Configuration>& configuration,
+                                    const sp<VolumeShaper::Operation>& operation);
+            sp<VolumeShaper::State> getVolumeShaperState(int id);
             // ModDrm
             status_t        prepareDrm(const uint8_t uuid[16], const int mode);
             status_t        releaseDrm();