|
|
|
|
@ -2356,7 +2356,12 @@ static void media_packet_rtp_extension(struct packet_handler_ctx *phc, unsigned
|
|
|
|
|
if (!ext)
|
|
|
|
|
return;
|
|
|
|
|
|
|
|
|
|
// stub
|
|
|
|
|
__auto_type edata = g_new0(struct rtp_extension_data, 1);
|
|
|
|
|
edata->ext = ext;
|
|
|
|
|
edata->link.data = edata;
|
|
|
|
|
edata->content = *data;
|
|
|
|
|
|
|
|
|
|
t_queue_push_tail_link(&phc->mp.extmap, &edata->link);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
static void media_packet_rtp_extensions(struct packet_handler_ctx *phc) {
|
|
|
|
|
@ -2801,6 +2806,7 @@ void media_packet_copy(struct media_packet *dst, const struct media_packet *src)
|
|
|
|
|
dst->payload = STR_NULL;
|
|
|
|
|
dst->raw = STR_NULL;
|
|
|
|
|
dst->extensions = STR_NULL;
|
|
|
|
|
t_queue_init(&dst->extmap);
|
|
|
|
|
}
|
|
|
|
|
void media_packet_release(struct media_packet *mp) {
|
|
|
|
|
obj_release(mp->sfd);
|
|
|
|
|
@ -3194,8 +3200,13 @@ out:
|
|
|
|
|
|
|
|
|
|
media_socket_dequeue(&phc->mp, NULL); // just free
|
|
|
|
|
ssrc_entry_release(phc->mp.ssrc_out);
|
|
|
|
|
|
|
|
|
|
ssrc_entry_release(phc->mp.ssrc_in);
|
|
|
|
|
|
|
|
|
|
while (phc->mp.extmap.length) {
|
|
|
|
|
__auto_type l = t_queue_pop_head_link(&phc->mp.extmap);
|
|
|
|
|
rtp_ext_data_free(l->data);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
rtcp_list_free(&phc->rtcp_list);
|
|
|
|
|
g_queue_clear_full(&free_list, bufferpool_unref);
|
|
|
|
|
|
|
|
|
|
|