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

SRT: Refine parse SRT listen ip and port.

This commit is contained in:
winlin 2022-05-28 09:16:24 +08:00
parent 3616c9976a
commit b507a080b2

View file

@ -189,24 +189,18 @@ srs_error_t SrsSrtServer::listen_srt_mpegts()
return err; return err;
} }
// TODO: FIXME: bad code, refine it. // Close all listener for SRT if exists.
std::vector<std::string> ip_ports;
std::stringstream ss;
ss << _srs_config->get_srt_listen_port();
ip_ports.push_back(ss.str());
close_listeners(SrsSrtListenerMpegts); close_listeners(SrsSrtListenerMpegts);
for (int i = 0; i < (int)ip_ports.size(); i++) { // Start a listener for SRT, we might need multiple listeners in the future.
SrsSrtAcceptor* acceptor = new SrsSrtMessageAcceptor(this, SrsSrtListenerMpegts); SrsSrtAcceptor* acceptor = new SrsSrtMessageAcceptor(this, SrsSrtListenerMpegts);
acceptors_.push_back(acceptor); acceptors_.push_back(acceptor);
int port; string ip; int port; string ip;
srs_parse_endpoint(ip_ports[i], ip, port); srs_parse_endpoint(srs_int2str(_srs_config->get_srt_listen_port()), ip, port);
if ((err = acceptor->listen(ip, port)) != srs_success) { if ((err = acceptor->listen(ip, port)) != srs_success) {
return srs_error_wrap(err, "srt listen %s:%d", ip.c_str(), port); return srs_error_wrap(err, "srt listen %s:%d", ip.c_str(), port);
}
} }
return err; return err;