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 680519 - [0.11] tsdemux: gst_adapter_flush: assertion `flush <= adapter->size' failed
[0.11] tsdemux: gst_adapter_flush: assertion `flush <= adapter->size' failed
Status: RESOLVED OBSOLETE
Product: GStreamer
Classification: Platform
Component: gst-plugins-bad
0.11.x
Other Linux
: Normal normal
: NONE
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2012-07-24 11:57 UTC by Tim-Philipp Müller
Modified: 2012-10-21 17:27 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Tim-Philipp Müller 2012-07-24 11:57:17 UTC
Strangely enough, I only get these when playing the clip in totem, not when using gst-launch playbin. Happens right at the very end.

tpm@zingle:~/gst/0.11/totem/src$ G_DEBUG=fatal_warnings gdb --args ./.libs/lt-totem ~/bbcnews2.m2t 

** (lt-totem:7445): CRITICAL **: gst_adapter_flush: assertion `flush <= adapter->size' failed

Program received signal SIGTRAP, Trace/breakpoint trap.

Thread 140736830387968 (LWP 7450)

  • #0 g_logv
    at /tmp/buildd/glib2.0-2.32.3/./glib/gmessages.h line 101
  • #1 g_log
    at /tmp/buildd/glib2.0-2.32.3/./glib/gmessages.c line 792
  • #2 mpegts_packetizer_clear_packet
    at mpegtspacketizer.c line 2535
  • #3 mpegts_base_chain
    at mpegtsbase.c line 1465
  • #4 mpegts_base_loop
    at mpegtsbase.c line 1605
  • #5 gst_task_func
    at gsttask.c line 316
  • #6 g_thread_pool_thread_proxy
    at /tmp/buildd/glib2.0-2.32.3/./glib/gthreadpool.c line 309
  • #7 g_thread_proxy
    at /tmp/buildd/glib2.0-2.32.3/./glib/gthread.c line 801
  • #8 start_thread
    at pthread_create.c line 304
  • #9 clone
    at ../sysdeps/unix/sysv/linux/x86_64/clone.S line 112
  • #10 ??
  • #2 mpegts_packetizer_clear_packet
    at mpegtspacketizer.c line 2535
$1 = {parent = {g_type_instance = {g_class = 0x136dc00}, ref_count = 1, qdata = 0x0}, adapter = 0x1311030, streams = 0x11f0200, disposed = 0, know_packet_size = 1, packet_size = 188, caps = 0x12adb20, offset = 176956, empty = 0, 
  calculate_skew = 0, base_time = 18446744073709551615, base_pcrtime = 18446744073709551615, prev_out_time = 18446744073709551615, prev_in_time = 0, last_pcrtime = 18446744073709551615, window = {0 <repeats 512 times>}, window_pos = 0, 
  window_size = 0, window_filling = 1, window_min = 0, skew = 0, prev_send_diff = -1, wrap_count = 0, calculate_offset = 1, priv = 0x15bdcb0}
Comment 1 Tim-Philipp Müller 2012-07-24 11:57:38 UTC
Clip: http://people.freedesktop.org/~tpm/samples/bbcnews2.m2t
Comment 2 Edward Hervey 2012-09-11 15:35:18 UTC
I can't get the crash in gst-launch or totem
Comment 3 Tim-Philipp Müller 2012-09-11 16:10:10 UTC
Can't reproduce that any longer, however I get something possibly related/similar when seeking (just starting playback, then hitting the arrow-right key), namely:

(lt-totem:7428): GStreamer-CRITICAL **: gst_mini_object_unref: assertion `mini_object->refcount > 0' failed

So refcount bug somewhere, maybe in the video decoder ?

Program received signal SIGTRAP, Trace/breakpoint trap.

Thread 140736622143232 (LWP 7439)

  • #0 g_logv
    at /tmp/buildd/glib2.0-2.32.3/./glib/gmessages.h line 101
  • #1 g_log
    at /tmp/buildd/glib2.0-2.32.3/./glib/gmessages.c line 792
  • #2 gst_queue_locked_flush
    at gstqueue.c line 564
  • #3 gst_queue_loop
    at gstqueue.c line 1180
  • #4 gst_task_func
    at gsttask.c line 316
  • #5 g_thread_pool_thread_proxy
    at /tmp/buildd/glib2.0-2.32.3/./glib/gthreadpool.c line 309
  • #6 g_thread_proxy
    at /tmp/buildd/glib2.0-2.32.3/./glib/gthread.c line 801
  • #7 start_thread
    at pthread_create.c line 304
  • #8 clone
    at ../sysdeps/unix/sysv/linux/x86_64/clone.S line 112
  • #9 ??
  • #1 g_log
    at /tmp/buildd/glib2.0-2.32.3/./glib/gmessages.c line 792
  • #2 gst_queue_locked_flush
    at gstqueue.c line 564
$1 = {element = {object = {object = {g_type_instance = {g_class = 0x122aa10}, ref_count = 4, qdata = 0x0}, lock = {p = 0x7fffe02c0010, i = {3760979984, 32767}}, name = 0x7fffe026eea0 "vqueue", 
      parent = 0x12783e0, flags = 0, control_bindings = 0x0, control_rate = 100000000, last_sync = 18446744073709551615, _gst_reserved = 0x0}, state_lock = {p = 0x1254100, i = {0, 0}}, state_cond = {
      p = 0x7fffe02da980, i = {0, 0}}, state_cookie = 4, target_state = GST_STATE_PAUSED, current_state = GST_STATE_PAUSED, next_state = GST_STATE_VOID_PENDING, pending_state = GST_STATE_VOID_PENDING, 
    last_return = GST_STATE_CHANGE_SUCCESS, bus = 0x125ea40, clock = 0x93f930, base_time = 0, start_time = 1734630000, numpads = 2, pads = 0x7fffe02c0920, numsrcpads = 1, srcpads = 0x7fffe022f600, 
    numsinkpads = 1, sinkpads = 0x7fffe022f4c0, pads_cookie = 2, _gst_reserved = {0x0, 0x0, 0x0, 0x0}}, sinkpad = 0x12526c0, srcpad = 0x12528f0, sink_segment = {flags = GST_SEGMENT_FLAG_NONE, rate = 1, 
    applied_rate = 1, format = GST_FORMAT_TIME, base = 0, offset = 0, start = 0, stop = 18446744073709551615, time = 0, position = 2675545740, duration = 18446744073709551615, _gst_reserved = {0x0, 
      0x0, 0x0, 0x0}}, src_segment = {flags = GST_SEGMENT_FLAG_NONE, rate = 1, applied_rate = 1, format = GST_FORMAT_TIME, base = 0, offset = 0, start = 0, stop = 18446744073709551615, time = 0, 
    position = 2675545740, duration = 18446744073709551615, _gst_reserved = {0x0, 0x0, 0x0, 0x0}}, sinktime = 2675545740, srctime = 2675545740, sink_tainted = 0, src_tainted = 0, 
  srcresult = GST_FLOW_FLUSHING, unexpected = 0, eos = 0, queue = {array = 0x7fffe02e2070, size = 300, head = 10, tail = 10, length = 0}, cur_level = {buffers = 0, bytes = 0, time = 0}, max_size = {
    buffers = 3, bytes = 0, time = 0}, min_threshold = {buffers = 0, bytes = 0, time = 0}, orig_min_threshold = {buffers = 0, bytes = 0, time = 0}, leaky = 0, qlock = {p = 0x7fffe02e0d90, i = {
      3761114512, 32767}}, waiting_add = 0, item_add = {p = 0x7fffe02c0170, i = {0, 0}}, waiting_del = 0, item_del = {p = 0x7fffe02e0f50, i = {0, 0}}, head_needs_discont = 0, tail_needs_discont = 0, 
  push_newsegment = 0, silent = 1, newseg_applied_to_src = 0, last_query = 0}
Comment 4 Tim-Philipp Müller 2012-10-21 17:27:35 UTC
Let's close this until I get it again.