[Bug 680194] New: [0.11] mpeg2dec: gst_video_decoder_alloc_output_frame: assertion `frame->output_buffer == NULL' failed with cluttersink and fakesink

GStreamer (bugzilla.gnome.org) bugzilla at gnome.org
Wed Jul 18 11:38:39 PDT 2012


https://bugzilla.gnome.org/show_bug.cgi?id=680194
  GStreamer | gst-plugins-ugly | 0.11.x

           Summary: [0.11] mpeg2dec: gst_video_decoder_alloc_output_frame:
                    assertion `frame->output_buffer == NULL' failed with
                    cluttersink and fakesink
    Classification: Platform
           Product: GStreamer
           Version: 0.11.x
        OS/Version: Linux
            Status: NEW
          Severity: major
          Priority: Normal
         Component: gst-plugins-ugly
        AssignedTo: gstreamer-bugs at lists.freedesktop.org
        ReportedBy: t.i.m at zen.co.uk
         QAContact: gstreamer-bugs at lists.freedesktop.org
                CC: bilboed at gmail.com, slomo at circular-chaos.org
        Depends on: 679878
     GNOME version: ---


+++ This bug was initially created as a clone of Bug #679878 +++

Re-opening, since original issue still remains:

Starting program: /home/tpm/gst/0.11/gstreamer/tools/.libs/lt-gst-launch-1.0
filesrc
location=/home/tpm/samples/misc/331301-xgl-gentoo-lycos-mpeg2dec-cropping.avi
\! decodebin \! video/x-raw \! fakesink

** (gst-launch-1.0:20833): CRITICAL **: gst_video_decoder_alloc_output_frame:
assertion `frame->output_buffer == NULL' failed

Program received signal SIGTRAP, Trace/breakpoint trap.
[Switching to Thread 0x7ffff22cc700 (LWP 20838)]
g_logv (log_domain=0x0, log_level=G_LOG_LEVEL_CRITICAL, format=0x7ffff722d6e2
"%s: assertion `%s' failed", args1=args1 at entry=0x7ffff22cafe8) at
/tmp/buildd/glib2.0-2.32.3/./glib/gmessages.h:101
101    /tmp/buildd/glib2.0-2.32.3/./glib/gmessages.h: No such file or
directory.
(gdb) bt
#0  g_logv (log_domain=0x0, log_level=G_LOG_LEVEL_CRITICAL,
format=0x7ffff722d6e2 "%s: assertion `%s' failed",
args1=args1 at entry=0x7ffff22cafe8) at
/tmp/buildd/glib2.0-2.32.3/./glib/gmessages.h:101
#1  0x00007ffff71ec4d2 in g_log (log_domain=log_domain at entry=0x0,
log_level=log_level at entry=G_LOG_LEVEL_CRITICAL,
format=format at entry=0x7ffff722d6e2 "%s: assertion `%s' failed") at
/tmp/buildd/glib2.0-2.32.3/./glib/gmessages.c:792
#2  0x00007ffff71ec4f9 in g_return_if_fail_warning
(log_domain=log_domain at entry=0x0,
pretty_function=pretty_function at entry=0x7ffff4fd1f40
"gst_video_decoder_alloc_output_frame", 
    expression=expression at entry=0x7ffff4fd0ec8 "frame->output_buffer == NULL")
at /tmp/buildd/glib2.0-2.32.3/./glib/gmessages.c:801
#3  0x00007ffff4fc0ed6 in gst_video_decoder_alloc_output_frame
(decoder=0x86e390, frame=frame at entry=0x862c20) at gstvideodecoder.c:2829
#4  0x00007ffff148a358 in gst_mpeg2dec_crop_buffer (input_vframe=0x87b1e8,
in_frame=0x862c20, dec=0x86e390) at gstmpeg2dec.c:332
#5  handle_slice (info=0x878300, mpeg2dec=0x86e390) at gstmpeg2dec.c:879
#6  gst_mpeg2dec_handle_frame (decoder=0x86e390, frame=0x7dfd20) at
gstmpeg2dec.c:964
#7  0x00007ffff4fb9d44 in gst_video_decoder_decode_frame
(decoder=decoder at entry=0x86e390, frame=0x7dfd20) at gstvideodecoder.c:2460
#8  0x00007ffff4fbd6bf in gst_video_decoder_chain_forward
(decoder=decoder at entry=0x86e390, buf=buf at entry=0x87c780, at_eos=at_eos at entry=0)
at gstvideodecoder.c:1616
#9  0x00007ffff4fbe769 in gst_video_decoder_chain (pad=<optimized out>,
parent=<optimized out>, buf=0x87c780) at gstvideodecoder.c:1860
#10 0x00007ffff7b48ef8 in gst_pad_chain_data_unchecked (data=0x87c780,
type=<optimized out>, pad=0x834d90) at gstpad.c:3588
#11 gst_pad_push_data (pad=0x8344d0, type=type at entry=4112, data=<optimized
out>, data at entry=0x87c780) at gstpad.c:3801
#12 0x00007ffff7b4f6f6 in gst_pad_push (pad=<optimized out>,
buffer=buffer at entry=0x87c780) at gstpad.c:3904
#13 0x00007ffff58ab26f in gst_base_parse_push_frame
(parse=parse at entry=0x83c990, frame=frame at entry=0x85d8a0) at gstbaseparse.c:2080
#14 0x00007ffff58ae2eb in gst_base_parse_handle_and_push_frame (frame=0x85d8a0,
parse=0x83c990) at gstbaseparse.c:1905
#15 gst_base_parse_finish_frame (parse=parse at entry=0x83c990,
frame=frame at entry=0x85d8a0, size=size at entry=5379) at gstbaseparse.c:2200
#16 0x00007ffff18c2fff in gst_mpegv_parse_handle_frame (parse=0x83c990,
frame=0x85d8a0, skipsize=0x7ffff22cbba8) at gstmpegvideoparse.c:602
#17 0x00007ffff58a8fd4 in gst_base_parse_handle_buffer
(parse=parse at entry=0x83c990, buffer=<optimized out>,
skip=skip at entry=0x7ffff22cbba8, flushed=flushed at entry=0x7ffff22cbbac) at
gstbaseparse.c:1770
#18 0x00007ffff58abe24 in gst_base_parse_chain (pad=<optimized out>,
parent=0x83c990, buffer=<optimized out>) at gstbaseparse.c:2589
#19 0x00007ffff7b48ef8 in gst_pad_chain_data_unchecked (data=0x7dfb00,
type=<optimized out>, pad=0x8342a0) at gstpad.c:3588
#20 gst_pad_push_data (pad=0x834070, type=type at entry=4112, data=<optimized
out>, data at entry=0x7dfb00) at gstpad.c:3801
#21 0x00007ffff7b4f6f6 in gst_pad_push (pad=<optimized out>,
buffer=buffer at entry=0x7dfb00) at gstpad.c:3904
#22 0x00007ffff5b061ed in gst_single_queue_push_one (object=0x7dfb00,
sq=0x7fffec003c20, mq=0x837020) at gstmultiqueue.c:1057
#23 gst_multi_queue_loop (pad=<optimized out>) at gstmultiqueue.c:1303
#24 0x00007ffff7b76971 in gst_task_func (task=0x7bdb40) at gsttask.c:316
#25 0x00007ffff72085f2 in g_thread_pool_thread_proxy (data=<optimized out>) at
/tmp/buildd/glib2.0-2.32.3/./glib/gthreadpool.c:309
#26 0x00007ffff7207df5 in g_thread_proxy (data=0x82f850) at
/tmp/buildd/glib2.0-2.32.3/./glib/gthread.c:801
#27 0x00007ffff6b79b50 in start_thread (arg=<optimized out>) at
pthread_create.c:304
#28 0x00007ffff68c46dd in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#29 0x0000000000000000 in ?? ()
(gdb) 

This works fine now with xvimagesink, but still fails with other videosinks
such as cluttersink or fakesink  (that don't support the advanced video
shizzle, presumably).

Sample file:
http://samplemedia.linaro.org/MPEG2/big_buck_bunny_1080p_MPEG2_MP2_25fps_6600K_short.MPG

Sample pipeline:
$ gst-launch-1.0 filesrc location=
/home/tpm/samples/linaro.org/MPEG2/big_buck_bunny_1080p_MPEG2_MP2_25fps_6600K_short.MPG
! mpegpsdemux ! mpeg2dec ! fakesink -v

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