fix multiple freezes during shutdown of components

This commit is contained in:
aler9
2021-07-30 20:13:17 +02:00
parent 82e65230fd
commit de6e9589b8
11 changed files with 171 additions and 243 deletions

View File

@@ -168,19 +168,12 @@ func (s *rtmpSource) runInner() bool {
s.log(logger.Info, "ready")
cres := make(chan sourceExtSetReadyRes)
s.parent.OnSourceExternalSetReady(sourceExtSetReadyReq{
Tracks: tracks,
Res: cres,
})
<-cres
defer func() {
res := make(chan struct{})
s.parent.OnSourceExternalSetNotReady(sourceExtSetNotReadyReq{
Res: res,
})
<-res
s.parent.OnSourceExternalSetNotReady(sourceExtSetNotReadyReq{})
}()
rtcpSenders := rtcpsenderset.New(tracks, s.parent.OnSourceFrame)