GNOME Bugzilla – Bug 564024
[avidemux] crashes on an avifile with a txtstream segment
Last modified: 2009-08-01 18:43:45 UTC
The latest version of avidemux crashes if you give it an uncompressed avi file with a txt stream inside of it. Reproduction steps: 1) Download attached vidtxtstreams_324_312_uncompressed.avi file 2) Run the following: gst-launch -tvm playbin uri=file:///tmp/vidtxtstreams_324_312_uncompressed.avi 3) gst-launch says it is spinning and prompts to run gdb. Here is the output from gst-launch call in step 2 with GST_DEBUG=3: Setting pipeline to PAUSED ... /GstPlayBin:playbin0/GstDecodeBin:decodebin0/GstTypeFindElement:typefind.GstPad:src: caps = video/x-msvideo Pipeline is PREROLLING ... Got Message from element "playbin0" (state-changed): GstMessageState, old-state=(GstState)GST_STATE_NULL, new-state=(GstState)GST_STATE_READY, pending-state=(GstState)GST_STATE_PAUSED; Got Message from element "test" (state-changed): GstMessageState, old-state=(GstState)GST_STATE_NULL, new-state=(GstState)GST_STATE_READY, pending-state=(GstState)GST_STATE_PAUSED; Got Message from element "fakesink" (state-changed): GstMessageState, old-state=(GstState)GST_STATE_NULL, new-state=(GstState)GST_STATE_READY, pending-state=(GstState)GST_STATE_VOID_PENDING; Got Message from element "typefind" (state-changed): GstMessageState, old-state=(GstState)GST_STATE_NULL, new-state=(GstState)GST_STATE_READY, pending-state=(GstState)GST_STATE_VOID_PENDING; Got Message from element "decodebin0" (state-changed): GstMessageState, old-state=(GstState)GST_STATE_NULL, new-state=(GstState)GST_STATE_READY, pending-state=(GstState)GST_STATE_PAUSED; Got Message from element "avidemux0" (state-changed): GstMessageState, old-state=(GstState)GST_STATE_NULL, new-state=(GstState)GST_STATE_READY, pending-state=(GstState)GST_STATE_VOID_PENDING; Got Message from element "avidemux0" (state-changed): GstMessageState, old-state=(GstState)GST_STATE_READY, new-state=(GstState)GST_STATE_PAUSED, pending-state=(GstState)GST_STATE_VOID_PENDING; Got Message from element "typefind" (state-changed): GstMessageState, old-state=(GstState)GST_STATE_READY, new-state=(GstState)GST_STATE_PAUSED, pending-state=(GstState)GST_STATE_VOID_PENDING; Got Message from element "source" (state-changed): GstMessageState, old-state=(GstState)GST_STATE_NULL, new-state=(GstState)GST_STATE_READY, pending-state=(GstState)GST_STATE_PAUSED; Got Message from element "source" (state-changed): GstMessageState, old-state=(GstState)GST_STATE_READY, new-state=(GstState)GST_STATE_PAUSED, pending-state=(GstState)GST_STATE_VOID_PENDING; /GstPlayBin:playbin0/GstDecodeBin:decodebin0/GstAviDemux:avidemux0.GstPad:sink: caps = video/x-msvideo Got Message from element "queue0" (state-changed): GstMessageState, old-state=(GstState)GST_STATE_NULL, new-state=(GstState)GST_STATE_READY, pending-state=(GstState)GST_STATE_VOID_PENDING; Got Message from element "queue0" (state-changed): GstMessageState, old-state=(GstState)GST_STATE_READY, new-state=(GstState)GST_STATE_PAUSED, pending-state=(GstState)GST_STATE_VOID_PENDING; Got Message from element "selector_video_src0" (state-changed): GstMessageState, old-state=(GstState)GST_STATE_NULL, new-state=(GstState)GST_STATE_READY, pending-state=(GstState)GST_STATE_PAUSED; Got Message from element "selector_video_src0" (state-changed): GstMessageState, old-state=(GstState)GST_STATE_READY, new-state=(GstState)GST_STATE_PAUSED, pending-state=(GstState)GST_STATE_VOID_PENDING; Got Message from element "preroll_video_src0" (state-changed): GstMessageState, old-state=(GstState)GST_STATE_NULL, new-state=(GstState)GST_STATE_READY, pending-state=(GstState)GST_STATE_PAUSED; Got Message from element "preroll_video_src0" (state-changed): GstMessageState, old-state=(GstState)GST_STATE_READY, new-state=(GstState)GST_STATE_PAUSED, pending-state=(GstState)GST_STATE_VOID_PENDING; Got Message from element "queue2" (state-changed): GstMessageState, old-state=(GstState)GST_STATE_NULL, new-state=(GstState)GST_STATE_READY, pending-state=(GstState)GST_STATE_VOID_PENDING; Got Message from element "avisubtitle0" (state-changed): GstMessageState, old-state=(GstState)GST_STATE_NULL, new-state=(GstState)GST_STATE_READY, pending-state=(GstState)GST_STATE_VOID_PENDING; /GstPlayBin:playbin0/GstDecodeBin:decodebin0/GstSubParse:subparse0: subtitle-encoding = NULL Got Message from element "subparse0" (state-changed): GstMessageState, old-state=(GstState)GST_STATE_NULL, new-state=(GstState)GST_STATE_READY, pending-state=(GstState)GST_STATE_VOID_PENDING; Got Message from element "selector_text_src1" (state-changed): GstMessageState, old-state=(GstState)GST_STATE_NULL, new-state=(GstState)GST_STATE_READY, pending-state=(GstState)GST_STATE_PAUSED; Got Message from element "selector_text_src1" (state-changed): GstMessageState, old-state=(GstState)GST_STATE_READY, new-state=(GstState)GST_STATE_PAUSED, pending-state=(GstState)GST_STATE_VOID_PENDING; Got Message from element "preroll_text_src1" (state-changed): GstMessageState, old-state=(GstState)GST_STATE_NULL, new-state=(GstState)GST_STATE_READY, pending-state=(GstState)GST_STATE_PAUSED; Got Message from element "preroll_text_src1" (state-changed): GstMessageState, old-state=(GstState)GST_STATE_READY, new-state=(GstState)GST_STATE_PAUSED, pending-state=(GstState)GST_STATE_VOID_PENDING; Got Message from element "subparse0" (state-changed): GstMessageState, old-state=(GstState)GST_STATE_READY, new-state=(GstState)GST_STATE_PAUSED, pending-state=(GstState)GST_STATE_VOID_PENDING; Got Message from element "avisubtitle0" (state-changed): GstMessageState, old-state=(GstState)GST_STATE_READY, new-state=(GstState)GST_STATE_PAUSED, pending-state=(GstState)GST_STATE_VOID_PENDING; Got Message from element "queue2" (state-changed): GstMessageState, old-state=(GstState)GST_STATE_READY, new-state=(GstState)GST_STATE_PAUSED, pending-state=(GstState)GST_STATE_VOID_PENDING; /GstPlayBin:playbin0/GstStreamSelector:selector_video_src0: active-pad = NULL /GstPlayBin:playbin0/GstStreamSelector:selector_text_src1: active-pad = NULL Got Message from element "playbin0" (element): missing-plugin, type=(string)element, detail=(string)textoverlay, name=(string)"GStreamer\ element\ textoverlay"; Got Message from element "vscale" (state-changed): GstMessageState, old-state=(GstState)GST_STATE_READY, new-state=(GstState)GST_STATE_PAUSED, pending-state=(GstState)GST_STATE_VOID_PENDING; Got Message from element "vconv" (state-changed): GstMessageState, old-state=(GstState)GST_STATE_READY, new-state=(GstState)GST_STATE_PAUSED, pending-state=(GstState)GST_STATE_VOID_PENDING; Got Message from element "id" (state-changed): GstMessageState, old-state=(GstState)GST_STATE_READY, new-state=(GstState)GST_STATE_PAUSED, pending-state=(GstState)GST_STATE_VOID_PENDING; (gst-launch-0.10:4226): GStreamer-CRITICAL **: gst_pad_link: assertion `GST_IS_PAD (sinkpad)' failed (gst-launch-0.10:4226): GStreamer-CRITICAL **: gst_object_unref: assertion `object != NULL' failed Got Message from element "test" (state-changed): GstMessageState, old-state=(GstState)GST_STATE_PLAYING, new-state=(GstState)GST_STATE_PAUSED, pending-state=(GstState)GST_STATE_READY; Got Message from element "test" (state-changed): GstMessageState, old-state=(GstState)GST_STATE_READY, new-state=(GstState)GST_STATE_READY, pending-state=(GstState)GST_STATE_NULL; Got Message from element "test" (state-changed): GstMessageState, old-state=(GstState)GST_STATE_READY, new-state=(GstState)GST_STATE_NULL, pending-state=(GstState)GST_STATE_VOID_PENDING; Got Message from element "avidemux0" (tag): taglist, video-codec=(string)"Palettized\ 24-bit\ RGB"; FOUND TAG : found by element "avidemux0". video codec: Palettized 24-bit RGB /GstPlayBin:playbin0/GstDecodeBin:decodebin0/GstQueue:queue0.GstPad:sink: caps = video/x-raw-rgb, bpp=(int)24, depth=(int)24, endianness=(int)4321, red_mask=(int)255, green_mask=(int)65280, blue_mask=(int)16711680, framerate=(fraction)30/1, width=(int)324, height=(int)312 Caught SIGSEGV accessing address 0x8 /GstPlayBin:playbin0/GstDecodeBin:decodebin0/GstQueue:queue0.GstPad:src: caps = video/x-raw-rgb, bpp=(int)24, depth=(int)24, endianness=(int)4321, red_mask=(int)255, green_mask=(int)65280, blue_mask=(int)16711680, framerate=(fraction)30/1, width=(int)324, height=(int)312 /GstPlayBin:playbin0/GstStreamSelector:selector_video_src0.GstSelectorPad:sink0: caps = video/x-raw-rgb, bpp=(int)24, depth=(int)24, endianness=(int)4321, red_mask=(int)255, green_mask=(int)65280, blue_mask=(int)16711680, framerate=(fraction)30/1, width=(int)324, height=(int)312 /GstPlayBin:playbin0/GstDecodeBin:decodebin0.GstGhostPad:src0: caps = video/x-raw-rgb, bpp=(int)24, depth=(int)24, endianness=(int)4321, red_mask=(int)255, green_mask=(int)65280, blue_mask=(int)16711680, framerate=(fraction)30/1, width=(int)324, height=(int)312 /GstPlayBin:playbin0/GstDecodeBin:decodebin0.GstGhostPad:src0.GstProxyPad:proxypad1: caps = video/x-raw-rgb, bpp=(int)24, depth=(int)24, endianness=(int)4321, red_mask=(int)255, green_mask=(int)65280, blue_mask=(int)16711680, framerate=(fraction)30/1, width=(int)324, height=(int)312 /GstPlayBin:playbin0/GstStreamSelector:selector_video_src0.GstPad:src: caps = video/x-raw-rgb, bpp=(int)24, depth=(int)24, endianness=(int)4321, red_mask=(int)255, green_mask=(int)65280, blue_mask=(int)16711680, framerate=(fraction)30/1, width=(int)324, height=(int)312 /GstPlayBin:playbin0/GstQueue:preroll_video_src0.GstPad:sink: caps = video/x-raw-rgb, bpp=(int)24, depth=(int)24, endianness=(int)4321, red_mask=(int)255, green_mask=(int)65280, blue_mask=(int)16711680, framerate=(fraction)30/1, width=(int)324, height=(int)312 /GstPlayBin:playbin0/GstQueue:preroll_video_src0.GstPad:src: caps = video/x-raw-rgb, bpp=(int)24, depth=(int)24, endianness=(int)4321, red_mask=(int)255, green_mask=(int)65280, blue_mask=(int)16711680, framerate=(fraction)30/1, width=(int)324, height=(int)312
+ Trace 210676
Correction to the bug report: The file that reproduces this issue was too large to attach. I've uploaded it to my website: http://www.haddads.net/files/vidtxtstreams_324_312_uncompressed.avi.zip
I does not crash for me but it fails with a decoding error because the subtitle is not of a regignized format (GAB2). Can you make a backtrace of the crash?
Closing this bug report as no further information has been provided. Please feel free to reopen this bug if you can provide the information asked for. Thanks!