diff --git a/incomingstream.go b/incomingstream.go index fe0c09b..82687a5 100644 --- a/incomingstream.go +++ b/incomingstream.go @@ -311,14 +311,15 @@ func (i *IncomingStream) Stop() { return } + i.Lock() for k, track := range i.tracks { track.Stop() delete(i.tracks, k) } + i.Unlock() for _, stopFunc := range i.onStopListeners { stopFunc() } - i.transport = nil } diff --git a/incomingstreamtrack.go b/incomingstreamtrack.go index 5c0960a..867b835 100644 --- a/incomingstreamtrack.go +++ b/incomingstreamtrack.go @@ -1,7 +1,6 @@ package mediaserver import ( - "fmt" "sort" "strconv" "time" @@ -238,8 +237,6 @@ func NewIncomingStreamTrack(media string, id string, receiver native.RTPReceiver return track.encodings[i].id < track.encodings[j].id }) - fmt.Println(track.encodings) - return track } @@ -504,9 +501,10 @@ func (i *IncomingStreamTrack) Stop() { encoding.depacketizer.Stop() native.DeleteStreamTrackDepacketizer(encoding.depacketizer) } - if encoding.source != nil { - native.DeleteRTPIncomingSourceGroup(encoding.source) - } + // does not + // if encoding.source != nil { + // native.DeleteRTPIncomingSourceGroup(encoding.source) + // } } if i.mediaStreamDuplicater != nil { diff --git a/transport_test.go b/transport_test.go index df9d608..8290413 100644 --- a/transport_test.go +++ b/transport_test.go @@ -216,7 +216,7 @@ func Test_TransportCreateStream(t *testing.T) { fmt.Println(incoming) - // incoming.Stop() - // transport.Stop() + //incoming.Stop() + transport.Stop() }