int fd_rtcp;
int frontend;
int source;
+ int disable_rtcp;
dvb_mux_conf_t dmc;
mpegts_apids_t pids;
TAILQ_HEAD(, satip_rtp_table) pmt_tables;
} while (us > 0);
pthread_mutex_lock(&satip_rtp_lock);
TAILQ_FOREACH(rtp, &satip_rtp_sessions, link) {
- if (rtp->sq == NULL) continue;
+ if (rtp->sq == NULL || rtp->disable_rtcp) continue;
len = satip_rtcp_build(rtp, msg);
if (len <= 0) continue;
if (tvhtrace_enabled()) {
}
if (r < 0) {
err = errno;
- tcp_get_str_from_ip(&rtp->peer2, addrbuf, sizeof(addrbuf));
- tvhwarn(LS_SATIPS, "RTCP send to error %s:%d : %s",
- addrbuf, ntohs(IP_PORT(rtp->peer2)), strerror(err));
+ if (err != ECONNREFUSED) {
+ tcp_get_str_from_ip(&rtp->peer2, addrbuf, sizeof(addrbuf));
+ tvhwarn(LS_SATIPS, "RTCP send to error %s:%d : %s",
+ addrbuf, ntohs(IP_PORT(rtp->peer2)), strerror(err));
+ } else {
+ rtp->disable_rtcp = 1;
+ }
}
}
pthread_mutex_unlock(&satip_rtp_lock);