Skip to content

Instantly share code, notes, and snippets.

@kmanna
Created September 10, 2014 18:13
Show Gist options
  • Save kmanna/a45e1067f72fbedc3bd6 to your computer and use it in GitHub Desktop.
Save kmanna/a45e1067f72fbedc3bd6 to your computer and use it in GitHub Desktop.
# Global configuration section: lists input and output devices always present on the device
# as well as the output device selected by default.
# Devices are designated by a string that corresponds to the enum in audio.h
global_configuration {
attached_output_devices AUDIO_DEVICE_OUT_SPEAKER
default_output_device AUDIO_DEVICE_OUT_SPEAKER
attached_input_devices AUDIO_DEVICE_IN_BUILTIN_MIC
}
# audio hardware module section: contains descriptors for all audio hw modules present on the
# device. Each hw module node is named after the corresponding hw module library base name.
# For instance, "primary" corresponds to audio.primary.<device>.so.
# The "primary" module is mandatory and must include at least one output with
# AUDIO_OUTPUT_FLAG_PRIMARY flag.
# Each module descriptor contains one or more output profile descriptors and zero or more
# input profile descriptors. Each profile lists all the parameters supported by a given output
# or input stream category.
# The "channel_masks", "formats", "devices" and "flags" are specified using strings corresponding
# to enums in audio.h and audio_policy.h. They are concatenated by use of "|" without space or "\n".
audio_hw_modules {
primary {
outputs {
primary {
sampling_rates 44100
channel_masks AUDIO_CHANNEL_OUT_STEREO
formats AUDIO_FORMAT_PCM_16_BIT
devices AUDIO_DEVICE_OUT_SPEAKER|AUDIO_DEVICE_OUT_WIRED_HEADSET|AUDIO_DEVICE_OUT_WIRED_HEADPHONE|AUDIO_DEVICE_OUT_ALL_SCO|AUDIO_DEVICE_OUT_ANLG_DOCK_HEADSET|AUDIO_DEVICE_OUT_DGTL_DOCK_HEADSET
flags AUDIO_OUTPUT_FLAG_PRIMARY
}
}
inputs {
primary {
sampling_rates 8000|11025|16000|22050|24000|32000|44100|48000
channel_masks AUDIO_CHANNEL_IN_MONO|AUDIO_CHANNEL_IN_STEREO
formats AUDIO_FORMAT_PCM_16_BIT
devices AUDIO_DEVICE_IN_BUILTIN_MIC|AUDIO_DEVICE_IN_BLUETOOTH_SCO_HEADSET|AUDIO_DEVICE_IN_WIRED_HEADSET|AUDIO_DEVICE_IN_ANLG_DOCK_HEADSET|AUDIO_DEVICE_IN_DGTL_DOCK_HEADSET
}
}
}
a2dp {
outputs {
a2dp {
sampling_rates 44100
channel_masks AUDIO_CHANNEL_OUT_STEREO
formats AUDIO_FORMAT_PCM_16_BIT
devices AUDIO_DEVICE_OUT_ALL_A2DP
}
}
}
hdmi {
outputs {
stereo {
sampling_rates 44100|48000
channel_masks AUDIO_CHANNEL_OUT_STEREO
formats AUDIO_FORMAT_PCM_16_BIT
devices AUDIO_DEVICE_OUT_AUX_DIGITAL
}
multichannel {
sampling_rates 44100|48000
channel_masks dynamic
formats AUDIO_FORMAT_PCM_16_BIT
devices AUDIO_DEVICE_OUT_AUX_DIGITAL
flags AUDIO_OUTPUT_FLAG_DIRECT
}
}
}
usb {
outputs {
usb_accessory {
sampling_rates 44100
channel_masks AUDIO_CHANNEL_OUT_STEREO
formats AUDIO_FORMAT_PCM_16_BIT
devices AUDIO_DEVICE_OUT_USB_ACCESSORY
}
usb_device {
sampling_rates 44100
channel_masks AUDIO_CHANNEL_OUT_STEREO
formats AUDIO_FORMAT_PCM_16_BIT
devices AUDIO_DEVICE_OUT_USB_DEVICE
}
}
}
}
<mixer>
<!-- These are the initial mixer settings -->
<ctl name="Speaker Switch" value="1" />
<ctl name="Int Mic Switch" value="0" />
<ctl name="Int Spk Switch" value="0" />
<ctl name="Headphone Jack Switch" value="0" />
<ctl name="Mic Jack Switch" value="0" />
<ctl name="Right Speaker Mixer DACR Switch" value="1"/>
<ctl name="Left Speaker Mixer DACL Switch" value="1"/>
<ctl name="HPF Switch" value="0"/>
<ctl name="Right ADC Input" value="ADC"/>
<ctl name="Left ADC Input" value="ADC"/>
<ctl name="Digital Capture Volume" value="96"/>
<ctl name="DRC Switch" value="0"/>
<path name="speaker">
<ctl name="Int Spk Switch" value="1" />
<ctl name="Headphone Jack Switch" value="0" />
</path>
<path name="headphone">
<ctl name="Int Spk Switch" value="0" />
<ctl name="Headphone Jack Switch" value="1" />
<ctl name="Right Speaker Mixer DACR Switch" value="0"/>
<ctl name="Left Speaker Mixer DACL Switch" value="0"/>
</path>
<path name="hdmi">
<ctl name="Speaker Switch" value="0" />
</path>
<path name="main-mic-top">
<ctl name="Int Mic Switch" value="1" />
<ctl name="HPF Switch" value="1"/>
<ctl name="Right ADC Input" value="DMIC"/>
<ctl name="Left ADC Input" value="DMIC"/>
<ctl name="DRC Switch" value="1"/>
</path>
<path name="main-mic-left">
<ctl name="Int Mic Switch" value="1" />
<ctl name="HPF Switch" value="1"/>
<ctl name="Right ADC Input" value="DMIC"/>
<ctl name="Left ADC Input" value="DMIC"/>
<ctl name="DRC Switch" value="1"/>
</path>
<path name="headset-mic">
<ctl name="Mic Jack Switch" value="1" />
</path>
</mixer>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment