From 62ad580a0d01c762f9a8f8dc030b9959cd9f59f5 Mon Sep 17 00:00:00 2001 From: dexter <178529795@qq.com> Date: Mon, 2 Jan 2023 14:46:42 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8Dstream=E5=BA=8F=E5=88=97?= =?UTF-8?q?=E5=8C=96=E5=BE=AA=E7=8E=AF=E5=BC=95=E7=94=A8=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- track/rtp.go | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/track/rtp.go b/track/rtp.go index 89d3401..9ddccdc 100644 --- a/track/rtp.go +++ b/track/rtp.go @@ -7,6 +7,7 @@ import ( "m7s.live/engine/v4/config" "m7s.live/engine/v4/util" ) + type RTPWriter interface { writeRTPFrame(frame *RTPFrame) } @@ -33,7 +34,6 @@ func (av *Media[T]) UnmarshalRTP(raw []byte) (frame *RTPFrame) { return av.UnmarshalRTPPacket(&p) } - // WriteRTPPack 写入已反序列化的RTP包 func (av *Media[T]) WriteRTPPack(p *rtp.Packet) { for frame := av.UnmarshalRTPPacket(p); frame != nil; frame = av.nextRTPFrame() { @@ -48,12 +48,11 @@ func (av *Media[T]) WriteRTP(raw []byte) { } } - type RTPDemuxer struct { - lastSeq uint16 //上一个收到的序号,用于乱序重排 - lastSeq2 uint16 //记录上上一个收到的序列号 - 乱序重排 util.RTPReorder[*RTPFrame] - RTPWriter + lastSeq uint16 //上一个收到的序号,用于乱序重排 + lastSeq2 uint16 //记录上上一个收到的序列号 + 乱序重排 util.RTPReorder[*RTPFrame] + RTPWriter `json:"-"` } // 获取缓存中下一个rtpFrame @@ -87,6 +86,4 @@ func (av *RTPDemuxer) recorderRTP(frame *RTPFrame) *RTPFrame { type RTPMuxer struct { rtpSequence uint16 //用于生成下一个rtp包的序号 - } -