| # |
| # For a description of the syntax of this configuration file, |
| # see the file kconfig-language.txt in the NuttX tools repository. |
| # |
| |
| config AUDIO |
| bool "Audio Support" |
| default n |
| ---help--- |
| Enables overall support for Audio library. |
| |
| if AUDIO |
| |
| config AUDIO_COMP |
| bool "Support audio composition" |
| default n |
| ---help--- |
| Composite several lower level audio devices into big one. |
| |
| config AUDIO_MULTI_SESSION |
| bool "Support multiple sessions" |
| default n |
| ---help--- |
| Some audio devices, such as USB attached sound cards, may support more |
| than one streaming session at a time (each with one or more audio channels). |
| Selecting this feature adds support for tracking multiple concurrent |
| sessions with the lower-level audio devices. |
| |
| menu "Audio Buffer Configuration" |
| |
| config AUDIO_LARGE_BUFFERS |
| bool "Support Audio Buffers with greater than 65K samples" |
| default n |
| ---help--- |
| By default, the Audio Pipeline Buffers use a 16-bit max sample count, limiting |
| the number of samples per buffer to 65K. Enable this option to specify a |
| 32-bit max sample count for increased samples / buffer capability. |
| channel capability. |
| |
| config AUDIO_NUM_BUFFERS |
| int "Number of buffers for audio processing" |
| default 2 |
| ---help--- |
| Specifies the number of buffers to allocate for audio processing. |
| If Driver Specified buffer sizes is enabled (below), then the |
| low-level drivers will have the opportunity to override this |
| value. |
| |
| config AUDIO_BUFFER_NUMBYTES |
| int "Size of each audio buffer for audio processing" |
| default 8192 |
| ---help--- |
| Specifies the allocation size for each audio buffer |
| If Driver Specified buffer sizes is enabled (below), then the |
| low-level drivers will have the opportunity to override this |
| value. |
| |
| config AUDIO_DRIVER_SPECIFIC_BUFFERS |
| bool "Support for Driver specified buffer sizes" |
| default n |
| ---help--- |
| By default, the Audio system uses the same size and number of buffers |
| regardless of the specific audio device in use. Specifying 'y' here |
| adds extra code which allows the lower-level audio device to specify |
| a particular size and number of buffers. |
| |
| endmenu # Audio Buffer Configuration |
| |
| menu "Supported Audio Formats" |
| |
| config AUDIO_FORMAT_AC3 |
| bool "AC3 Format" |
| default n |
| ---help--- |
| Build in support for AC3 (Dolby Digital) Audio format. |
| |
| config AUDIO_FORMAT_DTS |
| bool "DTS Format" |
| default n |
| ---help--- |
| Add in support for DTS format. |
| |
| config AUDIO_FORMAT_PCM |
| bool "PCM Audio" |
| default y |
| ---help--- |
| Build in support for PCM Audio format. |
| |
| if AUDIO_FORMAT_PCM |
| |
| config AUDIO_FORMAT_RAW |
| bool "Raw mode" |
| default n |
| ---help--- |
| Raw mode makes the PCM decoder skip trying to parse received |
| data for a PCM header. All data is sent to the audio driver |
| directly. |
| |
| endif |
| |
| config AUDIO_FORMAT_MP3 |
| bool "MPEG 3 Layer 1" |
| default y |
| ---help--- |
| Build in support for MP3 Audio format. |
| |
| config AUDIO_FORMAT_SBC |
| bool "Bluetooth SubBand Coding" |
| default y |
| ---help--- |
| Build in support for SBC Audio format. |
| |
| config AUDIO_FORMAT_MIDI |
| bool "Midi Format" |
| default n |
| ---help--- |
| Add in support for MIDI format. |
| |
| config AUDIO_FORMAT_WMA |
| bool "WMA Format (see copyright notice)" |
| default n |
| ---help--- |
| Add in support for Microsoft Windows Media format. |
| |
| config AUDIO_FORMAT_OGG_VORBIS |
| bool "Ogg Vorbis format" |
| default n |
| ---help--- |
| Build in support for the Open Source Ogg Vorbis format. |
| |
| endmenu |
| |
| menu "Exclude Specific Audio Features" |
| |
| config AUDIO_EXCLUDE_VOLUME |
| bool "Exclude volume controls" |
| default n |
| ---help--- |
| Exclude building support for changing the playback volume. |
| |
| config AUDIO_EXCLUDE_BALANCE |
| bool "Exclude balance controls" |
| default n |
| ---help--- |
| Exclude building support for changing the balance. |
| |
| config AUDIO_EXCLUDE_EQUALIZER |
| bool "Exclude equalizer controls" |
| default y |
| ---help--- |
| Exclude building support for setting equalization. |
| |
| config AUDIO_EQUALIZER_NBANDS |
| int "Number of equalizer bands" |
| default 8 |
| depends on !AUDIO_EXCLUDE_EQUALIZER |
| ---help--- |
| If equalizer support is not excluded, then it will be necessary to |
| provide the (maximum) number of equalization bands to be supported. |
| |
| config AUDIO_EXCLUDE_TONE |
| bool "Exclude tone (bass and treble) controls" |
| default !AUDIO_EXCLUDE_EQUALIZER |
| ---help--- |
| Exclude building support for changing the bass and treble. Normally |
| you would not select both tone controls and equalizer support unless |
| your underlying hardware supports both options. |
| |
| config AUDIO_EXCLUDE_PAUSE_RESUME |
| bool "Exclude pause and resume controls" |
| default n |
| ---help--- |
| Exclude building support for pausing and resuming audio files |
| once they are submitted. If the sound system is being used to play |
| short system notification or error type sounds that typically only |
| last a second or two, then there is no need (or chance) to pause or |
| resume sound playback once it has started. |
| |
| config AUDIO_EXCLUDE_STOP |
| bool "Exclude stop playback controls" |
| default n |
| ---help--- |
| Exclude building support for stopping audio files once they are |
| submitted. If the sound system is being used to play short system |
| notification or error type sounds that typically only last a second |
| or two, then there is no need (or chance) to stop the sound |
| playback once it has started. |
| |
| config AUDIO_EXCLUDE_FFORWARD |
| bool "Exclude fast forward controls" |
| default AUDIO_EXCLUDE_STOP |
| ---help--- |
| Exclude building support for fast forwarding through audio files |
| once they are submitted. Selecting this option would only make |
| if the underlying audio decoding logic is capable of sub-sampling |
| in the stream of audio data. |
| |
| config AUDIO_EXCLUDE_REWIND |
| bool "Exclude rewind controls" |
| default y |
| ---help--- |
| Rewind may be supported by some audio devices, but not the typical |
| device that receives a non-seekable, stream of audio buffers. |
| |
| endmenu |
| |
| config AUDIO_CUSTOM_DEV_PATH |
| bool "Use custom device path" |
| default n |
| ---help--- |
| By default, all audio devices on the target are are registered in the |
| /dev/audio directory. Select this option to change the default location |
| for the device registration. |
| |
| if AUDIO_CUSTOM_DEV_PATH |
| |
| config AUDIO_DEV_ROOT |
| bool "Place audio devices in /dev" |
| default n |
| ---help--- |
| This option causes all device entries to appear in /dev with all the |
| other device entries. This option generates the smallest code and |
| RAM footprint. |
| |
| if !AUDIO_DEV_ROOT |
| |
| config AUDIO_DEV_PATH |
| string "Base path for Audio devices" |
| default "/dev/audio" |
| ---help--- |
| The path on the target where audio devices are registered. The default |
| is to place all audio devices in the /dev/audio/ directory. |
| |
| endif |
| endif |
| |
| # These are here as placeholders of what could be added |
| |
| if AUDIO_PLANNED |
| |
| config AUDIO_MIXER |
| bool "Planned - Enable support for the software based Audio Mixer" |
| default n |
| ---help--- |
| The Audio mixer is a software-only based component that can be used |
| to perform audio channel or device mixing. |
| |
| config AUDIO_MIDI_SYNTH |
| bool "Planned - Enable support for the software-based MIDI synthesizer" |
| default n |
| ---help--- |
| Builds a simple MIDI synthesizer. |
| |
| config AUDIO_OUTPUT_JACK_CONTROL |
| bool "Planned - Enable support for output jack control" |
| default n |
| ---help--- |
| Builds a simple MIDI synthesizer. |
| |
| config AUDIO_FONT |
| bool "Planned - Enable support for the Audio Font" |
| default n |
| ---help--- |
| The Audio font provides common audio symbols. |
| |
| endif |
| |
| endif |