A2DP sink configuration

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
nismc_3872836
Level 1
Level 1
First like given

Hi,

I'm currently debugging some audio quality issues our system is having with over A2DP (dropouts, pops, crackles), notably using phones transferring high data rates in the order of 40-50kB/s. Other phones with lower data rates in the order of 30kB/s do not suffer such problems. These figures were measured over the air using a bluetooth analyser.

My question is: what is the best way to configure the A2DP sink on our CYBT343026 in order to eliminate these issues? Currently it is setup like the example code given:

/** A2DP sink configuration data */

wiced_bt_a2dp_config_data_t handsfree_audio_config =

{

    .feature_mask = 0,                                          /* feature mask */

    .codec_capabilities =

    {

        .count = sizeof(handsfree_audio_codec_capabilities) / sizeof(handsfree_audio_codec_capabilities[0]),

        .info  = handsfree_audio_codec_capabilities,            /* codec configuration */

    },

    .p_param =

    {

        .buf_depth_ms                   = 300,                                          /* in msec */

        .start_buf_depth                = 50,                                           /* start playback percentage of the buffer depth */

        .target_buf_depth               = 50,                                           /* target level percentage of the buffer depth */

        .overrun_control                = WICED_BT_A2DP_SINK_OVERRUN_CONTROL_FLUSH_DATA,/* overrun flow control flag */

        .adj_ppm_max                    = +300,                                         /* Max PPM adjustment value */

        .adj_ppm_min                    = -300,                                         /* Min PPM adjustment value */

        .adj_ppb_per_msec               = 200,                                          /* PPM adjustment per milli second */

        .lvl_correction_threshold_high  = +2000,                                        /* Level correction threshold high value */

        .lvl_correction_threshold_low   = -2000,                                        /* Level correction threshold low value */

        .adj_proportional_gain          = 20,                                           /* Proportional component of total PPM adjustment */

        .adj_integral_gain              = 2,                                            /* Integral component of total PPM adjustment */

    },

};

Also, is there any way to detect/quantify packet loss, or any general failures with A2DP? Would also appreciate any additional info on the different parameters that can be affected!

Nick

0 Likes
1 Solution

Hi Nick,

The audio dropouts may happen because of a number of reason - peer device being used, test env, rf/board design, etc. The default parameters should work well on most parts.

Could you please get us the over the air logs ?

Thanks,

Anjana

View solution in original post

4 Replies
gaas_2002241
Level 1
Level 1
First like received

Can we please get this. I am also looking for same information but not able to find any.

Just out of curiosity, what phones are you seeing this issue with?

0 Likes

I am not observing issues with phone. Need to check if these are configurable  or not.

0 Likes

Hi Nick,

The audio dropouts may happen because of a number of reason - peer device being used, test env, rf/board design, etc. The default parameters should work well on most parts.

Could you please get us the over the air logs ?

Thanks,

Anjana