server: support receiving RTCP packets from multicast clients

This commit is contained in:
aler9
2021-06-18 17:34:25 +02:00
parent d165f1fead
commit ea1c7c69be
3 changed files with 70 additions and 22 deletions

View File

@@ -157,6 +157,11 @@ func (st *ServerStream) readerSetActive(ss *ServerSession) {
if *ss.setuppedDelivery == base.StreamDeliveryUnicast {
st.readersUnicast[ss] = struct{}{}
} else {
for trackID := range ss.setuppedTracks {
st.multicastListeners[trackID].rtcpListener.addClient(
ss.udpIP, st.multicastListeners[trackID].rtcpListener.port(), ss, trackID, false)
}
}
}
@@ -166,6 +171,10 @@ func (st *ServerStream) readerSetInactive(ss *ServerSession) {
if *ss.setuppedDelivery == base.StreamDeliveryUnicast {
delete(st.readersUnicast, ss)
} else {
for trackID := range ss.setuppedTracks {
st.multicastListeners[trackID].rtcpListener.removeClient(ss)
}
}
}