212 lines
7.9 KiB
C
212 lines
7.9 KiB
C
/*
|
|
* Copyright (C) 2014 The Android Open Source Project
|
|
*
|
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
* you may not use this file except in compliance with the License.
|
|
* You may obtain a copy of the License at
|
|
*
|
|
* http://www.apache.org/licenses/LICENSE-2.0
|
|
*
|
|
* Unless required by applicable law or agreed to in writing, software
|
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
* See the License for the specific language governing permissions and
|
|
* limitations under the License.
|
|
*/
|
|
|
|
#ifndef __EXYNOS_AUDIOHAL_TABLE_H__
|
|
#define __EXYNOS_AUDIOHAL_TABLE_H__
|
|
|
|
/*
|
|
* Audio Streams Table for readable log messages
|
|
*/
|
|
char * stream_table[ASTREAM_CNT] = {
|
|
[ASTREAM_PLAYBACK_PRIMARY] = "primary_out",
|
|
[ASTREAM_PLAYBACK_FAST] = "fast_out",
|
|
[ASTREAM_PLAYBACK_DEEP_BUFFER] = "deep_out",
|
|
[ASTREAM_PLAYBACK_LOW_LATENCY] = "low_out",
|
|
[ASTREAM_PLAYBACK_COMPR_OFFLOAD] = "offload_out",
|
|
[ASTREAM_PLAYBACK_MMAP] = "mmap_out",
|
|
[ASTREAM_PLAYBACK_USB_DEVICE] = "usb_out",
|
|
[ASTREAM_PLAYBACK_AUX_DIGITAL] = "aux_out",
|
|
|
|
[ASTREAM_CAPTURE_PRIMARY] = "primary_in",
|
|
[ASTREAM_CAPTURE_CALL] = "callrec_in",
|
|
[ASTREAM_CAPTURE_LOW_LATENCY] = "low_in",
|
|
[ASTREAM_CAPTURE_MMAP] = "mmap_in",
|
|
[ASTREAM_CAPTURE_USB_DEVICE] = "usb_in",
|
|
[ASTREAM_CAPTURE_FM] = "fmrec_in",
|
|
#ifdef SUPPORT_STHAL_INTERFACE
|
|
[ASTREAM_CAPTURE_HOTWORD] = "hotword_in",
|
|
#endif
|
|
|
|
[ASTREAM_NONE] = "none"
|
|
};
|
|
|
|
/**
|
|
** Audio Usage Table for readable log messages
|
|
**/
|
|
char * usage_table[AUSAGE_CNT] = {
|
|
[AUSAGE_MEDIA] = "media",
|
|
[AUSAGE_RECORDING] = "recording",
|
|
[AUSAGE_CAMCORDER] = "camcoder",
|
|
|
|
[AUSAGE_VOICE_CALL_NB] = "voice_call_nb",
|
|
[AUSAGE_VOICE_CALL_WB] = "voice_call_wb",
|
|
[AUSAGE_VOLTE_CALL_NB] = "volte_call_nb",
|
|
[AUSAGE_VOLTE_CALL_WB] = "volte_call_wb",
|
|
[AUSAGE_VOLTE_CALL_SWB] = "volte_vt_call_swb",
|
|
[AUSAGE_VOLTE_VT_CALL_NB] = "volte_vt_call_nb",
|
|
[AUSAGE_VOLTE_VT_CALL_WB] = "volte_vt_call_wb",
|
|
[AUSAGE_VOLTE_VT_CALL_SWB] = "volte_call_swb",
|
|
[AUSAGE_TTY] = "tty_mode",
|
|
|
|
[AUSAGE_WIFI_CALL_NB] = "vowifi_call_nb",
|
|
[AUSAGE_WIFI_CALL_WB] = "vowifi_call_wb",
|
|
[AUSAGE_WIFI_CALL_SWB] = "vowifi_call_swb",
|
|
[AUSAGE_VIDEO_CALL] = "video_call",
|
|
[AUSAGE_VOIP_CALL] = "voip_call",
|
|
[AUSAGE_COMMUNICATION] = "voip_call",
|
|
[AUSAGE_AP_TTY] = "ap_tty_mode",
|
|
|
|
[AUSAGE_INCALL_UPLINK] = "callrecord_uplink",
|
|
[AUSAGE_INCALL_DOWNLINK] = "callrecord_downlink",
|
|
[AUSAGE_INCALL_UPLINK_DOWNLINK] = "callrecord",
|
|
|
|
[AUSAGE_RECOGNITION] = "recognition",
|
|
|
|
[AUSAGE_FM_RADIO] = "fm_radio",
|
|
|
|
#ifdef SUPPORT_STHAL_INTERFACE
|
|
[AUSAGE_HOTWORD_SEAMLESS] = "hotword_seamless",
|
|
[AUSAGE_HOTWORD_RECORD] = "hotword_record",
|
|
#endif
|
|
|
|
[AUSAGE_LOOPBACK] = "factory_loopback",
|
|
[AUSAGE_LOOPBACK_NODELAY] = "factory_loopback_nodelay",
|
|
[AUSAGE_LOOPBACK_REALTIME] = "factory_loopback_realtime",
|
|
[AUSAGE_LOOPBACK_CODEC] = "factory_loopback_codec",
|
|
[AUSAGE_RMS] = "factory_rms",
|
|
|
|
[AUSAGE_NONE] = "none",
|
|
};
|
|
|
|
/**
|
|
** Usage Path(AP/CP to Codec) Configuration based on Audio Usage
|
|
**/
|
|
char * usage_path_table[AUSAGE_CNT] = {
|
|
[AUSAGE_MEDIA] = "media",
|
|
[AUSAGE_RECORDING] = "recording",
|
|
[AUSAGE_CAMCORDER] = "camcorder",
|
|
|
|
[AUSAGE_VOICE_CALL_NB] = "incall_nb",
|
|
[AUSAGE_VOICE_CALL_WB] = "incall_wb",
|
|
[AUSAGE_VOLTE_CALL_NB] = "volte_cp_nb",
|
|
[AUSAGE_VOLTE_CALL_WB] = "volte_cp_wb",
|
|
[AUSAGE_VOLTE_CALL_SWB] = "volte_cp_evs",
|
|
[AUSAGE_VOLTE_VT_CALL_NB] = "volte_vt_cp_nb",
|
|
[AUSAGE_VOLTE_VT_CALL_WB] = "volte_vt_cp_wb",
|
|
[AUSAGE_VOLTE_VT_CALL_SWB] = "volte_vt_cp_evs",
|
|
[AUSAGE_TTY] = "tty_mode",
|
|
|
|
[AUSAGE_WIFI_CALL_NB] = "wificall_nb",
|
|
[AUSAGE_WIFI_CALL_WB] = "wificall_wb",
|
|
[AUSAGE_WIFI_CALL_SWB] = "wificall_evs",
|
|
[AUSAGE_VIDEO_CALL] = "video_call",
|
|
[AUSAGE_VOIP_CALL] = "voip",
|
|
[AUSAGE_COMMUNICATION] = "communication",
|
|
[AUSAGE_AP_TTY] = "ap_tty_mode",
|
|
|
|
[AUSAGE_INCALL_UPLINK] = "callrecord_uplink",
|
|
[AUSAGE_INCALL_DOWNLINK] = "callrecord_downlink",
|
|
[AUSAGE_INCALL_UPLINK_DOWNLINK] = "callrecord",
|
|
|
|
[AUSAGE_RECOGNITION] = "recognition",
|
|
|
|
[AUSAGE_FM_RADIO] = "fm_radio",
|
|
|
|
#ifdef SUPPORT_STHAL_INTERFACE
|
|
[AUSAGE_HOTWORD_SEAMLESS] = "hotword_seamless", //dummy definition not used
|
|
[AUSAGE_HOTWORD_RECORD] = "hotword_record", //dummy definition not used
|
|
#endif
|
|
|
|
[AUSAGE_LOOPBACK] = "loopback_packet",
|
|
[AUSAGE_LOOPBACK_NODELAY] = "loopback",
|
|
[AUSAGE_LOOPBACK_REALTIME] = "realtimeloopback",
|
|
[AUSAGE_LOOPBACK_CODEC] = "loopback_codec",
|
|
[AUSAGE_RMS] = "echo_test",
|
|
|
|
[AUSAGE_NONE] = "none",
|
|
};
|
|
|
|
/**
|
|
** Device Path(Codec to Device) Configuration based on Audio Input/Output Device
|
|
**/
|
|
char * device_table[DEVICE_CNT] = {
|
|
// Playback Devices
|
|
[DEVICE_EARPIECE] = "handset",
|
|
[DEVICE_SPEAKER] = "speaker",
|
|
[DEVICE_HEADSET] = "headset",
|
|
[DEVICE_HEADPHONE] = "headphone",
|
|
[DEVICE_SPEAKER_AND_HEADSET] = "speaker-headset",
|
|
[DEVICE_SPEAKER_AND_HEADPHONE] = "speaker-headphone",
|
|
[DEVICE_BT_HEADSET] = "bt-sco-headset",
|
|
[DEVICE_FM_EXTERNAL] = "external",
|
|
[DEVICE_SPEAKER_AND_BT_HEADSET] = "speaker-bt-sco-headset",
|
|
[DEVICE_USB_HEADSET] = "usb-headset",
|
|
[DEVICE_AUX_DIGITAL] = "aux-digital",
|
|
|
|
// Special Playback Devices
|
|
[DEVICE_CALL_FWD] = "",
|
|
|
|
// Capture Devices
|
|
[DEVICE_MAIN_MIC] = "mic",
|
|
[DEVICE_HEADSET_MIC] = "headset-mic",
|
|
[DEVICE_HEADSET_MAIN_MIC] = "headset-main-mic",
|
|
[DEVICE_BT_HEADSET_MIC] = "bt-sco-headset-in",
|
|
[DEVICE_BT_NREC_HEADSET_MIC] = "bt-sco-nrec-headset-in",
|
|
[DEVICE_USB_HEADSET_MIC] = "usb-headset-mic",
|
|
|
|
[DEVICE_HANDSET_MIC] = "handset-mic",
|
|
[DEVICE_SPEAKER_MIC] = "speaker-mic",
|
|
[DEVICE_HEADPHONE_MIC] = "headphone-mic",
|
|
|
|
[DEVICE_SUB_MIC] = "2nd-mic",
|
|
[DEVICE_FULL_MIC] = "full-mic",
|
|
[DEVICE_HCO_MIC] = "hco-mic",
|
|
[DEVICE_VCO_MIC] = "vco-mic",
|
|
|
|
[DEVICE_FM_TUNER] = "fm-tuner",
|
|
|
|
[DEVICE_NONE] = "none",
|
|
};
|
|
|
|
/**
|
|
** Sampling Rate Modifier Configuration based on Audio Input/Output Device
|
|
**/
|
|
char * modifier_table[MODIFIER_MAX] = {
|
|
/* RX modifier */
|
|
[MODIFIER_BT_SCO_RX_NB] = "set-bt-sco-rx-rate-nb",
|
|
[MODIFIER_BT_SCO_RX_WB] = "set-bt-sco-rx-rate-wb",
|
|
|
|
/* TX modifier */
|
|
[MODIFIER_BT_SCO_TX_NB] = "set-bt-sco-tx-rate-nb",
|
|
[MODIFIER_BT_SCO_TX_WB] = "set-bt-sco-tx-rate-wb",
|
|
|
|
[MODIFIER_NONE] = "none",
|
|
};
|
|
|
|
/**
|
|
** Offload Message Table for readable log messages
|
|
**/
|
|
char * offload_msg_table[OFFLOAD_MSG_MAX] = {
|
|
[OFFLOAD_MSG_INVALID] = "Offload Message_Invalid",
|
|
[OFFLOAD_MSG_WAIT_WRITE] = "Offload Message_Wait to write",
|
|
[OFFLOAD_MSG_WAIT_DRAIN] = "Offload Message_Wait to drain",
|
|
[OFFLOAD_MSG_WAIT_PARTIAL_DRAIN] = "Offload Message_Wait to drain partially",
|
|
[OFFLOAD_MSG_EXIT] = "Offload Message_Wait to exit",
|
|
};
|
|
|
|
|
|
#endif // __EXYNOS_AUDIOHAL_TABLE_H__
|