diff --git a/client_format.go b/client_format.go index 328a9fd2..e920d80e 100644 --- a/client_format.go +++ b/client_format.go @@ -2,7 +2,6 @@ package gortsplib import ( "fmt" - "io" "time" "github.com/pion/rtcp" @@ -15,28 +14,6 @@ import ( "github.com/bluenviron/gortsplib/v3/pkg/rtpreorderer" ) -// workaround until this gets tagged: -// https://github.com/pion/rtp/pull/234 -func rtpPacketMarshalToSafe(p *rtp.Packet, buf []byte) (n int, err error) { - n, err = p.Header.MarshalTo(buf) - if err != nil { - return 0, err - } - - // Make sure the buffer is large enough to hold the packet. - if n+len(p.Payload)+int(p.PaddingSize) > len(buf) { - return 0, io.ErrShortBuffer - } - - m := copy(buf[n:], p.Payload) - - if p.Header.Padding { - buf[n+m+int(p.PaddingSize-1)] = p.PaddingSize - } - - return n + m + int(p.PaddingSize), nil -} - type clientFormat struct { c *Client cm *clientMedia @@ -103,7 +80,7 @@ func (ct *clientFormat) stop() { func (ct *clientFormat) writePacketRTPWithNTP(pkt *rtp.Packet, ntp time.Time) error { byts := make([]byte, udpMaxPayloadSize) - n, err := rtpPacketMarshalToSafe(pkt, byts) + n, err := pkt.MarshalTo(byts) if err != nil { return err } diff --git a/server_stream_media.go b/server_stream_media.go index e814887c..f9f711b0 100644 --- a/server_stream_media.go +++ b/server_stream_media.go @@ -69,7 +69,7 @@ func (sm *serverStreamMedia) allocateMulticastHandler(s *Server) error { func (sm *serverStreamMedia) WritePacketRTPWithNTP(ss *ServerStream, pkt *rtp.Packet, ntp time.Time) { byts := make([]byte, udpMaxPayloadSize) - n, err := rtpPacketMarshalToSafe(pkt, byts) + n, err := pkt.MarshalTo(byts) if err != nil { return }