diff --git a/profiles/audio/transport.c b/profiles/audio/transport.c
index eff95a7..5fd2091 100644
--- a/profiles/audio/transport.c
+++ b/profiles/audio/transport.c
void (*set_state)(struct media_transport *transport,
transport_state_t state);
void *(*get_stream)(struct media_transport *transport);
- int8_t (*get_volume)(struct media_transport *transport);
- int (*set_volume)(struct media_transport *transport, int8_t level);
+ uint8_t (*get_volume)(struct media_transport *transport);
+ int (*set_volume)(struct media_transport *transport, uint8_t level);
int (*set_delay)(struct media_transport *transport, uint16_t delay);
void (*update_links)(const struct media_transport *transport);
GDestroyNotify destroy;
a2dp->cancel_resume = FALSE;
}
-static int8_t transport_a2dp_get_volume(struct media_transport *transport)
+static uint8_t transport_a2dp_get_volume(struct media_transport *transport)
{
struct a2dp_transport *a2dp = transport->data;
return a2dp->volume;
#ifdef HAVE_AVRCP
static int transport_a2dp_src_set_volume(struct media_transport *transport,
- int8_t level)
+ uint8_t level)
{
struct a2dp_transport *a2dp = transport->data;
}
static int transport_a2dp_snk_set_volume(struct media_transport *transport,
- int8_t level)
+ uint8_t level)
{
struct a2dp_transport *a2dp = transport->data;
bool notify;
bap_update_links(transport);
}
-static int8_t transport_bap_get_volume(struct media_transport *transport)
+static uint8_t transport_bap_get_volume(struct media_transport *transport)
{
return bt_audio_vcp_get_volume(transport->device);
}
static int transport_bap_set_volume(struct media_transport *transport,
- int8_t volume)
+ uint8_t volume)
{
return bt_audio_vcp_set_volume(transport->device, volume) ? 0 : -EIO;
}
}
}
-static int8_t transport_asha_get_volume(struct media_transport *transport)
+static uint8_t transport_asha_get_volume(struct media_transport *transport)
{
struct bt_asha_device *asha_dev = transport->data;
int8_t volume;
}
static int transport_asha_set_volume(struct media_transport *transport,
- int8_t volume)
+ uint8_t volume)
{
struct bt_asha_device *asha_dev = transport->data;
int scaled_volume;
diff --git a/profiles/audio/vcp.c b/profiles/audio/vcp.c
index 608496a..423210b 100644
--- a/profiles/audio/vcp.c
+++ b/profiles/audio/vcp.c
return vdata->vcp == vcp;
}
-static int8_t scale_volume(uint8_t volume)
-{
- /* Convert 0-255 to 0-127. */
- return volume / 2;
-}
-
-static uint8_t unscale_volume(int8_t volume)
-{
- /* Convert 0-127 to 0-255. */
- return volume * 2;
-}
-
static void vcp_volume_changed(struct bt_vcp *vcp, uint8_t volume)
{
struct vcp_data *data = queue_find(sessions, match_data, vcp);
if (data)
- media_transport_update_device_volume(data->device,
- scale_volume(volume));
+ media_transport_update_device_volume(data->device, volume);
}
static void vcp_data_add(struct vcp_data *data)
}
}
-int8_t bt_audio_vcp_get_volume(struct btd_device *device)
+uint8_t bt_audio_vcp_get_volume(struct btd_device *device)
{
struct vcp_data *data = queue_find(sessions, match_device, device);
if (data)
- return scale_volume(bt_vcp_get_volume(data->vcp));
+ return bt_vcp_get_volume(data->vcp);
return 0;
}
-bool bt_audio_vcp_set_volume(struct btd_device *device, int8_t volume)
+bool bt_audio_vcp_set_volume(struct btd_device *device, uint8_t volume)
{
struct vcp_data *data = queue_find(sessions, match_device, device);
if (data)
- return bt_vcp_set_volume(data->vcp, unscale_volume(volume));
+ return bt_vcp_set_volume(data->vcp, volume);
return FALSE;
}
diff --git a/profiles/audio/vcp.h b/profiles/audio/vcp.h
index f313cd9..cf7935d 100644
--- a/profiles/audio/vcp.h
+++ b/profiles/audio/vcp.h
*
*/
-int8_t bt_audio_vcp_get_volume(struct btd_device *device);
-bool bt_audio_vcp_set_volume(struct btd_device *device, int8_t volume);
+uint8_t bt_audio_vcp_get_volume(struct btd_device *device);
+bool bt_audio_vcp_set_volume(struct btd_device *device, uint8_t volume);