diff options
author | Steve Kondik <shade@chemlab.org> | 2013-07-27 05:03:46 -0700 |
---|---|---|
committer | Steve Kondik <shade@chemlab.org> | 2013-07-28 01:15:01 -0700 |
commit | ec38e3d73d3d8cd3bdb16145d8967d7348202c9c (patch) | |
tree | ddab04042e9d1449c48f56f9bca625885d1bd403 | |
parent | c9c470532ec24dc9f8594e859221c012a7830065 (diff) | |
download | android_hardware_libhardware_legacy-next.tar.gz android_hardware_libhardware_legacy-next.tar.bz2 android_hardware_libhardware_legacy-next.zip |
Add ifdefs for QCOM audio featuresnext
Change-Id: I1f60e185e1d0e8047db153eccb52e1c72a4862c6
-rw-r--r-- | audio/AudioPolicyManagerBase.cpp | 28 | ||||
-rw-r--r-- | include/hardware_legacy/AudioHardwareInterface.h | 3 | ||||
-rw-r--r-- | include/hardware_legacy/AudioSystemLegacy.h | 42 |
3 files changed, 64 insertions, 9 deletions
diff --git a/audio/AudioPolicyManagerBase.cpp b/audio/AudioPolicyManagerBase.cpp index a5748ed..434e12f 100644 --- a/audio/AudioPolicyManagerBase.cpp +++ b/audio/AudioPolicyManagerBase.cpp @@ -1063,7 +1063,7 @@ status_t AudioPolicyManagerBase::setStreamVolumeIndex(AudioSystem::stream_type s audio_devices_t curDevice = getDeviceForVolume(mOutputs.valueAt(i)->device()); #ifndef ICS_AUDIO_BLOB - if (device == curDevice) + if ((device == AUDIO_DEVICE_OUT_DEFAULT) || (device == curDevice)) #endif { status_t volStatus = checkAndSetVolume(stream, index, mOutputs.keyAt(i), curDevice); @@ -1402,8 +1402,12 @@ AudioPolicyManagerBase::AudioPolicyManagerBase(AudioPolicyClientInterface *clien { const IOProfile *outProfile = mHwModules[i]->mOutputProfiles[j]; +#ifdef QCOM_HARDWARE if ( (outProfile->mSupportedDevices & mAttachedOutputDevices) && !(outProfile->mFlags & AUDIO_OUTPUT_FLAG_DIRECT) ){ +#else + if (outProfile->mSupportedDevices & mAttachedOutputDevices) { +#endif AudioOutputDescriptor *outputDesc = new AudioOutputDescriptor(outProfile); outputDesc->mDevice = (audio_devices_t)(mDefaultOutputDevice & outProfile->mSupportedDevices); @@ -2128,7 +2132,9 @@ AudioPolicyManagerBase::routing_strategy AudioPolicyManagerBase::getStrategy( // while key clicks are played produces a poor result case AudioSystem::TTS: case AudioSystem::MUSIC: +#ifdef QCOM_HARDWARE case AudioSystem::INCALL_MUSIC: +#endif #ifdef QCOM_FM_ENABLED case AudioSystem::FM: #endif @@ -2790,11 +2796,13 @@ const AudioPolicyManagerBase::VolumeCurvePoint sSpeakerMediaVolumeCurve, // DEVICE_CATEGORY_SPEAKER sDefaultMediaVolumeCurve // DEVICE_CATEGORY_EARPIECE }, +#ifdef QCOM_HARDWARE { // AUDIO_STREAM_INCALL_MUSIC sDefaultMediaVolumeCurve, // DEVICE_CATEGORY_HEADSET sSpeakerMediaVolumeCurve, // DEVICE_CATEGORY_SPEAKER sDefaultMediaVolumeCurve // DEVICE_CATEGORY_EARPIECE }, +#endif #ifdef QCOM_FM_ENABLED { // AUDIO_STREAM_FM sDefaultMediaVolumeCurve, // DEVICE_CATEGORY_HEADSET @@ -3550,8 +3558,10 @@ const struct StringToEnum sDeviceNameToEnumTable[] = { STRING_TO_ENUM(AUDIO_DEVICE_OUT_SPEAKER), STRING_TO_ENUM(AUDIO_DEVICE_OUT_WIRED_HEADSET), STRING_TO_ENUM(AUDIO_DEVICE_OUT_WIRED_HEADPHONE), +#ifdef QCOM_HARDWARE STRING_TO_ENUM(AUDIO_DEVICE_OUT_ANC_HEADSET), STRING_TO_ENUM(AUDIO_DEVICE_OUT_ANC_HEADPHONE), +#endif STRING_TO_ENUM(AUDIO_DEVICE_OUT_ALL_SCO), STRING_TO_ENUM(AUDIO_DEVICE_OUT_ALL_A2DP), STRING_TO_ENUM(AUDIO_DEVICE_OUT_AUX_DIGITAL), @@ -3564,12 +3574,16 @@ const struct StringToEnum sDeviceNameToEnumTable[] = { STRING_TO_ENUM(AUDIO_DEVICE_OUT_FM_TX), #endif STRING_TO_ENUM(AUDIO_DEVICE_OUT_ALL_USB), +#ifdef QCOM_HARDWARE STRING_TO_ENUM(AUDIO_DEVICE_OUT_PROXY), +#endif STRING_TO_ENUM(AUDIO_DEVICE_OUT_REMOTE_SUBMIX), STRING_TO_ENUM(AUDIO_DEVICE_IN_BUILTIN_MIC), STRING_TO_ENUM(AUDIO_DEVICE_IN_BLUETOOTH_SCO_HEADSET), STRING_TO_ENUM(AUDIO_DEVICE_IN_WIRED_HEADSET), +#ifdef QCOM_HARDWARE STRING_TO_ENUM(AUDIO_DEVICE_IN_ANC_HEADSET), +#endif STRING_TO_ENUM(AUDIO_DEVICE_IN_AUX_DIGITAL), #if defined(QCOM_FM_ENABLED) || defined(STE_FM) STRING_TO_ENUM(AUDIO_DEVICE_IN_FM_RX), @@ -3581,8 +3595,10 @@ const struct StringToEnum sDeviceNameToEnumTable[] = { STRING_TO_ENUM(AUDIO_DEVICE_IN_ANLG_DOCK_HEADSET), STRING_TO_ENUM(AUDIO_DEVICE_IN_DGTL_DOCK_HEADSET), STRING_TO_ENUM(AUDIO_DEVICE_IN_USB_ACCESSORY), +#ifdef QCOM_HARDWARE STRING_TO_ENUM(AUDIO_DEVICE_IN_PROXY), STRING_TO_ENUM(AUDIO_DEVICE_IN_COMMUNICATION), +#endif }; const struct StringToEnum sFlagNameToEnumTable[] = { @@ -3590,10 +3606,12 @@ const struct StringToEnum sFlagNameToEnumTable[] = { STRING_TO_ENUM(AUDIO_OUTPUT_FLAG_PRIMARY), STRING_TO_ENUM(AUDIO_OUTPUT_FLAG_FAST), STRING_TO_ENUM(AUDIO_OUTPUT_FLAG_DEEP_BUFFER), +#ifdef QCOM_HARDWARE STRING_TO_ENUM(AUDIO_OUTPUT_FLAG_VOIP_RX), STRING_TO_ENUM(AUDIO_OUTPUT_FLAG_LPA), STRING_TO_ENUM(AUDIO_OUTPUT_FLAG_TUNNEL), STRING_TO_ENUM(AUDIO_OUTPUT_FLAG_INCALL_MUSIC), +#endif }; const struct StringToEnum sFormatNameToEnumTable[] = { @@ -3602,6 +3620,7 @@ const struct StringToEnum sFormatNameToEnumTable[] = { STRING_TO_ENUM(AUDIO_FORMAT_MP3), STRING_TO_ENUM(AUDIO_FORMAT_AAC), STRING_TO_ENUM(AUDIO_FORMAT_VORBIS), +#ifdef QCOM_HARDWARE STRING_TO_ENUM(AUDIO_FORMAT_AC3), STRING_TO_ENUM(AUDIO_FORMAT_EAC3), STRING_TO_ENUM(AUDIO_FORMAT_DTS), @@ -3617,17 +3636,22 @@ const struct StringToEnum sFormatNameToEnumTable[] = { STRING_TO_ENUM(AUDIO_FORMAT_EVRCWB), STRING_TO_ENUM(AUDIO_FORMAT_QCELP), STRING_TO_ENUM(AUDIO_FORMAT_MP2), +#endif }; const struct StringToEnum sOutChannelsNameToEnumTable[] = { STRING_TO_ENUM(AUDIO_CHANNEL_OUT_MONO), STRING_TO_ENUM(AUDIO_CHANNEL_OUT_STEREO), +#ifdef QCOM_HARDWARE STRING_TO_ENUM(AUDIO_CHANNEL_OUT_2POINT1), STRING_TO_ENUM(AUDIO_CHANNEL_OUT_QUAD), STRING_TO_ENUM(AUDIO_CHANNEL_OUT_SURROUND), STRING_TO_ENUM(AUDIO_CHANNEL_OUT_PENTA), +#endif STRING_TO_ENUM(AUDIO_CHANNEL_OUT_5POINT1), +#ifdef QCOM_HARDWARE STRING_TO_ENUM(AUDIO_CHANNEL_OUT_6POINT1), +#endif STRING_TO_ENUM(AUDIO_CHANNEL_OUT_7POINT1), }; @@ -3635,10 +3659,12 @@ const struct StringToEnum sInChannelsNameToEnumTable[] = { STRING_TO_ENUM(AUDIO_CHANNEL_IN_MONO), STRING_TO_ENUM(AUDIO_CHANNEL_IN_STEREO), STRING_TO_ENUM(AUDIO_CHANNEL_IN_FRONT_BACK), +#ifdef QCOM_HARDWARE STRING_TO_ENUM(AUDIO_CHANNEL_IN_5POINT1), STRING_TO_ENUM(AUDIO_CHANNEL_IN_VOICE_CALL_MONO), STRING_TO_ENUM(AUDIO_CHANNEL_IN_VOICE_DNLINK_MONO), STRING_TO_ENUM(AUDIO_CHANNEL_IN_VOICE_UPLINK_MONO), +#endif }; diff --git a/include/hardware_legacy/AudioHardwareInterface.h b/include/hardware_legacy/AudioHardwareInterface.h index e11c22f..17b6b3f 100644 --- a/include/hardware_legacy/AudioHardwareInterface.h +++ b/include/hardware_legacy/AudioHardwareInterface.h @@ -119,6 +119,7 @@ public: #ifndef ICS_AUDIO_BLOB virtual status_t getNextWriteTimestamp(int64_t *timestamp); #endif +#ifdef QCOM_HARDWARE virtual status_t start() {return INVALID_OPERATION;} virtual status_t pause() {return INVALID_OPERATION;} virtual status_t flush() {return INVALID_OPERATION;} @@ -129,7 +130,7 @@ public: *isAvail = true; return NO_ERROR; } - +#endif }; /** diff --git a/include/hardware_legacy/AudioSystemLegacy.h b/include/hardware_legacy/AudioSystemLegacy.h index 69ad909..5904af2 100644 --- a/include/hardware_legacy/AudioSystemLegacy.h +++ b/include/hardware_legacy/AudioSystemLegacy.h @@ -88,7 +88,9 @@ public: ENFORCED_AUDIBLE = 7, // Sounds that cannot be muted by user and must be routed to speaker DTMF = 8, TTS = 9, +#ifdef QCOM_HARDWARE INCALL_MUSIC = 10, +#endif #ifdef QCOM_FM_ENABLED FM = 11, #endif @@ -144,10 +146,12 @@ public: HE_AAC_V1 = 0x05000000, HE_AAC_V2 = 0x06000000, VORBIS = 0x07000000, +#ifdef QCOM_HARDWARE EVRC = 0x08000000, QCELP = 0x09000000, EVRCB = 0x10000000, EVRCWB = 0x11000000, +#endif MAIN_FORMAT_MASK = 0xFF000000, SUB_FORMAT_MASK = 0x00FFFFFF, // Aliases @@ -258,33 +262,44 @@ public: DEVICE_OUT_AUX_DIGITAL = 0x400, DEVICE_OUT_ANLG_DOCK_HEADSET = 0x800, DEVICE_OUT_DGTL_DOCK_HEADSET = 0x1000, +#ifdef QCOM_HARDWARE DEVICE_OUT_USB_ACCESSORY = 0x2000, DEVICE_OUT_USB_DEVICE = 0x4000, +#endif #if defined(QCOM_FM_ENABLED) || defined(STE_FM) DEVICE_OUT_FM = 0x8000, DEVICE_OUT_FM_TX = 0x10000, #endif +#ifdef QCOM_HARDWARE DEVICE_OUT_ANC_HEADSET = 0x20000, DEVICE_OUT_ANC_HEADPHONE = 0x40000, DEVICE_OUT_PROXY = 0x80000, DEVICE_OUT_DEFAULT = DEVICE_OUT_SPEAKER, +#else + DEVICE_OUT_DEFAULT = 0x8000, +#endif 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 | DEVICE_OUT_BLUETOOTH_A2DP_SPEAKER | DEVICE_OUT_AUX_DIGITAL | DEVICE_OUT_ANLG_DOCK_HEADSET | DEVICE_OUT_DGTL_DOCK_HEADSET | +#ifdef QCOM_HARDWARE DEVICE_OUT_USB_ACCESSORY | DEVICE_OUT_USB_DEVICE | DEVICE_OUT_ANC_HEADSET | DEVICE_OUT_ANC_HEADPHONE | - DEVICE_OUT_FM | DEVICE_OUT_FM_TX | - DEVICE_OUT_PROXY | DEVICE_OUT_DEFAULT), - DEVICE_OUT_ALL_A2DP = (DEVICE_OUT_BLUETOOTH_A2DP | DEVICE_OUT_BLUETOOTH_A2DP_HEADPHONES | + DEVICE_OUT_PROXY | +#endif #if defined(QCOM_FM_ENABLED) || defined(STE_FM) DEVICE_OUT_FM | DEVICE_OUT_FM_TX | #endif + DEVICE_OUT_DEFAULT), + DEVICE_OUT_ALL_A2DP = (DEVICE_OUT_BLUETOOTH_A2DP | DEVICE_OUT_BLUETOOTH_A2DP_HEADPHONES | DEVICE_OUT_BLUETOOTH_A2DP_SPEAKER), +#ifdef QCOM_HARDWARE DEVICE_OUT_ALL_USB = (DEVICE_OUT_USB_ACCESSORY | DEVICE_OUT_USB_DEVICE), +#endif // input devices +#ifdef QCOM_HARDWARE DEVICE_IN_COMMUNICATION = 0x100000, DEVICE_IN_AMBIENT = 0x200000, DEVICE_IN_BUILTIN_MIC = 0x400000, @@ -299,6 +314,17 @@ public: DEVICE_IN_DEFAULT = DEVICE_IN_BUILTIN_MIC, DEVICE_IN_ANLG_DOCK_HEADSET = 0x80000000, DEVICE_IN_PROXY = DEVICE_IN_ANLG_DOCK_HEADSET, +#else + DEVICE_IN_COMMUNICATION = 0x10000, + DEVICE_IN_AMBIENT = 0x20000, + DEVICE_IN_BUILTIN_MIC = 0x40000, + DEVICE_IN_BLUETOOTH_SCO_HEADSET = 0x80000, + DEVICE_IN_WIRED_HEADSET = 0x100000, + DEVICE_IN_AUX_DIGITAL = 0x200000, + DEVICE_IN_VOICE_CALL = 0x400000, + DEVICE_IN_BACK_MIC = 0x800000, + DEVICE_IN_DEFAULT = 0x80000000, +#endif #if defined (STE_FM) DEVICE_IN_FM_RX = 0x1000000, @@ -306,13 +332,15 @@ public: 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 | - DEVICE_IN_VOICE_CALL | DEVICE_IN_BACK_MIC | DEVICE_IN_ANC_HEADSET | - DEVICE_IN_FM_RX | DEVICE_IN_FM_RX_A2DP | DEVICE_IN_DEFAULT | - DEVICE_IN_ANLG_DOCK_HEADSET | DEVICE_IN_PROXY + DEVICE_IN_VOICE_CALL | DEVICE_IN_BACK_MIC | +#ifdef QCOM_HARDWARE + DEVICE_IN_ANC_HEADSET | + DEVICE_IN_ANLG_DOCK_HEADSET | DEVICE_IN_PROXY | +#endif #if defined(QCOM_FM_ENABLED) || defined(STE_FM) DEVICE_IN_FM_RX | DEVICE_IN_FM_RX_A2DP | #endif - ) + DEVICE_IN_DEFAULT) }; // request to open a direct output with getOutput() (by opposition to sharing an output with other AudioTracks) |