From 7d1fb50a752edf32c40e5ce1b3db221857f1ee63 Mon Sep 17 00:00:00 2001 From: joestarzxh Date: Sat, 2 Apr 2022 19:58:28 +0800 Subject: [PATCH] =?UTF-8?q?[fix]rtmp2rtsp=E4=B8=AD=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E5=8C=85=E5=A4=AA=E5=B0=8F=E7=9A=84=E8=BF=87=E6=BB=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pkg/remux/rtmp2rtsp.go | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/pkg/remux/rtmp2rtsp.go b/pkg/remux/rtmp2rtsp.go index a8310ca..84d75ad 100644 --- a/pkg/remux/rtmp2rtsp.go +++ b/pkg/remux/rtmp2rtsp.go @@ -163,6 +163,10 @@ func (r *Rtmp2RtspRemuxer) remux(msg base.RtmpMsg) { var rtppkts []rtprtcp.RtpPacket switch msg.Header.MsgTypeId { case base.RtmpTypeIdAudio: + if len(msg.Payload)<3{ + Log.Warnf("aac seq header payload too short. len=%d, payload=%s", len(msg.Payload), hex.Dump(msg.Payload)) + return + } packer = r.getAudioPacker() if packer != nil { rtppkts = packer.Pack(base.AvPacket{ @@ -172,6 +176,10 @@ func (r *Rtmp2RtspRemuxer) remux(msg base.RtmpMsg) { }) } case base.RtmpTypeIdVideo: + if len(msg.Payload)<6{ + Log.Warnf("Video seq header payload too short. len=%d, payload=%s", len(msg.Payload), hex.Dump(msg.Payload)) + return + } packer = r.getVideoPacker() if packer != nil { rtppkts = r.getVideoPacker().Pack(base.AvPacket{