After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 114560 - rfc2250enc produces empty buffers
rfc2250enc produces empty buffers
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gst-plugins
git master
Other All
: Normal normal
: 0.7.6
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2003-06-06 12:02 UTC by Ralph Meijer
Modified: 2004-12-22 21:47 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Ralph Meijer 2003-06-06 12:02:04 UTC
When hooking the rfc2250enc component (from the mpegstream plugin) up to an
mpeg video source, the component sends over buffers with a payload of size
0 (zero).

To reproduce do:

gst-launch -v filesrc location=myelementarympegstream.mpg ! rfc2250enc !
fakesink dump=true

The problem lies in gst/mpegstream/gstrfc2250enc.c, where the merging of
buffers is done incorrectly in all cases, probably due to an (old) API
change of gst_buffer_merge(). They way it is used, it is given 2 arguments,
being the to-be-merged buffers. The context shows that it expects the
result to be in the buffer given as the first argument, but the API says
that the function  creates a new buffer and fills it with the concatenation
of the two buffers and returns that.

I have checked this by creating a new pointer variable and using that to
collect the return value and using that in the code that follows it. This
works as expected.
Comment 1 David Schleef 2004-03-06 01:25:46 UTC
2004-03-05  David Schleef  <ds@schleef.org>

        * gst/mpegstream/gstrfc2250enc.c: (gst_rfc2250_enc_add_slice):
        Fix code that ignores return value of gst_buffer_merge().
        (bug #114560)
        * gst/asfdemux/gstasfdemux.c: (gst_asf_demux_descramble_segment):
        * gst/mpegstream/gstrfc2250enc.c: (gst_rfc2250_enc_add_slice):
same
        * testsuite/gst-lint:  Check for above.