[Bug 758943] SEGV using rtpj2kdepay & openjpegdec

GStreamer (GNOME Bugzilla) bugzilla at gnome.org
Thu Dec 17 06:24:13 PST 2015


https://bugzilla.gnome.org/show_bug.cgi?id=758943

Vincent Dehors <vincent.dehors at openwide.fr> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |vincent.dehors at openwide.fr

--- Comment #1 from Vincent Dehors <vincent.dehors at openwide.fr> ---
I got the same problem with gstreamer 1.6.2.

The following pipeline causes a SEGFAULT while processing the first image in
the element "openjpegdec" :
gst-launch-1.0 videotestsrc ! video/x-raw, format=I420 ! openjpegenc !
rtpj2kpay ! rtpj2kdepay ! openjpegdec ! videoconvert ! autovideosink sync=false

BUT the following one does not crash :
gst-launch-1.0 videotestsrc ! video/x-raw, format=I420 ! openjpegenc !
openjpegdec ! videoconvert ! autovideosink sync=false

The RTP deplayloader pushed buffer list but openjpegdec does not seem to be
able to handle "parted" frame.

For example, the "rtpj2kdepay" use "gst_rtp_base_depayload_push_list
(depayload, buflist);" to push several small buffer. The concatenation of all
small buffer of the buffer list corresponds to a video frame. The element
"openjpegdec" has a callback for frame processing :
"gst_openjpeg_dec_handle_frame()". But the buffer "frame->input_buffer" in this
callback is not the whole frame, this is only "one" buffer of the buffer list
pushed by the depayloader.

If I changed the depayloader to push whole buffer, the first commande is
working fine (see patch).

Why does buffer list have been introduced in this depayloader ? Should we do
something in the decoder to continue to use buffer list ?

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