# Architecture

Source: [https://docs.qualcomm.com/doc/80-70014-16/topic/architecture.html](https://docs.qualcomm.com/doc/80-70014-16/topic/architecture.html)

The following diagram shows the high-level audio software architecture. ![](data:image/png;base64,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)

The following are the major components of the audio software architecture:

**[PulseAudio](https://docs.qualcomm.com/doc/80-70014-16/topic/pulseaudio_sw.html)**

A sound server for POSIX OSes (mostly targeting Linux) that acts as a proxy and
                        router between hardware device drivers and applications on single or
                        multiple hosts.

**[Platform Audio Layer (PAL)](https://docs.qualcomm.com/doc/80-70014-16/topic/pal_sw.html)**

Provides higher-level audio-specific APIs to access the underlying audio hardware
                        and drivers to enable feature rich audio use cases based on TinyALSA
                        APIs.

**[Audio Graph Manager (AGM)](https://docs.qualcomm.com/doc/80-70014-16/topic/agm_sw.html)**

Provides interfaces to allow TinyALSA-based mixer controls and PCM/compressed
                        plug-ins to interact and enable various audio use cases.

**[AudioReach Graph Service (ARGS)](https://docs.qualcomm.com/doc/80-70014-16/topic/audioreach_graph_services.html)**

Consists of the Graph Service Layer (GSL), Generic Packet Router (GPR), and ACDB
                        Management Layer (AML) modules. Handles initialization and creation of
                        graphs as well as creation of packets for sending series of commands to
                        SPF.

**[Audio calibration database (ACDB)](https://docs.qualcomm.com/doc/80-70014-16/topic/realization_of_audio_use_cases.html#realization_of_audio_use_cases__section_rhd_fg4_zbc)**

Contains information about various audio use cases such as use case graphs,
                        module calibration data, etc. The APPS processor parses ACDB files to
                        retrieve the use case graph information used by SPF to instantiate the use
                        case.

**[Signal Processing Framework (SPF)](https://docs.qualcomm.com/doc/80-70014-16/topic/spf_sw.html)**

Modular framework that runs on the LPAI DSP. It provides the means to set up,
                        configure, and execute signal processing modules for audio use cases.

**[Qualcomm Audio Calibration                                        Tool (QACT™ Platform)](https://docs.qualcomm.com/bundle/resource/topics/80-70014-16A/tools.html#qact)**

PC-based software providing a GUI for audio system designers to visualize,
                        configure, and store audio graphs into the ACDB for intended audio use
                        cases.

Last Published: Jul 15, 2024

[Previous Topic
Features](https://docs.qualcomm.com/bundle/publicresource/80-70014-16/topics/features.md) [Next Topic
APIs and Sample Apps](https://docs.qualcomm.com/bundle/publicresource/80-70014-16/topics/apis_and_sample_apps.md)