[Bug 723196] New: Incorrect calculation of rtp header length

GStreamer (bugzilla.gnome.org) bugzilla at gnome.org
Tue Jan 28 13:33:45 PST 2014


https://bugzilla.gnome.org/show_bug.cgi?id=723196
  GStreamer | gst-plugins-good | 1.x

           Summary: Incorrect calculation of rtp header length
    Classification: Platform
           Product: GStreamer
           Version: 1.x
        OS/Version: Linux
            Status: UNCONFIRMED
          Severity: normal
          Priority: Normal
         Component: gst-plugins-good
        AssignedTo: gstreamer-bugs at lists.freedesktop.org
        ReportedBy: william.jordan at vbrick.com
         QAContact: gstreamer-bugs at lists.freedesktop.org
     GNOME version: ---


I was receiving a rtp g711 mulaw stream, then sending it to a gstreamer
pipeline for conversion to aac.

It looks like the rtppcmudepay module incorrectly calculated the rtp header
size.  It assumed it was always 12 bytes, yet when there are contributing
source identifiers this is incorrect.

The number of contributing source identifiers is given in the last 4 bits of
the first byte of the rtp packet.  Each contributing source identifier adds 4
bytes to the size of the rtp header.

Here is some example code to calculate the size of the rtp header.

char RtpBuf[1600]; // assume this contains the rtp message
int NumCsrc;
int RtpHeaderSize;

NumCsrc = *RtpBuf & 0x0f;
RtpHeaderSize = 12 + 4 * NumCsrc;

I confirmed that this was the problem because I had audio artifacts before I
reformatted the RTP packet and stripped out the contributing source identifiers
and no artifacts afterwards.

This same problem may occur in the other rtpdepay modules, but I didn't test.

-- 
Configure bugmail: https://bugzilla.gnome.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
You are the assignee for the bug.


More information about the gstreamer-bugs mailing list