summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPatrik Ryd <patrik.ryd@linaro.org>2012-06-13 13:44:58 +0200
committerPatrik Ryd <patrik.ryd@linaro.org>2012-06-18 12:49:26 +0200
commitb84f4b0a7cad621b4e94f1ad9272a30660c1074b (patch)
treeb545a9f3bff66dd1162a7102146dc24d24c4b9d6
parent484dff03c7e5287fa97b22bdfb9e0ae3d023d79c (diff)
downloadlibhardware_legacy-linaro_android_4.0.4_snowball_mm.tar.gz
Add #ifdef STERICSSON_CODEC_SUPPORT for ST-Ericsson modifications.linaro_android_4.0.4_snowball_mm
The snowball specific changes from ST-Ericsson are surrounded by the STERICSSON_CODEC_SUPPORT flag. Change-Id: I0497a93b653360a4e677b6eb7ac2d86074dbeb3a Signed-off-by: Patrik Ryd <patrik.ryd@linaro.org>
-rw-r--r--audio/AudioPolicyCompatClient.cpp15
-rw-r--r--audio/AudioPolicyCompatClient.h5
-rw-r--r--audio/AudioPolicyManagerBase.cpp8
-rw-r--r--audio/audio_hw_hal.cpp4
-rw-r--r--audio/audio_policy_hal.cpp8
-rw-r--r--include/hardware_legacy/AudioPolicyInterface.h11
-rw-r--r--include/hardware_legacy/AudioPolicyManagerBase.h4
-rw-r--r--include/hardware_legacy/AudioSystemLegacy.h28
8 files changed, 81 insertions, 2 deletions
diff --git a/audio/AudioPolicyCompatClient.cpp b/audio/AudioPolicyCompatClient.cpp
index 7838031..9b839cf 100644
--- a/audio/AudioPolicyCompatClient.cpp
+++ b/audio/AudioPolicyCompatClient.cpp
@@ -67,17 +67,32 @@ audio_io_handle_t AudioPolicyCompatClient::openInput(uint32_t *pDevices,
uint32_t *pSamplingRate,
uint32_t *pFormat,
uint32_t *pChannels,
+#ifdef STERICSSON_CODEC_SUPPORT
uint32_t acoustics,
uint32_t *pInputClientId)
+#else
+ uint32_t acoustics)
+#endif
{
return mServiceOps->open_input(mService, pDevices, pSamplingRate, pFormat,
+#ifdef STERICSSON_CODEC_SUPPORT
pChannels, acoustics, pInputClientId);
+#else
+ pChannels, acoustics);
+#endif
}
+#ifdef STERICSSON_CODEC_SUPPORT
status_t AudioPolicyCompatClient::closeInput(audio_io_handle_t input, uint32_t *inputClientId)
{
return mServiceOps->close_input(mService, input, inputClientId);
}
+#else
+status_t AudioPolicyCompatClient::closeInput(audio_io_handle_t input)
+{
+ return mServiceOps->close_input(mService, input);
+}
+#endif
status_t AudioPolicyCompatClient::setStreamOutput(AudioSystem::stream_type stream,
audio_io_handle_t output)
diff --git a/audio/AudioPolicyCompatClient.h b/audio/AudioPolicyCompatClient.h
index 80eff08..8b6e334 100644
--- a/audio/AudioPolicyCompatClient.h
+++ b/audio/AudioPolicyCompatClient.h
@@ -50,9 +50,14 @@ public:
uint32_t *pSamplingRate,
uint32_t *pFormat,
uint32_t *pChannels,
+#ifdef STERICSSON_CODEC_SUPPORT
uint32_t acoustics,
uint32_t *pInputClientId = NULL);
virtual status_t closeInput(audio_io_handle_t input, uint32_t *inputClientId = NULL);
+#else
+ uint32_t acoustics);
+ virtual status_t closeInput(audio_io_handle_t input);
+#endif
virtual status_t setStreamOutput(AudioSystem::stream_type stream, audio_io_handle_t output);
virtual status_t moveEffects(int session,
audio_io_handle_t srcOutput,
diff --git a/audio/AudioPolicyManagerBase.cpp b/audio/AudioPolicyManagerBase.cpp
index 19e8da0..108bf34 100644
--- a/audio/AudioPolicyManagerBase.cpp
+++ b/audio/AudioPolicyManagerBase.cpp
@@ -674,8 +674,12 @@ audio_io_handle_t AudioPolicyManagerBase::getInput(int inputSource,
uint32_t samplingRate,
uint32_t format,
uint32_t channels,
+#ifdef STERICSSON_CODEC_SUPPORT
AudioSystem::audio_in_acoustics acoustics,
audio_input_clients *inputClientId)
+#else
+ AudioSystem::audio_in_acoustics acoustics)
+#endif
{
audio_io_handle_t input = 0;
uint32_t device = getDeviceForInputSource(inputSource);
@@ -714,8 +718,12 @@ audio_io_handle_t AudioPolicyManagerBase::getInput(int inputSource,
&inputDesc->mSamplingRate,
&inputDesc->mFormat,
&inputDesc->mChannels,
+#ifdef STERICSSON_CODEC_SUPPORT
inputDesc->mAcoustics,
(uint32_t*)inputClientId);
+#else
+ inputDesc->mAcoustics);
+#endif
// only accept input with the exact requested set of parameters
if (input == 0 ||
diff --git a/audio/audio_hw_hal.cpp b/audio/audio_hw_hal.cpp
index 1269670..570ae1a 100644
--- a/audio/audio_hw_hal.cpp
+++ b/audio/audio_hw_hal.cpp
@@ -312,7 +312,9 @@ static uint32_t adev_get_supported_devices(const struct audio_hw_device *dev)
AUDIO_DEVICE_OUT_WIRED_HEADSET |
AUDIO_DEVICE_OUT_WIRED_HEADPHONE |
AUDIO_DEVICE_OUT_AUX_DIGITAL |
+#ifdef STERICSSON_CODEC_SUPPORT
AUDIO_DEVICE_OUT_FM_TX |
+#endif
AUDIO_DEVICE_OUT_ANLG_DOCK_HEADSET |
AUDIO_DEVICE_OUT_DGTL_DOCK_HEADSET |
AUDIO_DEVICE_OUT_ALL_SCO |
@@ -324,7 +326,9 @@ static uint32_t adev_get_supported_devices(const struct audio_hw_device *dev)
AUDIO_DEVICE_IN_WIRED_HEADSET |
AUDIO_DEVICE_IN_AUX_DIGITAL |
AUDIO_DEVICE_IN_BACK_MIC |
+#ifdef STERICSSON_CODEC_SUPPORT
AUDIO_DEVICE_IN_FM_RX |
+#endif
AUDIO_DEVICE_IN_ALL_SCO |
AUDIO_DEVICE_IN_DEFAULT);
}
diff --git a/audio/audio_policy_hal.cpp b/audio/audio_policy_hal.cpp
index ae2e117..c9c7b45 100644
--- a/audio/audio_policy_hal.cpp
+++ b/audio/audio_policy_hal.cpp
@@ -175,12 +175,20 @@ static audio_io_handle_t ap_get_input(struct audio_policy *pol, int inputSource,
uint32_t sampling_rate,
uint32_t format,
uint32_t channels,
+#ifdef STERICSSON_CODEC_SUPPORT
audio_in_acoustics_t acoustics,
audio_input_clients *inputClientId)
+#else
+ audio_in_acoustics_t acoustics)
+#endif
{
struct legacy_audio_policy *lap = to_lap(pol);
return lap->apm->getInput(inputSource, sampling_rate, format, channels,
+#ifdef STERICSSON_CODEC_SUPPORT
(AudioSystem::audio_in_acoustics)acoustics, (audio_input_clients*)inputClientId);
+#else
+ (AudioSystem::audio_in_acoustics)acoustics);
+#endif
}
static int ap_start_input(struct audio_policy *pol, audio_io_handle_t input)
diff --git a/include/hardware_legacy/AudioPolicyInterface.h b/include/hardware_legacy/AudioPolicyInterface.h
index 0472a15..073e387 100644
--- a/include/hardware_legacy/AudioPolicyInterface.h
+++ b/include/hardware_legacy/AudioPolicyInterface.h
@@ -111,8 +111,12 @@ public:
uint32_t samplingRate = 0,
uint32_t Format = AudioSystem::FORMAT_DEFAULT,
uint32_t channels = 0,
+#ifdef STERICSSON_CODEC_SUPPORT
AudioSystem::audio_in_acoustics acoustics = (AudioSystem::audio_in_acoustics)0,
audio_input_clients *inputClientId = NULL) = 0;
+#else
+ AudioSystem::audio_in_acoustics acoustics = (AudioSystem::audio_in_acoustics)0) = 0;
+#endif
// indicates to the audio policy manager that the input starts being used.
virtual status_t startInput(audio_io_handle_t input) = 0;
// indicates to the audio policy manager that the input stops being used.
@@ -197,10 +201,17 @@ public:
uint32_t *pSamplingRate,
uint32_t *pFormat,
uint32_t *pChannels,
+#ifdef STERICSSON_CODEC_SUPPORT
uint32_t acoustics,
uint32_t *pInputClientId = NULL) = 0;
// closes an audio input
virtual status_t closeInput(audio_io_handle_t input, uint32_t *inputClientId = NULL) = 0;
+#else
+ uint32_t acoustics) = 0;
+ // closes an audio input
+ virtual status_t closeInput(audio_io_handle_t input) = 0;
+
+#endif
//
// misc control functions
//
diff --git a/include/hardware_legacy/AudioPolicyManagerBase.h b/include/hardware_legacy/AudioPolicyManagerBase.h
index 471f8a8..1555587 100644
--- a/include/hardware_legacy/AudioPolicyManagerBase.h
+++ b/include/hardware_legacy/AudioPolicyManagerBase.h
@@ -92,8 +92,12 @@ public:
uint32_t samplingRate,
uint32_t format,
uint32_t channels,
+#ifdef STERICSSON_CODEC_SUPPORT
AudioSystem::audio_in_acoustics acoustics,
audio_input_clients *inputClientId = NULL);
+#else
+ AudioSystem::audio_in_acoustics acoustics);
+#endif
// indicates to the audio policy manager that the input starts being used.
virtual status_t startInput(audio_io_handle_t input);
// indicates to the audio policy manager that the input stops being used.
diff --git a/include/hardware_legacy/AudioSystemLegacy.h b/include/hardware_legacy/AudioSystemLegacy.h
index 227eda6..028f656 100644
--- a/include/hardware_legacy/AudioSystemLegacy.h
+++ b/include/hardware_legacy/AudioSystemLegacy.h
@@ -61,9 +61,13 @@ enum audio_source {
AUDIO_SOURCE_CAMCORDER = 5,
AUDIO_SOURCE_VOICE_RECOGNITION = 6,
AUDIO_SOURCE_VOICE_COMMUNICATION = 7,
+#ifdef STERICSSON_CODEC_SUPPORT
AUDIO_SOURCE_FM_RADIO_RX = 8,
AUDIO_SOURCE_SPEECH_PROC = 9,
AUDIO_SOURCE_MAX = AUDIO_SOURCE_SPEECH_PROC,
+#else
+ AUDIO_SOURCE_MAX = AUDIO_SOURCE_VOICE_COMMUNICATION,
+#endif
AUDIO_SOURCE_LIST_END // must be last - used to validate audio source type
};
@@ -83,7 +87,9 @@ public:
ENFORCED_AUDIBLE = 7, // Sounds that cannot be muted by user and must be routed to speaker
DTMF = 8,
TTS = 9,
+#ifdef STERICSSON_CODEC_SUPPORT
SPEECH_PROC = 10,
+#endif
NUM_STREAM_TYPES
};
@@ -136,6 +142,7 @@ public:
HE_AAC_V1 = 0x05000000,
HE_AAC_V2 = 0x06000000,
VORBIS = 0x07000000,
+#ifdef STERICSSON_CODEC_SUPPORT
AC3 = 0x08000000,
MPEG1 = 0x09000000,
MPEG2 = 0x0A000000,
@@ -147,6 +154,7 @@ public:
MAT = 0x10000000,
DST = 0x11000000,
WMA_PRO = 0x12000000,
+#endif
MAIN_FORMAT_MASK = 0xFF000000,
SUB_FORMAT_MASK = 0x00FFFFFF,
// Aliases
@@ -255,14 +263,24 @@ public:
DEVICE_OUT_AUX_DIGITAL = 0x400,
DEVICE_OUT_ANLG_DOCK_HEADSET = 0x800,
DEVICE_OUT_DGTL_DOCK_HEADSET = 0x1000,
+#ifdef STERICSSON_CODEC_SUPPORT
DEVICE_OUT_FM_RADIO_TX = 0x2000,
+#endif
DEVICE_OUT_DEFAULT = 0x8000,
DEVICE_OUT_ALL = (DEVICE_OUT_EARPIECE | DEVICE_OUT_SPEAKER | DEVICE_OUT_WIRED_HEADSET |
DEVICE_OUT_WIRED_HEADPHONE | DEVICE_OUT_BLUETOOTH_SCO | DEVICE_OUT_BLUETOOTH_SCO_HEADSET |
DEVICE_OUT_BLUETOOTH_SCO_CARKIT | DEVICE_OUT_BLUETOOTH_A2DP | DEVICE_OUT_BLUETOOTH_A2DP_HEADPHONES |
+#ifdef STERICSSON_CODEC_SUPPORT
DEVICE_OUT_BLUETOOTH_A2DP_SPEAKER | DEVICE_OUT_AUX_DIGITAL | DEVICE_OUT_FM_RADIO_TX |
+#else
+ DEVICE_OUT_BLUETOOTH_A2DP_SPEAKER | DEVICE_OUT_AUX_DIGITAL |
+#endif
DEVICE_OUT_ANLG_DOCK_HEADSET | DEVICE_OUT_DGTL_DOCK_HEADSET |
+#ifdef STERICSSON_CODEC_SUPPORT
DEVICE_OUT_FM_RADIO_TX | DEVICE_OUT_DEFAULT),
+#else
+ DEVICE_OUT_DEFAULT),
+#endif
DEVICE_OUT_ALL_A2DP = (DEVICE_OUT_BLUETOOTH_A2DP | DEVICE_OUT_BLUETOOTH_A2DP_HEADPHONES |
DEVICE_OUT_BLUETOOTH_A2DP_SPEAKER),
@@ -275,12 +293,18 @@ public:
DEVICE_IN_AUX_DIGITAL = 0x200000,
DEVICE_IN_VOICE_CALL = 0x400000,
DEVICE_IN_BACK_MIC = 0x800000,
+#ifdef STERICSSON_CODEC_SUPPORT
DEVICE_IN_FM_RADIO_RX = 0x1000000,
+#endif
DEVICE_IN_DEFAULT = 0x80000000,
DEVICE_IN_ALL = (DEVICE_IN_COMMUNICATION | DEVICE_IN_AMBIENT | DEVICE_IN_BUILTIN_MIC |
DEVICE_IN_BLUETOOTH_SCO_HEADSET | DEVICE_IN_WIRED_HEADSET | DEVICE_IN_AUX_DIGITAL |
+#ifdef STERICSSON_CODEC_SUPPORT
DEVICE_IN_VOICE_CALL | DEVICE_IN_BACK_MIC | DEVICE_IN_FM_RADIO_RX | DEVICE_IN_DEFAULT)
+#else
+ DEVICE_IN_VOICE_CALL | DEVICE_IN_BACK_MIC | DEVICE_IN_DEFAULT)
+#endif
};
// request to open a direct output with getOutput() (by opposition to sharing an output with other AudioTracks)
@@ -313,7 +337,7 @@ public:
FOR_DOCK,
NUM_FORCE_USE
};
-
+#ifdef STERICSSON_CODEC_SUPPORT
// AUDIO_INPUT_CLIENT_ID_BASE provide a means to refer to client Id´s not explicitly defined in the enum audio_input_clients
#define AUDIO_INPUT_CLIENT_ID_BASE AUDIO_INPUT_CLIENT_ID1
@@ -325,7 +349,7 @@ public:
AUDIO_INPUT_CLIENT_PLAYBACK = 0x80000000, // request client of playback type
AUDIO_INPUT_CLIENT_RECORD = 0x80000001 // request client of recording type
};
-
+#endif
//
// AudioPolicyService interface