mirror of
https://github.com/bluekitchen/btstack.git
synced 2025-03-15 22:20:59 +00:00
avdtp: remove handle_media_data from avdtp_context_t
This commit is contained in:
parent
109ac445d4
commit
951d2774cf
@ -72,6 +72,8 @@ static int record_id = -1;
|
||||
static uint8_t attribute_value[45];
|
||||
static const unsigned int attribute_value_buffer_size = sizeof(attribute_value);
|
||||
|
||||
static void (*avdtp_sink_handle_media_data)(uint8_t local_seid, uint8_t *packet, uint16_t size);
|
||||
|
||||
btstack_linked_list_t * avdtp_get_stream_endpoints(void){
|
||||
return &stream_endpoints;
|
||||
}
|
||||
@ -89,7 +91,6 @@ btstack_linked_list_t * avdtp_get_stream_endpoints(void){
|
||||
|
||||
static uint16_t avdtp_cid_counter = 0;
|
||||
|
||||
static void (*handle_media_data)(uint8_t local_seid, uint8_t *packet, uint16_t size);
|
||||
static void avdtp_handle_sdp_client_query_result(uint8_t packet_type, uint16_t channel, uint8_t *packet, uint16_t size);
|
||||
|
||||
|
||||
@ -380,6 +381,9 @@ void avdtp_register_multiplexing_category(avdtp_stream_endpoint_t * stream_endpo
|
||||
stream_endpoint->sep.capabilities.multiplexing_mode.fragmentation = fragmentation;
|
||||
}
|
||||
|
||||
void avdtp_register_media_handler(void (*callback)(uint8_t local_seid, uint8_t *packet, uint16_t size)){
|
||||
avdtp_sink_handle_media_data = callback;
|
||||
}
|
||||
|
||||
/* START: tracking can send now requests pro l2cap cid */
|
||||
void avdtp_handle_can_send_now(avdtp_connection_t * connection, uint16_t l2cap_cid, avdtp_context_t * context){
|
||||
@ -669,8 +673,7 @@ void avdtp_packet_handler(uint8_t packet_type, uint16_t channel, uint8_t *packet
|
||||
avdtp_connection_t * connection = NULL;
|
||||
|
||||
avdtp_context_t * context = avdtp_get_active_contex();
|
||||
handle_media_data = context->handle_media_data;
|
||||
|
||||
|
||||
switch (packet_type) {
|
||||
case L2CAP_DATA_PACKET:
|
||||
connection = avdtp_get_connection_for_l2cap_signaling_cid(channel);
|
||||
@ -694,9 +697,8 @@ void avdtp_packet_handler(uint8_t packet_type, uint16_t channel, uint8_t *packet
|
||||
}
|
||||
|
||||
if (channel == stream_endpoint->l2cap_media_cid){
|
||||
if (handle_media_data){
|
||||
(*handle_media_data)(avdtp_local_seid(stream_endpoint), packet, size);
|
||||
}
|
||||
btstack_assert(avdtp_sink_handle_media_data);
|
||||
(*avdtp_sink_handle_media_data)(avdtp_local_seid(stream_endpoint), packet, size);
|
||||
break;
|
||||
}
|
||||
|
||||
|
@ -545,8 +545,7 @@ typedef struct {
|
||||
typedef struct {
|
||||
btstack_packet_handler_t avdtp_callback;
|
||||
btstack_packet_handler_t a2dp_callback;
|
||||
void (*handle_media_data)(uint8_t local_seid, uint8_t *packet, uint16_t size);
|
||||
} avdtp_context_t;
|
||||
} avdtp_context_t;
|
||||
|
||||
extern avdtp_context_t * avdtp_source_context;
|
||||
extern avdtp_context_t * avdtp_sink_context;
|
||||
@ -569,6 +568,9 @@ void avdtp_register_media_codec_category(avdtp_stream_endpoint_t * stream_endpoi
|
||||
void avdtp_register_multiplexing_category(avdtp_stream_endpoint_t * stream_endpoint, uint8_t fragmentation);
|
||||
void avdtp_handle_can_send_now(avdtp_connection_t * connection, uint16_t l2cap_cid, avdtp_context_t * context);
|
||||
|
||||
// sink only
|
||||
void avdtp_register_media_handler(void (*callback)(uint8_t local_seid, uint8_t *packet, uint16_t size));
|
||||
|
||||
void avdtp_packet_handler(uint8_t packet_type, uint16_t channel, uint8_t *packet, uint16_t size);
|
||||
avdtp_stream_endpoint_t * avdtp_create_stream_endpoint(avdtp_sep_type_t sep_type, avdtp_media_type_t media_type);
|
||||
|
||||
|
@ -112,9 +112,7 @@ avdtp_stream_endpoint_t * avdtp_sink_create_stream_endpoint(avdtp_sep_type_t sep
|
||||
}
|
||||
|
||||
void avdtp_sink_register_media_handler(void (*callback)(uint8_t local_seid, uint8_t *packet, uint16_t size)){
|
||||
btstack_assert(callback != NULL);
|
||||
|
||||
avdtp_sink_context->handle_media_data = callback;
|
||||
avdtp_register_media_handler(callback);
|
||||
}
|
||||
|
||||
uint8_t avdtp_sink_connect(bd_addr_t remote, uint16_t * avdtp_cid){
|
||||
|
Loading…
x
Reference in New Issue
Block a user