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 320162 - totem crasheswith gstreamer-plugins 0.8.11 when playing dvds -- 0.8.10 works fine
totem crasheswith gstreamer-plugins 0.8.11 when playing dvds -- 0.8.10 works ...
Status: RESOLVED NOTABUG
Product: GStreamer
Classification: Platform
Component: gst-plugins
0.8.11
Other Linux
: Normal normal
: NONE
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2005-10-29 11:12 UTC by Thorsten Leemhuis
Modified: 2006-02-03 03:25 UTC
See Also:
GNOME target: ---
GNOME version: 2.9/2.10



Description Thorsten Leemhuis 2005-10-29 11:12:47 UTC
Distribution/Version: Fedora Core 4

Recompile and install packages from:
http://thomas.apestaart.org/download/pkg/fedora-4-i386-livna/gstreamer-plugins-extra-0.8.11-0.lvn.2/
together with packages from rpm.livna.org

1. Start Totem
2. Choose Movie -> Play Disc
-> crash:
$ gdb totem
GNU gdb Red Hat Linux (6.3.0.0-1.21rh)
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "i386-redhat-linux-gnu"...Using host libthread_db
library "/lib/libthread_db.so.1".

(gdb) run
Starting program: /usr/bin/totem
Reading symbols from shared object read from target memory...done.
Loaded system supplied DSO at 0xf3f000
[Thread debugging using libthread_db enabled]
[New Thread -1208461632 (LWP 30375)]
[New Thread -1208853584 (LWP 30378)]
Detaching after fork from child process 30379.

(totem:30375): GLib-GObject-WARNING **: gsignal.c:1719: signal `got-redirect' is
invalid for instance `0x92a6078'
Detaching after fork from child process 30381.
mount: block device /dev/hdc is write-protected, mounting read-only
Detaching after fork from child process 30382.
[New Thread -1210467408 (LWP 30383)]
libdvdread: Using libdvdcss version 1.2.9 for DVD access
libdvdnav: Using dvdnav version 0.1.10 from http://dvd.sf.net
libdvdread: Using libdvdcss version 1.2.9 for DVD access
libdvdnav: DVD Title: OCEANS_TWELVE
libdvdnav: DVD Serial Number: 324E9B90
libdvdnav: DVD Title (Alternative): OCEANS_TWELVE
libdvdnav: Unable to find map file '/home/thl/.dvdnav/OCEANS_TWELVE.map'
libdvdnav: DVD disk reports itself with Region mask 0x00ed0000. Regions: 2 5

libdvdread: Attempting to retrieve all CSS keys
libdvdread: This can take a _long_ time, please be patient

libdvdread: Get key for /VIDEO_TS/VIDEO_TS.VOB at 0x00000130
libdvdread: Elapsed time 0
libdvdread: Get key for /VIDEO_TS/VTS_01_0.VOB at 0x000006e8
libdvdread: Elapsed time 0
libdvdread: Get key for /VIDEO_TS/VTS_01_1.VOB at 0x0003301e
libdvdread: Elapsed time 0
libdvdread: Get key for /VIDEO_TS/VTS_02_0.VOB at 0x0030220e
libdvdread: Elapsed time 0
libdvdread: Get key for /VIDEO_TS/VTS_02_1.VOB at 0x0030227a
libdvdread: Elapsed time 0
libdvdread: Found 2 VTS's
libdvdread: Elapsed time 0
No accelerated IMDCT transform found
No accelerated IMDCT transform found
No accelerated IMDCT transform found
No accelerated IMDCT transform found
** Message: don't know how to handle video/x-dvd-subpicture
** Message: don't know how to handle video/x-dvd-subpicture
** Message: don't know how to handle video/x-dvd-subpicture
** Message: don't know how to handle video/x-dvd-subpicture
** Message: don't know how to handle video/x-dvd-subpicture
** Message: don't know how to handle video/x-dvd-subpicture
** Message: don't know how to handle video/x-dvd-subpicture
Detaching after fork from child process 30384.
[New Thread -1214006352 (LWP 30386)]
[New Thread -1216107600 (LWP 30387)]

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread -1214006352 (LWP 30386)]
0x0015eefe in gst_alsa_timestamp_to_samples (this=0x0, time=51622222) at
gstalsa.c:2092
2092      return (snd_pcm_uframes_t) ((time * this->format->rate +
(gdb) thread apply all bt

Thread 5 (Thread -1216107600 (LWP 30387))

  • #0 __kernel_vsyscall
  • #1 pthread_cond_wait
    from /lib/libpthread.so.0
  • #2 gst_queue_get
    at gstqueue.c line 848
  • #3 gst_pad_call_get_function
    at gstpad.c line 4562
  • #4 get_group_schedule_function
    at gstoptimalscheduler.c line 1409
  • #5 gst_opt_scheduler_schedule_run_queue
    at gstoptimalscheduler.c line 1222
  • #6 gst_opt_scheduler_iterate
    at gstoptimalscheduler.c line 1331
  • #7 gst_scheduler_iterate
    at gstscheduler.c line 744
  • #8 gst_bin_iterate_func
    at gstbin.c line 1281
  • #9 gst_marshal_BOOLEAN__VOID
    at gstmarshal.c line 509
  • #10 g_cclosure_new_swap
    from /usr/lib/libgobject-2.0.so.0
  • #11 g_closure_invoke
    from /usr/lib/libgobject-2.0.so.0
  • #12 g_signal_stop_emission
    from /usr/lib/libgobject-2.0.so.0
  • #13 g_signal_emit_valist
    from /usr/lib/libgobject-2.0.so.0
  • #14 g_signal_emit
    from /usr/lib/libgobject-2.0.so.0
  • #15 gst_bin_iterate
    at gstbin.c line 1341
  • #16 gst_thread_main_loop
    at gstthread.c line 675
  • #17 g_static_private_free
    from /usr/lib/libglib-2.0.so.0
  • #18 start_thread
    from /lib/libpthread.so.0
  • #19 clone
    from /lib/libc.so.6

Thread 4 (Thread -1214006352 (LWP 30386))

  • #0 gst_alsa_timestamp_to_samples
    at gstalsa.c line 2092
  • #1 gst_alsa_sink_loop
    at gstalsasink.c line 266
  • #2 loop_group_schedule_function
    at gstoptimalscheduler.c line 1451
  • #3 gst_opt_scheduler_schedule_run_queue
    at gstoptimalscheduler.c line 1222
  • #4 gst_opt_scheduler_iterate
    at gstoptimalscheduler.c line 1331
  • #5 gst_scheduler_iterate
    at gstscheduler.c line 744
  • #6 gst_bin_iterate_func
    at gstbin.c line 1281
  • #7 gst_marshal_BOOLEAN__VOID
    at gstmarshal.c line 509
  • #8 g_cclosure_new_swap
    from /usr/lib/libgobject-2.0.so.0
  • #9 g_closure_invoke
    from /usr/lib/libgobject-2.0.so.0
  • #10 g_signal_stop_emission
    from /usr/lib/libgobject-2.0.so.0
  • #11 g_signal_emit_valist
    from /usr/lib/libgobject-2.0.so.0
  • #12 g_signal_emit
    from /usr/lib/libgobject-2.0.so.0
  • #13 gst_bin_iterate
    at gstbin.c line 1341
  • #14 gst_thread_main_loop
    at gstthread.c line 675
  • #15 g_static_private_free
    from /usr/lib/libglib-2.0.so.0
  • #16 start_thread
    from /lib/libpthread.so.0
  • #17 clone
    from /lib/libc.so.6

Thread 3 (Thread -1210467408 (LWP 30383))

  • #0 g_array_free
    from /usr/lib/libglib-2.0.so.0
  • #1 gst_structure_free
    at gststructure.c line 231
  • #2 gst_caps_free
    at gstcaps.c line 233
  • #3 gst_caps_subtract
    at gstcaps.c line 954
  • #4 gst_caps_is_subset
    at gstcaps.c line 676
  • #5 gst_pad_get_caps
    at gstpad.c line 2719
  • #6 gst_pad_get_allowed_caps
    at gstpad.c line 2906
  • #7 gst_pad_proxy_getcaps
    at gstpad.c line 2406
  • #8 gst_pad_get_caps
    at gstpad.c line 2707
  • #9 gst_pad_try_set_caps
    at gstpad.c line 1579
  • #10 gst_pad_proxy_pad_link
    at gstpad.c line 2453
  • #11 gst_queue_link_sink
    at gstqueue.c line 440
  • #12 gst_pad_link_call_link_functions
    at gstpad.c line 1343
  • #13 gst_pad_link_try
    at gstpad.c line 1380
  • #14 gst_stream_selector_link
    at gststreamselector.c line 212
  • #15 gst_pad_link_call_link_functions
    at gstpad.c line 1343
  • #16 gst_pad_link_try
    at gstpad.c line 1380
  • #17 gst_pad_set_explicit_caps
    at gstpad.c line 2556
  • #18 handle_sequence
    at gstmpeg2dec.c line 637
  • #19 gst_mpeg2dec_chain
    at gstmpeg2dec.c line 1102
  • #20 gst_pad_call_chain_function
    at gstpad.c line 4539
  • #21 gst_pad_push
    at gstpad.c line 3335
  • #22 gst_mpeg_demux_send_subbuffer
  • #23 gst_dvd_demux_send_subbuffer
    at gstdvddemux.c line 1085
  • #24 gst_mpeg_demux_parse_pes
    at gstmpegdemux.c line 989
  • #25 gst_mpeg_parse_loop
    at gstmpegparse.c line 631
  • #26 loop_group_schedule_function
    at gstoptimalscheduler.c line 1451
  • #27 gst_opt_scheduler_schedule_run_queue
    at gstoptimalscheduler.c line 1222
  • #28 gst_opt_scheduler_iterate
    at gstoptimalscheduler.c line 1331
  • #29 gst_scheduler_iterate
    at gstscheduler.c line 744
  • #30 gst_bin_iterate_func
    at gstbin.c line 1281
  • #31 gst_marshal_BOOLEAN__VOID
    at gstmarshal.c line 509
  • #32 g_cclosure_new_swap
    from /usr/lib/libgobject-2.0.so.0
  • #33 g_closure_invoke
    from /usr/lib/libgobject-2.0.so.0
  • #34 g_signal_stop_emission
    from /usr/lib/libgobject-2.0.so.0
  • #35 g_signal_emit_valist
    from /usr/lib/libgobject-2.0.so.0
  • #36 g_signal_emit
    from /usr/lib/libgobject-2.0.so.0
  • #37 gst_bin_iterate
    at gstbin.c line 1341
  • #38 gst_thread_main_loop
    at gstthread.c line 675
  • #39 g_static_private_free
    from /usr/lib/libglib-2.0.so.0
  • #40 start_thread
    from /lib/libpthread.so.0
  • #41 clone
    from /lib/libc.so.6

Thread 1 (Thread -1208461632 (LWP 30375))

  • #0 __kernel_vsyscall
  • #1 __lll_mutex_unlock_wake
    from /lib/libpthread.so.0
  • #2 _L_mutex_unlock_148
    from /lib/libpthread.so.0
  • #3 ??
  • #4 gst_thread_change_state
    at gstthread.c line 549
  • #5 gst_thread_change_state
    at gstthread.c line 549
  • #6 gst_element_set_state_func
    at gstelement.c line 2853
  • #7 gst_bin_set_state
    at gstbin.c line 950
  • #8 gst_element_set_state
    at gstelement.c line 2796
  • #9 gst_play_base_bin_change_state
    at gstplaybasebin.c line 1724
  • #10 gst_play_bin_change_state
    at gstplaybin.c line 807
  • #11 gst_element_set_state_func
    at gstelement.c line 2853
  • #12 gst_element_set_state
    at gstelement.c line 2796
  • #13 bacon_video_widget_play
    at bacon-video-widget-gst.c line 1715
  • #14 totem_action_play
    at totem.c line 307
  • #15 totem_action_set_mrl_and_play
    at totem.c line 359
  • #16 totem_action_play_media
    at totem.c line 397
  • #17 on_play_disc1_activate
    at totem.c line 1684
  • #18 g_cclosure_marshal_VOID__VOID
    from /usr/lib/libgobject-2.0.so.0
  • #19 g_closure_invoke
    from /usr/lib/libgobject-2.0.so.0
  • #20 g_signal_stop_emission
    from /usr/lib/libgobject-2.0.so.0
  • #21 g_signal_emit_valist
    from /usr/lib/libgobject-2.0.so.0
  • #22 g_signal_emit
    from /usr/lib/libgobject-2.0.so.0
  • #23 gtk_widget_activate
    from /usr/lib/libgtk-x11-2.0.so.0
  • #24 gtk_menu_shell_activate_item
    from /usr/lib/libgtk-x11-2.0.so.0
  • #25 gtk_menu_shell_activate_item
    from /usr/lib/libgtk-x11-2.0.so.0
  • #26 gtk_menu_reorder_child
    from /usr/lib/libgtk-x11-2.0.so.0
  • #27 gtk_marshal_VOID__UINT_STRING
    from /usr/lib/libgtk-x11-2.0.so.0
  • #28 g_cclosure_new_swap
    from /usr/lib/libgobject-2.0.so.0
  • #29 g_closure_invoke
    from /usr/lib/libgobject-2.0.so.0
  • #30 g_signal_stop_emission
    from /usr/lib/libgobject-2.0.so.0
  • #31 g_signal_emit_valist
    from /usr/lib/libgobject-2.0.so.0
  • #32 g_signal_emit
    from /usr/lib/libgobject-2.0.so.0
  • #33 gtk_widget_activate
    from /usr/lib/libgtk-x11-2.0.so.0
  • #34 gtk_propagate_event
    from /usr/lib/libgtk-x11-2.0.so.0
  • #35 gtk_main_do_event
    from /usr/lib/libgtk-x11-2.0.so.0
  • #36 gdk_screen_get_setting
    from /usr/lib/libgdk-x11-2.0.so.0
  • #37 g_main_context_dispatch
    from /usr/lib/libglib-2.0.so.0
  • #38 g_main_context_check
    from /usr/lib/libglib-2.0.so.0
  • #39 g_main_loop_run
    from /usr/lib/libglib-2.0.so.0
  • #40 gtk_main
    from /usr/lib/libgtk-x11-2.0.so.0
  • #41 main
    at totem.c line 3621

Comment 1 Thorsten Leemhuis 2005-10-29 11:14:37 UTC
Forgot: Works fine when recompiling and installing 
http://thomas.apestaart.org/download/pkg/fedora-4-i386-livna/gstreamer-plugins-extra-0.8.10-0.lvn.1/
Comment 2 Andy Wingo 2006-01-13 11:54:59 UTC
Soooo, hm. This is really deep voodoo. Unfortunately 0.8 isn't really maintained any more, so no one will look at this. OTOH 0.10 doesn't support DVD playback yet. I suggest you stick with 0.8.10 for a while. Sorry, I know it's a bad situation. I'll leave this open until there is some way to play DVD's with 0.10.
Comment 3 Ronald Bultje 2006-02-01 13:59:18 UTC
Ugh, this is pathetic.

Thorsten, I'm hoping you're still interested in fixing this bug; can you please give me version numbers of the other gstreamer/gst-plugin modules? The line numbers don't match what's in alsa in 0.8.10/11 for alsa, which makes me believe you're using an older alsasink, which may cause this bug (alsasink has had some fair amonunt of updates). It's hard to tell what did this otherwise, since DVD menu support was added in 0.8.11, and so the codepath in the two is completely different (dvdreadsrc in the one, dvdnavsrc in the other; addition of fillers, etc.). Other modules involved in DVD playback in the above package (mpeg2dec, a52dec, etc.) didn't change between releases.

If your alsasink is not 0.8.11, then please update alsasink to 0.8.11, or if you have free time, please try installing 0.8 CVS (not required though).
Comment 4 Thorsten Leemhuis 2006-02-01 17:07:40 UTC
(In reply to comment #3)
/me reads your blog and wonders if that's fair. If distributions are on a different schedule that happens -- one time Distribtuion A is the better one and more up2date, another time it's Distribution B :-| And in Fedora you at least get updated kernel with updated or new drivers for new hardware -- you don't get those for Suse or Ubuntu ;-)

> Ugh, this is pathetic.
:-)

> Thorsten, I'm hoping you're still interested in fixing this bug;
> can you please
> give me version numbers of the other gstreamer/gst-plugin modules?

The current official ones for FC4:
gstreamer               i386       0.8.10-1
gstreamer-plugins       i386       0.8.8-9

> [...]
> If your alsasink is not 0.8.11, then please update alsasink to 0.8.11, or if
> you have free time, please try installing 0.8 CVS (not required though).

I rebuild and installed gstreamer-plugins 0.8.11 -> worked fine
Comment 5 Luis Menina 2006-02-01 21:09:36 UTC
Fedora's not the only one...
Mandriva 2006 ships gstreamer 0.8.11, and it will remain until September 2006...
Totem (1.0.4) doesn't crash however, since it was built with the xine backend and not gstreamer one...
Comment 6 Ronald Bultje 2006-02-02 05:47:06 UTC
Fedora is a community distro; the latest version should ship/contain the latest software. The stuff on your system is ~1yr old.

Closing bug, since it's not a GStreamer bug.
Comment 7 Thorsten Leemhuis 2006-02-02 10:29:49 UTC
Ronald, okay, it's NOTABUG for gstreamer, I can live with that and agree with it. But your explanation IMHO is quite "interesting":

(In reply to comment #6)
> Fedora is a community distro; the latest version should ship/contain the latest
> software. The stuff on your system is ~1yr old.

Debian is a community distro, too. Should it ship/contain only the latest software in the stable version because of that [or even update to it in the latest stable release, as you seem to indicate]? [No, of course it should not.]
Comment 8 Ronald Bultje 2006-02-03 03:25:16 UTC
Possibly... I don't think Debian stable has the same purpose as FC, though... Anyway, let's not take it further, Fedora has an old GStreamer which causes DVDs to not play, let's leave it at that.