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 325732 - [oggdemux] problem when seeking to time less than 4s with ogm
[oggdemux] problem when seeking to time less than 4s with ogm
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gst-plugins-base
git master
Other Linux
: Normal normal
: 0.10.4
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2006-01-04 08:05 UTC by Vincent Torri
Modified: 2006-02-25 10:34 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Vincent Torri 2006-01-04 08:05:57 UTC
When I use my usual test program : 

http://www.iecn.u-nancy.fr/~torri/files/gstreamer_seek/seek.c

with an ogm file, and when I seek to times less than 4s, then I get the message:

(seek:17173): GStreamer-CRITICAL **: gst_object_unref: assertion `GST_IS_OBJECT (object)' failed

You can test that with the program above and the file:

http://www.iecn.u-nancy.fr/~torri/files/gstreamer_pb/blood.ogm

it comes from gstoggdemux.c, line 1664, when target is decreased from a time of 4s, that is, when target is equal to 0, actually.

i've tried to fix that but i don't understand how the seek works. If someone can tell me what to look at, maybe i'll try to fix that.
Comment 1 Luca Ognibene 2006-02-19 16:12:03 UTC
confirming.
To test change the line that gets the framerate with:
 gst_structure_get_fraction (structure, "framerate", &num, &den);
 framerate = num / den;

bracktrace with fatal_warnings:
  • #0 g_logv
    from /usr/lib/libglib-2.0.so.0
  • #1 g_log
    from /usr/lib/libglib-2.0.so.0
  • #2 g_return_if_fail_warning
    from /usr/lib/libglib-2.0.so.0
  • #3 gst_object_unref
    from /usr/lib/libgstreamer-0.10.so.0
  • #4 gst_ogm_parse_chain
    at gstogmparse.c line 634
  • #5 gst_pad_chain
    from /usr/lib/libgstreamer-0.10.so.0
  • #6 gst_pad_push
    from /usr/lib/libgstreamer-0.10.so.0
  • #7 gst_queue_loop
    at gstqueue.c line 760
  • #8 gst_task_get_type
    from /usr/lib/libgstreamer-0.10.so.0
  • #9 g_thread_pool_free
    from /usr/lib/libglib-2.0.so.0
  • #10 g_static_private_free
    from /usr/lib/libglib-2.0.so.0
  • #11 start_thread
    from /lib/tls/i686/cmov/libpthread.so.0
  • #12 clone
    from /lib/tls/i686/cmov/libc.so.6

The warning should be fixed with this commit:
2006-02-19  Luca Ognibene  <luogni@tin.it>

	* ext/ogg/gstogmparse.c (gst_ogm_parse_chain): 
	  there's no need to call gst_object_unref if i remove
	  the pad with gst_element_remove_pad (fix warning on #325732)
Comment 2 Luca Ognibene 2006-02-25 10:34:10 UTC
close the bug..