From d97f23e16cbce6d7652903204d0eac2f32f724f5 Mon Sep 17 00:00:00 2001 From: Ronghua Wu Date: Fri, 20 Jun 2025 15:21:13 -0700 Subject: [PATCH] add interface to update remote ssrc this is useful in case like sfu where remote ssrc is unknown at the beginning or when remote participant comes and goes --- src/peer_connection.c | 8 ++++++++ src/peer_connection.h | 14 ++++++++++++++ 2 files changed, 22 insertions(+) diff --git a/src/peer_connection.c b/src/peer_connection.c index 5b1f5fb1..f926454f 100644 --- a/src/peer_connection.c +++ b/src/peer_connection.c @@ -582,3 +582,11 @@ int peer_connection_add_ice_candidate(PeerConnection* pc, char* candidate) { agent->remote_candidates_count++; return 0; } + +void peer_connection_update_remote_assrc(PeerConnection* pc, uint32_t assrc) { + pc->remote_assrc = assrc; +} + +void peer_connection_update_remote_vssrc(PeerConnection* pc, uint32_t vssrc) { + pc->remote_vssrc = vssrc; +} diff --git a/src/peer_connection.h b/src/peer_connection.h index b087893e..af521628 100644 --- a/src/peer_connection.h +++ b/src/peer_connection.h @@ -174,6 +174,20 @@ char* peer_connection_lookup_sid_label(PeerConnection* pc, uint16_t sid); */ int peer_connection_add_ice_candidate(PeerConnection* pc, char* ice_candidate); +/** + * @brief update audio ssrc + * @param[in] peer connection + * @param[in] assrc audio ssrc + */ +void peer_connection_update_remote_assrc(PeerConnection* pc, uint32_t assrc); + +/** + * @brief update video ssrc + * @param[in] peer connection + * @param[in] vssrc video ssrc + */ +void peer_connection_update_remote_vssrc(PeerConnection* pc, uint32_t vssrc); + #ifdef __cplusplus } #endif