add intermediate layer between net.Conn and client / server

This commit is contained in:
aler9
2022-08-14 23:43:01 +02:00
parent a0a168d26c
commit 06bed24dd9
18 changed files with 1459 additions and 1561 deletions

View File

@@ -1163,19 +1163,17 @@ func (ss *ServerSession) runWriter() {
writeFunc = func(trackID int, isRTP bool, payload []byte) {
if isRTP {
f := rtpFrames[trackID]
f.Payload = payload
n, _ := f.MarshalTo(buf)
fr := rtpFrames[trackID]
fr.Payload = payload
ss.tcpConn.conn.SetWriteDeadline(time.Now().Add(ss.s.WriteTimeout))
ss.tcpConn.conn.Write(buf[:n])
ss.tcpConn.nconn.SetWriteDeadline(time.Now().Add(ss.s.WriteTimeout))
ss.tcpConn.conn.WriteInterleavedFrame(fr, buf)
} else {
f := rtcpFrames[trackID]
f.Payload = payload
n, _ := f.MarshalTo(buf)
fr := rtcpFrames[trackID]
fr.Payload = payload
ss.tcpConn.conn.SetWriteDeadline(time.Now().Add(ss.s.WriteTimeout))
ss.tcpConn.conn.Write(buf[:n])
ss.tcpConn.nconn.SetWriteDeadline(time.Now().Add(ss.s.WriteTimeout))
ss.tcpConn.conn.WriteInterleavedFrame(fr, buf)
}
}
}