# AudioFactory

- *group* Telematics\_audio

    - - class AudioFactory

    - Allows the creation of an [IAudioManager](https://docs.qualcomm.com/doc/80-PF458-2/topic/common.html#a00265) instance.

Public Functions

- virtual std::shared\_ptr&lt;[IAudioManager](https://docs.qualcomm.com/doc/80-PF458-2/topic/class_a00265.html#_CPPv4N5telux5audio13IAudioManagerE)&gt; getAudioManager([telux](https://docs.qualcomm.com/doc/80-PF458-2/topic/common.html#_CPPv45telux)::[common](https://docs.qualcomm.com/doc/80-PF458-2/topic/common.html#_CPPv4N5telux6commonE)::[InitResponseCb](https://docs.qualcomm.com/doc/80-PF458-2/topic/typedef_a00236_1ab92f90010203f914a62cec6bd7af0a1a.html#_CPPv4N5telux6common14InitResponseCbE) callback = nullptr) = 0

    - Gets the [IAudioManager](https://docs.qualcomm.com/doc/80-PF458-2/topic/common.html#a00265) instance.

- Parameters:

    - **callback** – **[in]** Optional, callback to know the status of the AudioManager initialization

- Returns:

    - [IAudioManager](https://docs.qualcomm.com/doc/80-PF458-2/topic/common.html#a00265) instance

- virtual [telux](https://docs.qualcomm.com/doc/80-PF458-2/topic/common.html#_CPPv45telux)::[common](https://docs.qualcomm.com/doc/80-PF458-2/topic/common.html#_CPPv4N5telux6commonE)::[ErrorCode](https://docs.qualcomm.com/doc/80-PF458-2/topic/common.html#_CPPv4N5telux6common9ErrorCodeE) getAudioPlayer(std::shared\_ptr&lt;[IAudioPlayer](https://docs.qualcomm.com/doc/80-PF458-2/topic/class_a00276.html#_CPPv4N5telux5audio12IAudioPlayerE)&gt; &audioPlayer) = 0

    - Gets the [IAudioPlayer](https://docs.qualcomm.com/doc/80-PF458-2/topic/common.html#a00276) instance.

- Parameters:

    - **audioPlayer** – **[out]** [IAudioPlayer](https://docs.qualcomm.com/doc/80-PF458-2/topic/common.html#a00276) instance

- Returns:

    - telux::common::ErrorCode::SUCCESS, if the [IAudioPlayer](https://docs.qualcomm.com/doc/80-PF458-2/topic/common.html#a00276) instance is created successfully, telux::common::ErrorCode::OPERATION\_TIMEOUT if the audio service does not become available for functional operation, an appropriate error code in all other cases.

Public Static Functions

- static [AudioFactory](https://docs.qualcomm.com/doc/80-PF458-2/topic/class_a00258.html#_CPPv4N5telux5audio12AudioFactoryE) &getInstance()

    - Gets the [AudioFactory](https://docs.qualcomm.com/doc/80-PF458-2/topic/common.html#a00258) instance.

Private Functions

- AudioFactory(const [AudioFactory](https://docs.qualcomm.com/doc/80-PF458-2/topic/class_a00258.html#_CPPv4N5telux5audio12AudioFactory12AudioFactoryERK12AudioFactory)&) = delete

    - 

- [AudioFactory](https://docs.qualcomm.com/doc/80-PF458-2/topic/class_a00258.html#_CPPv4N5telux5audio12AudioFactoryE) &operator=(const [AudioFactory](https://docs.qualcomm.com/doc/80-PF458-2/topic/class_a00258.html#_CPPv4N5telux5audio12AudioFactoryE)&) = delete

    -

Last Published: Apr 14, 2026

[Previous Topic
telux::audio::IAudioPlayer](https://docs.qualcomm.com/bundle/publicresource/80-PF458-2/topics/audio_player.md) [Next Topic
Data](https://docs.qualcomm.com/bundle/publicresource/80-PF458-2/topics/data.md)