# Perform Bluetooth A2DP sink functions

Source: [https://docs.qualcomm.com/doc/80-70017-13/topic/perform-a2dp-sink-functions.html](https://docs.qualcomm.com/doc/80-70017-13/topic/perform-a2dp-sink-functions.html)

You can perform A2DP sink functions using the `a2dp_sink_menu`
        options.

Before you begin, set up the device and go to the A2DP sink menu as described in
                    [Set up device for A2DP functions](https://docs.qualcomm.com/doc/80-70017-13/topic/set-up-a2dp.html#set-up-a2dp__section_j44_jzy_kcc_navyanka_08-18-24-2110-52-709).

## Connect to an A2DP sink device

To connect to an A2DP sink device, run the following command:

    connect <bt_address>Copy to clipboard

**Parameters**

`<bt_address>` is the Bluetooth address of the remote device.

**Example**

To connect to a remote device with the Bluetooth address
                    `f8:7d:76:9d:9b:6b`, run the following command:

    connect f8:7d:76:9d:9b:6bCopy to clipboard

**Sample output**

connect f8:7d:76:9d:9b:6b
    No session exists for the usecase
    The server answered: obj path: '/org/pulseaudio/ext/pal/loopback/ses_1'
    BT a2dp connect success
    ACL state:0 change with reason 00 for device: f8:7d:76:9d:9b:6b
    Codec Configuration for device f8:7d:76:9d:9b:6b
    Codec type = SBC
    Sample Rate = 44100
    Channel Mode = 2
    A2DP Sink Connected to f8:7d:76:9d:9b:6b
        AVRCP_CTRL_CONNECTED_CB
    <-- getcap rsp message received!
        num_supported:1, rsp_type: 12
        CompanyIDO: 0x6488    
    AVRCP_CTRL_BR_CONNECTED_CB
    <-- getcap rsp message received!
        num_supported:7, rsp_type: 12
        SupportedEvent0: 0x1
        SupportedEvent1: 0x2
        SupportedEvent2: 0x8
        SupportedEvent3: 0x9
        SupportedEvent4: 0x10
        SupportedEvent5: 0x11
        SupportedEvent6: 0x12
    <-- notification message received!
        event_id:1, rsp_type:0
        EVENT_PLAYBACK_STATUS_CHANGED play_status: 0x0
    <-- notification message received!
        event_id:2, rsp_type:0
        EVENT_TRACK_CHANGED track: 0xff
    <-- notification message received!
        event_id:8, rsp_type:0
        EVENT_APP_SETTING_CHANGED attr_id0: 0x2 attr_value0: 0x1
        EVENT_APP_SETTING_CHANGED attr_id1: 0x3 attr_valuel: 0x1
    <-- notification message received!
        event_id:9, rsp_type:0
        EVENT_NOW_PLAYING_CHANGED
    <-- notification message received!
        event_id:10, rsp_type:0
        EVENT_AVAL_PLAYERS_CHANGED
    <-- notification message received!
        event_id:11, rsp_type:0
        EVENT_ADDR_PLAYER_CHANGED player_id: 0x1 uid_counter: 0x0
    ^[S Processing event 441 in state 1
     current State = 1, new state = 2Copy to clipboard

## Play an audio file

To play an audio file on the remote device, run the following
                command:

    play <bt_address>Copy to clipboard

**Parameters**

`<bt_address>` is the Bluetooth address of the remote device.

**Example**

To play an audio file on a remote device with the Bluetooth address
                    `f8:7d:76:9d:9b:6b`, run the following command:

    play f8:7d:76:9d:9b:6bCopy to clipboard

**Sample output**

***********************************************
    play f8:7d:76:9d:9b:6b
    ***********************************************
    Recieved Start from Src device
    ***********************************************
    <-- notification message received!    
        event_id:1, rsp_type:1
        EVENT_PLAYBACK_STATUS_CHANGED play_status: 0x1
    <-- notification message received!
        event_id:2, rsp_type:1
        EVENT_TRACK_CHANGED track: 0x0
    <-- notification message received!
        event_id:1, rsp_type:0
        EVENT_PLAYBACK_STATUS_CHANGED play_status: 0x1
    <-- notification message received!
        event_id:2, rsp_type:0
        EVENT_TRACK_CHANGED track: 0x0
    btsink_enable=1 successCopy to clipboard

## Pause audio playback

To pause audio playback, run the following command:

    pause <bt_address>Copy to clipboard

**Parameters**

`<bt_address>` is the Bluetooth address of the remote device.

**Example**

To pause audio playback on a remote device with the Bluetooth address
                    `f8:7d:76:9d:9b:6b`, run the following command:

    pause f8:7d:76:9d:9b:6bCopy to clipboard

**Sample output**

pause f8:7d:76:9d:9b:6b
    <-- notification message received!
        event_id:1, rsp_type:1
        EVENT_PLAYBACK_STATUS_CHANGED play_status: 0x0
    <-- notification message received!
        event_id:2, rsp_type:1
        EVENT_TRACK_CHANGED track: 0xff
    <-- notification message received!
        event_id:1, rsp_type:0
        EVENT_PLAYBACK_STATUS_CHANGED play_status: 0x0
    <-- notification message received!
        event_id:2, rsp_type:0
        EVENT_TRACK_CHANGED track: 0xff
    ****************************************************
    Recieved Suspend from Src device
    ****************************************************
    btsink enable=0 successCopy to clipboard

## Stop audio playback

To stop audio playback, run the following command:

    stop <bt_address>Copy to clipboard

**Parameters**

`<bt_address>` is the Bluetooth address of the remote device.

**Example**

To stop audio playback on a remote device with the Bluetooth address
                    `f8:7d:76:9d:9b:6b`, run the following command:

    stop f8:7d:76:9d:9b:6bCopy to clipboard

**Sample output**

stop f8:7d:76:9d:9b:6b
    <-- notification message received!
        event_id:1, rsp_type:1
        EVENT_PLAYBACK_STATUS_CHANGED play_status: 0x0
    <-- notification message received!
        event_id:2, rsp_type:1
        EVENT_TRACK_CHANGED track: 0xff
    <-- notification message received!
        event_id:1, rsp_type:0
        EVENT_PLAYBACK_STATUS_CHANGED play_status: 0x0
    <-- notification message received!
        event_id:2, rsp_type:0
        EVENT_TRACK_CHANGED track: 0xffCopy to clipboard

## Rewind an audio playback

To rewind an audio playback, run the following command:

    rewind <bt_address>Copy to clipboard

**Parameters**

`<bt_address>` is the Bluetooth address of the remote device.

**Example**

To rewind audio playback on a remote device with the Bluetooth address
                    `f8:7d:76:9d:9b:6b`, run the following command:

    rewind f8:7d:76:9d:9b:6bCopy to clipboard

## Increase the volume

To increase the volume by one, run the following command:

    volup <bt_address>Copy to clipboard

**Parameters**

`<bt_address>` is the Bluetooth address of the remote device.

**Example**

To increase the volume of a remote device with the Bluetooth address
                    `f8:7d:76:9d:9b:6b`, run the following command:

    volup f8:7d:76:9d:9b:6bCopy to clipboard

## Decrease the volume

To decrease the volume by one, run the following command:

    voldown <bt_address>Copy to clipboard

**Parameters**

`<bt_address>` is the Bluetooth address of the remote device.

**Example**

To decrease the volume of a remote device with the Bluetooth address
                    `f8:7d:76:9d:9b:6b`, run the following command:

    voldown f8:7d:76:9d:9b:6bCopy to clipboard

## Set volume level

To set the volume level, run the following
                command:

    volchangednoti <vol level(0-15)>Copy to clipboard

**Parameters**

`<vol level(0-15)>` is the level of volume. It ranges from 0 to
                15.

**Example**

To set the absolute volume to level 10, run the following
                command:

    volchangednoti 10Copy to clipboard

**Sample output**

volchangednoti 10
    btsink_volume=10 set successfully
    volchangednoti 15
    btsink_volume=15 set successfullyCopy to clipboard

## Mute the volume

To mute the volume, run the following
                command:

    mute <bt_address>Copy to clipboard

**Parameters**

`<bt_address>` is the Bluetooth address of the remote device.

**Example**

To mute the volume of a remote device with the Bluetooth address
                    `f8:7d:76:9d:9b:6b`, run the following command:

    mute f8:7d:76:9d:9b:6bCopy to clipboard

## Set codec priority

To set the codec priority of the sink, run the following command:

    codec_list <codec1,param1,param2,codec2,param1,param2,....>Copy to clipboard

**Parameters**

`<codec1,param1,param2,codec2,param1,param2,....>` is the order of
                priority.

**Example**

To set the first priority as SBC 44.1 kHz and the second priority as SBC 48 kHz, run
                the following command:

    codec_list sbc,44.1,sbc,48Copy to clipboard

**Sample output**

codec_list sbc,44.1,sbc,48
    Codec List: sbc,44.1,sbc,48
    num_codec_configs = 2Copy to clipboard

Note: The priority of codecs is
                applied to new connections. Hence, set the codec priority before establishing a
                connection.

## Other functions

The following player-related settings depend on the capabilities of the remote device
                player. You can configure or explore these settings based on your remote device
                player.

- Get and configure player settings
- Know the current player status
- Add a track to a playlist
- Get details about the current track
- Search for an audio file

**Parent Topic:** [Advanced Audio Distribution Profile](https://docs.qualcomm.com/doc/80-70017-13/topic/set-up-a2dp.html)

Last Published: Dec 26, 2024

[Previous Topic
Perform Bluetooth A2DP source functions](https://docs.qualcomm.com/bundle/publicresource/80-70017-13/topics/perform-a2dp-source-functions.md) [Next Topic
Hands-Free Profile](https://docs.qualcomm.com/bundle/publicresource/80-70017-13/topics/set-up-hfp.md)