[Bug 703669] New: gst_rtcp_packet_fb_set_fci_length sets an incorrect buffer size.

GStreamer (bugzilla.gnome.org) bugzilla at gnome.org
Fri Jul 5 09:41:15 PDT 2013


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

           Summary: gst_rtcp_packet_fb_set_fci_length sets an incorrect
                    buffer size.
    Classification: Platform
           Product: GStreamer
           Version: 1.x
        OS/Version: All
            Status: UNCONFIRMED
          Severity: normal
          Priority: Normal
         Component: gst-plugins-base
        AssignedTo: gstreamer-bugs at lists.freedesktop.org
        ReportedBy: poldsberg at gmail.com
         QAContact: gstreamer-bugs at lists.freedesktop.org
     GNOME version: ---


When using gst_rtcp_packet_fb_set_fci_length to set the length of the
FCI in a feedback message, the buffer becomes 8 bytes longer than expected.

The length that is calculated and written to the packet is later used to
increment
the buffer length.

from gstrtcpbuffer.c:
gst_rtcp_packet_fb_set_fci_length (GstRTCPPacket * packet, guint16 wordlen)
  .........
  data = packet->rtcp->map.data + packet->offset + 2;
  wordlen += 2;                                            <= wordlen increased
by 2
  GST_WRITE_UINT16_BE (data, wordlen);

  packet->rtcp->map.size += wordlen * 4;  <= wordlen used to increase buffer
size

  return TRUE;
}

The resulting buffer is therefore 8 bytes too big, because the non-FCI part of
the 
packet is already accounted for when created in gst_rtcp_buffer_add_packet:
...
case GST_RTCP_TYPE_RTPFB:
      len = 12;
      break;
case GST_RTCP_TYPE_PSFB:
      len = 12
...
rtcp->map.size += len;
...

-- 
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