summaryrefslogtreecommitdiffstats
path: root/modules
diff options
context:
space:
mode:
authorEric Laurent <elaurent@google.com>2011-12-09 17:10:40 -0800
committerEric Laurent <elaurent@google.com>2012-01-17 09:10:45 -0800
commitca20b17b419eec2b196877be38f9c4290449aeac (patch)
treeb1193d77a7b45b91fed9ee36a55c58f62898f357 /modules
parentc38e7baa4f7f0ee69ba494a4624d1f6dd3e21bec (diff)
downloadhardware_libhardware-ca20b17b419eec2b196877be38f9c4290449aeac.zip
hardware_libhardware-ca20b17b419eec2b196877be38f9c4290449aeac.tar.gz
hardware_libhardware-ca20b17b419eec2b196877be38f9c4290449aeac.tar.bz2
audio policy: manage stream volume per device
Improve volume management by keeping track of volume for each type of device independently. Added functions at the audio policy interface to set and get stream volume for a particular device. Change-Id: Ic8899e82e48193cb65b3673e9d20383efed943b5
Diffstat (limited to 'modules')
-rw-r--r--modules/audio/audio_policy.c18
1 files changed, 18 insertions, 0 deletions
diff --git a/modules/audio/audio_policy.c b/modules/audio/audio_policy.c
index 3313d48..71c8f92 100644
--- a/modules/audio/audio_policy.c
+++ b/modules/audio/audio_policy.c
@@ -163,6 +163,22 @@ static int ap_get_stream_volume_index(const struct audio_policy *pol,
return -ENOSYS;
}
+static int ap_set_stream_volume_index_for_device(struct audio_policy *pol,
+ audio_stream_type_t stream,
+ int index,
+ audio_devices_t device)
+{
+ return -ENOSYS;
+}
+
+static int ap_get_stream_volume_index_for_device(const struct audio_policy *pol,
+ audio_stream_type_t stream,
+ int *index,
+ audio_devices_t device)
+{
+ return -ENOSYS;
+}
+
static uint32_t ap_get_strategy_for_stream(const struct audio_policy *pol,
audio_stream_type_t stream)
{
@@ -250,6 +266,8 @@ static int create_default_ap(const struct audio_policy_device *device,
dap->policy.init_stream_volume = ap_init_stream_volume;
dap->policy.set_stream_volume_index = ap_set_stream_volume_index;
dap->policy.get_stream_volume_index = ap_get_stream_volume_index;
+ dap->policy.set_stream_volume_index_for_device = ap_set_stream_volume_index_for_device;
+ dap->policy.get_stream_volume_index_for_device = ap_get_stream_volume_index_for_device;
dap->policy.get_strategy_for_stream = ap_get_strategy_for_stream;
dap->policy.get_devices_for_stream = ap_get_devices_for_stream;
dap->policy.get_output_for_effect = ap_get_output_for_effect;