bluez5: parse BAP transport CIG/CIS properties

This commit is contained in:
Pauli Virtanen 2023-03-15 18:55:54 +02:00 committed by P V
parent 3236d706ba
commit dfd30f37dc
2 changed files with 18 additions and 0 deletions

View file

@ -2215,6 +2215,8 @@ struct spa_bt_transport *spa_bt_transport_create(struct spa_bt_monitor *monitor,
t->sco_io = NULL;
t->delay_us = SPA_BT_UNKNOWN_DELAY;
t->latency_us = SPA_BT_UNKNOWN_DELAY;
t->bap_cig = 0xff;
t->bap_cis = 0xff;
t->user_data = SPA_PTROFF(t, sizeof(struct spa_bt_transport), void);
spa_hook_list_init(&t->listener_list);
spa_list_init(&t->bap_transport_linked);
@ -2832,6 +2834,20 @@ static int transport_update_props(struct spa_bt_transport *transport,
spa_log_debug(monitor->log, "transport %p: %s=%d", transport, key, (int)value);
}
else if (spa_streq(key, "CIG") || spa_streq(key, "CIS")) {
uint8_t value;
if (type != DBUS_TYPE_BYTE)
goto next;
dbus_message_iter_get_basic(&it[1], &value);
spa_log_debug(monitor->log, "transport %p: %s=%d", transport, key, (int)value);
if (spa_streq(key, "CIG"))
transport->bap_cig = value;
else
transport->bap_cis = value;
}
next:
dbus_message_iter_next(props_iter);
}

View file

@ -606,6 +606,8 @@ struct spa_bt_transport {
uint16_t write_mtu;
unsigned int delay_us;
unsigned int latency_us;
uint8_t bap_cig;
uint8_t bap_cis;
struct spa_bt_sco_io *sco_io;