1
0
Fork 0
mirror of https://github.com/ossrs/srs.git synced 2025-03-09 15:49:59 +00:00

WebRTC: Refine code and destroy session when tcp close.

This commit is contained in:
Li Peng 2022-09-04 21:24:51 +08:00 committed by winlin
parent 07339e1417
commit efa0851476
10 changed files with 181 additions and 157 deletions

View file

@ -394,6 +394,7 @@ srs_error_t SrsRtcServer::on_udp_packet(SrsUdpMuxSocket* skt)
++_srs_pps_rstuns->sugar;
string peer_id = skt->peer_id();
// TODO: FIXME: Should support ICE renomination, to switch network between candidates.
SrsStunPacket ping;
if ((err = ping.decode(data, size)) != srs_success) {
return srs_error_wrap(err, "decode stun packet failed");
@ -549,6 +550,8 @@ srs_error_t SrsRtcServer::do_create_session(SrsRtcUserConfig* ruc, SrsSdp& local
int udp_port = _srs_config->get_rtc_server_listen();
int tcp_port = _srs_config->get_rtc_server_tcp_listen();
string protocol = _srs_config->get_rtc_server_protocol();
// TODO: FIXME: Should support only one TCP candidate.
set<string> candidates = discover_candidates(ruc);
for (set<string>::iterator it = candidates.begin(); it != candidates.end(); ++it) {
string hostname;