mirror of
https://gitlab.freedesktop.org/pipewire/pipewire.git
synced 2025-11-11 13:30:07 -05:00
bluez5: backend-native: update HFP SDP records
Advertise SWB since we implement it. Update HFP version to 1.9 accordingly.
This commit is contained in:
parent
c5e57a062d
commit
73488ee338
2 changed files with 29 additions and 17 deletions
|
|
@ -2538,6 +2538,9 @@ static int register_profile(struct impl *backend, const char *profile, const cha
|
||||||
|
|
||||||
/* We announce wideband speech support anyway */
|
/* We announce wideband speech support anyway */
|
||||||
features = SPA_BT_HFP_SDP_AG_FEATURE_WIDEBAND_SPEECH;
|
features = SPA_BT_HFP_SDP_AG_FEATURE_WIDEBAND_SPEECH;
|
||||||
|
#ifdef HAVE_LC3
|
||||||
|
features |= SPA_BT_HFP_SDP_AG_FEATURE_SUPER_WIDEBAND_SPEECH;
|
||||||
|
#endif
|
||||||
dbus_message_iter_open_container(&it[1], DBUS_TYPE_DICT_ENTRY, NULL, &it[2]);
|
dbus_message_iter_open_container(&it[1], DBUS_TYPE_DICT_ENTRY, NULL, &it[2]);
|
||||||
dbus_message_iter_append_basic(&it[2], DBUS_TYPE_STRING, &str);
|
dbus_message_iter_append_basic(&it[2], DBUS_TYPE_STRING, &str);
|
||||||
dbus_message_iter_open_container(&it[2], DBUS_TYPE_VARIANT, "q", &it[3]);
|
dbus_message_iter_open_container(&it[2], DBUS_TYPE_VARIANT, "q", &it[3]);
|
||||||
|
|
@ -2545,9 +2548,9 @@ static int register_profile(struct impl *backend, const char *profile, const cha
|
||||||
dbus_message_iter_close_container(&it[2], &it[3]);
|
dbus_message_iter_close_container(&it[2], &it[3]);
|
||||||
dbus_message_iter_close_container(&it[1], &it[2]);
|
dbus_message_iter_close_container(&it[1], &it[2]);
|
||||||
|
|
||||||
/* HFP version 1.7 */
|
/* HFP version 1.9 */
|
||||||
str = "Version";
|
str = "Version";
|
||||||
version = 0x0107;
|
version = 0x0109;
|
||||||
dbus_message_iter_open_container(&it[1], DBUS_TYPE_DICT_ENTRY, NULL, &it[2]);
|
dbus_message_iter_open_container(&it[1], DBUS_TYPE_DICT_ENTRY, NULL, &it[2]);
|
||||||
dbus_message_iter_append_basic(&it[2], DBUS_TYPE_STRING, &str);
|
dbus_message_iter_append_basic(&it[2], DBUS_TYPE_STRING, &str);
|
||||||
dbus_message_iter_open_container(&it[2], DBUS_TYPE_VARIANT, "q", &it[3]);
|
dbus_message_iter_open_container(&it[2], DBUS_TYPE_VARIANT, "q", &it[3]);
|
||||||
|
|
@ -2559,6 +2562,9 @@ static int register_profile(struct impl *backend, const char *profile, const cha
|
||||||
|
|
||||||
/* We announce wideband speech support anyway */
|
/* We announce wideband speech support anyway */
|
||||||
features = SPA_BT_HFP_SDP_HF_FEATURE_WIDEBAND_SPEECH;
|
features = SPA_BT_HFP_SDP_HF_FEATURE_WIDEBAND_SPEECH;
|
||||||
|
#ifdef HAVE_LC3
|
||||||
|
features |= SPA_BT_HFP_SDP_HF_FEATURE_SUPER_WIDEBAND_SPEECH;
|
||||||
|
#endif
|
||||||
dbus_message_iter_open_container(&it[1], DBUS_TYPE_DICT_ENTRY, NULL, &it[2]);
|
dbus_message_iter_open_container(&it[1], DBUS_TYPE_DICT_ENTRY, NULL, &it[2]);
|
||||||
dbus_message_iter_append_basic(&it[2], DBUS_TYPE_STRING, &str);
|
dbus_message_iter_append_basic(&it[2], DBUS_TYPE_STRING, &str);
|
||||||
dbus_message_iter_open_container(&it[2], DBUS_TYPE_VARIANT, "q", &it[3]);
|
dbus_message_iter_open_container(&it[2], DBUS_TYPE_VARIANT, "q", &it[3]);
|
||||||
|
|
@ -2566,9 +2572,9 @@ static int register_profile(struct impl *backend, const char *profile, const cha
|
||||||
dbus_message_iter_close_container(&it[2], &it[3]);
|
dbus_message_iter_close_container(&it[2], &it[3]);
|
||||||
dbus_message_iter_close_container(&it[1], &it[2]);
|
dbus_message_iter_close_container(&it[1], &it[2]);
|
||||||
|
|
||||||
/* HFP version 1.7 */
|
/* HFP version 1.9 */
|
||||||
str = "Version";
|
str = "Version";
|
||||||
version = 0x0107;
|
version = 0x0109;
|
||||||
dbus_message_iter_open_container(&it[1], DBUS_TYPE_DICT_ENTRY, NULL, &it[2]);
|
dbus_message_iter_open_container(&it[1], DBUS_TYPE_DICT_ENTRY, NULL, &it[2]);
|
||||||
dbus_message_iter_append_basic(&it[2], DBUS_TYPE_STRING, &str);
|
dbus_message_iter_append_basic(&it[2], DBUS_TYPE_STRING, &str);
|
||||||
dbus_message_iter_open_container(&it[2], DBUS_TYPE_VARIANT, "q", &it[3]);
|
dbus_message_iter_open_container(&it[2], DBUS_TYPE_VARIANT, "q", &it[3]);
|
||||||
|
|
|
||||||
|
|
@ -252,13 +252,16 @@ enum spa_bt_hfp_ag_feature {
|
||||||
};
|
};
|
||||||
|
|
||||||
enum spa_bt_hfp_sdp_ag_features {
|
enum spa_bt_hfp_sdp_ag_features {
|
||||||
SPA_BT_HFP_SDP_AG_FEATURE_NONE = (0),
|
SPA_BT_HFP_SDP_AG_FEATURE_NONE = (0),
|
||||||
SPA_BT_HFP_SDP_AG_FEATURE_3WAY = (1 << 0),
|
SPA_BT_HFP_SDP_AG_FEATURE_3WAY = (1 << 0),
|
||||||
SPA_BT_HFP_SDP_AG_FEATURE_ECNR = (1 << 1),
|
SPA_BT_HFP_SDP_AG_FEATURE_ECNR = (1 << 1),
|
||||||
SPA_BT_HFP_SDP_AG_FEATURE_VOICE_RECOG = (1 << 2),
|
SPA_BT_HFP_SDP_AG_FEATURE_VOICE_RECOG = (1 << 2),
|
||||||
SPA_BT_HFP_SDP_AG_FEATURE_IN_BAND_RING_TONE = (1 << 3),
|
SPA_BT_HFP_SDP_AG_FEATURE_IN_BAND_RING_TONE = (1 << 3),
|
||||||
SPA_BT_HFP_SDP_AG_FEATURE_ATTACH_VOICE_TAG = (1 << 4),
|
SPA_BT_HFP_SDP_AG_FEATURE_ATTACH_VOICE_TAG = (1 << 4),
|
||||||
SPA_BT_HFP_SDP_AG_FEATURE_WIDEBAND_SPEECH = (1 << 5),
|
SPA_BT_HFP_SDP_AG_FEATURE_WIDEBAND_SPEECH = (1 << 5),
|
||||||
|
SPA_BT_HFP_SDP_AG_FEATURE_ENH_VOICE_RECOG_STATUS = (1 << 6),
|
||||||
|
SPA_BT_HFP_SDP_AG_FEATURE_VOICE_RECOG_TEXT = (1 << 7),
|
||||||
|
SPA_BT_HFP_SDP_AG_FEATURE_SUPER_WIDEBAND_SPEECH = (1 << 8),
|
||||||
};
|
};
|
||||||
|
|
||||||
enum spa_bt_hfp_hf_feature {
|
enum spa_bt_hfp_hf_feature {
|
||||||
|
|
@ -299,13 +302,16 @@ enum spa_bt_hfp_hf_xapl_features {
|
||||||
};
|
};
|
||||||
|
|
||||||
enum spa_bt_hfp_sdp_hf_features {
|
enum spa_bt_hfp_sdp_hf_features {
|
||||||
SPA_BT_HFP_SDP_HF_FEATURE_NONE = (0),
|
SPA_BT_HFP_SDP_HF_FEATURE_NONE = (0),
|
||||||
SPA_BT_HFP_SDP_HF_FEATURE_ECNR = (1 << 0),
|
SPA_BT_HFP_SDP_HF_FEATURE_ECNR = (1 << 0),
|
||||||
SPA_BT_HFP_SDP_HF_FEATURE_3WAY = (1 << 1),
|
SPA_BT_HFP_SDP_HF_FEATURE_3WAY = (1 << 1),
|
||||||
SPA_BT_HFP_SDP_HF_FEATURE_CLIP = (1 << 2),
|
SPA_BT_HFP_SDP_HF_FEATURE_CLIP = (1 << 2),
|
||||||
SPA_BT_HFP_SDP_HF_FEATURE_VOICE_RECOGNITION = (1 << 3),
|
SPA_BT_HFP_SDP_HF_FEATURE_VOICE_RECOGNITION = (1 << 3),
|
||||||
SPA_BT_HFP_SDP_HF_FEATURE_REMOTE_VOLUME_CONTROL = (1 << 4),
|
SPA_BT_HFP_SDP_HF_FEATURE_REMOTE_VOLUME_CONTROL = (1 << 4),
|
||||||
SPA_BT_HFP_SDP_HF_FEATURE_WIDEBAND_SPEECH = (1 << 5),
|
SPA_BT_HFP_SDP_HF_FEATURE_WIDEBAND_SPEECH = (1 << 5),
|
||||||
|
SPA_BT_HFP_SDP_HF_FEATURE_ENH_VOICE_RECOG_STATUS = (1 << 6),
|
||||||
|
SPA_BT_HFP_SDP_HF_FEATURE_VOICE_RECOG_TEXT = (1 << 7),
|
||||||
|
SPA_BT_HFP_SDP_HF_FEATURE_SUPER_WIDEBAND_SPEECH = (1 << 8),
|
||||||
};
|
};
|
||||||
|
|
||||||
static inline const char *spa_bt_profile_name (enum spa_bt_profile profile) {
|
static inline const char *spa_bt_profile_name (enum spa_bt_profile profile) {
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue