Merge branch 'bugfix/a2dp_media_ctrl' into 'master'
Bugfix/a2dp media ctrl Closes BTQABR2023-42 See merge request espressif/esp-idf!25300
This commit is contained in:
@@ -508,8 +508,8 @@ static void bt_app_av_media_proc(uint16_t event, void *param)
|
||||
if (event == BT_APP_HEART_BEAT_EVT) {
|
||||
/* stop media after 10 heart beat intervals */
|
||||
if (++s_intv_cnt >= 10) {
|
||||
ESP_LOGI(BT_AV_TAG, "a2dp media stopping...");
|
||||
esp_a2d_media_ctrl(ESP_A2D_MEDIA_CTRL_STOP);
|
||||
ESP_LOGI(BT_AV_TAG, "a2dp media suspending...");
|
||||
esp_a2d_media_ctrl(ESP_A2D_MEDIA_CTRL_SUSPEND);
|
||||
s_media_state = APP_AV_MEDIA_STATE_STOPPING;
|
||||
s_intv_cnt = 0;
|
||||
}
|
||||
@@ -519,15 +519,15 @@ static void bt_app_av_media_proc(uint16_t event, void *param)
|
||||
case APP_AV_MEDIA_STATE_STOPPING: {
|
||||
if (event == ESP_A2D_MEDIA_CTRL_ACK_EVT) {
|
||||
a2d = (esp_a2d_cb_param_t *)(param);
|
||||
if (a2d->media_ctrl_stat.cmd == ESP_A2D_MEDIA_CTRL_STOP &&
|
||||
if (a2d->media_ctrl_stat.cmd == ESP_A2D_MEDIA_CTRL_SUSPEND &&
|
||||
a2d->media_ctrl_stat.status == ESP_A2D_MEDIA_CTRL_ACK_SUCCESS) {
|
||||
ESP_LOGI(BT_AV_TAG, "a2dp media stopped successfully, disconnecting...");
|
||||
ESP_LOGI(BT_AV_TAG, "a2dp media suspend successfully, disconnecting...");
|
||||
s_media_state = APP_AV_MEDIA_STATE_IDLE;
|
||||
esp_a2d_source_disconnect(s_peer_bda);
|
||||
s_a2d_state = APP_AV_STATE_DISCONNECTING;
|
||||
} else {
|
||||
ESP_LOGI(BT_AV_TAG, "a2dp media stopping...");
|
||||
esp_a2d_media_ctrl(ESP_A2D_MEDIA_CTRL_STOP);
|
||||
ESP_LOGI(BT_AV_TAG, "a2dp media suspending...");
|
||||
esp_a2d_media_ctrl(ESP_A2D_MEDIA_CTRL_SUSPEND);
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
Reference in New Issue
Block a user