diff --git a/internal/core/streamtrack_h264.go b/internal/core/streamtrack_h264.go index 14d0bd49..eae56895 100644 --- a/internal/core/streamtrack_h264.go +++ b/internal/core/streamtrack_h264.go @@ -214,6 +214,9 @@ func (t *streamTrackH264) onData(dat data, hasNonRTSPReaders bool) error { nalus, pts, err := t.decoder.Decode(pkt) if err != nil { + if err == rtph264.ErrNonStartingPacketAndNoPrevious || err == rtph264.ErrMorePacketsNeeded { + return nil + } return err } diff --git a/internal/core/streamtrack_mpeg4audio.go b/internal/core/streamtrack_mpeg4audio.go index 774d96cb..5edcdb23 100644 --- a/internal/core/streamtrack_mpeg4audio.go +++ b/internal/core/streamtrack_mpeg4audio.go @@ -74,6 +74,9 @@ func (t *streamTrackMPEG4Audio) onData(dat data, hasNonRTSPReaders bool) error { aus, pts, err := t.decoder.Decode(pkt) if err != nil { + if err == rtpmpeg4audio.ErrMorePacketsNeeded { + return nil + } return err }