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 327085 - [0.10] playing da vinci code trailer redirect hangs
[0.10] playing da vinci code trailer redirect hangs
Status: RESOLVED FIXED
Product: totem
Classification: Core
Component: GStreamer backend
unspecified
Other Linux
: Normal normal
: ---
Assigned To: Maintainer alias for GStreamer component of Totem
Maintainer alias for GStreamer component of Totem
Depends on:
Blocks:
 
 
Reported: 2006-01-15 15:59 UTC by Ronald Bultje
Modified: 2006-02-27 20:03 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Ronald Bultje 2006-01-15 15:59:45 UTC
File attached. It hangs with 100% cpu use.

(gdb) thread apply all bt

Thread 1 (Thread -1208490320 (LWP 23969))

  • #0 gst_bin_remove_func
    at gstbin.c line 839
  • #1 gst_bin_remove
    at gstbin.c line 975
  • #2 gst_bin_dispose
    at gstbin.c line 389
  • #3 gst_decode_bin_dispose
    at gstdecodebin.c line 354
  • #4 g_object_unref
    from /usr/lib/libgobject-2.0.so.0
  • #5 gst_object_unref
    at gstobject.c line 402
  • #6 unlinked
    at gstdecodebin.c line 1050
  • #7 g_cclosure_marshal_VOID__OBJECT
    from /usr/lib/libgobject-2.0.so.0
  • #8 g_closure_invoke
    from /usr/lib/libgobject-2.0.so.0
  • #9 g_signal_stop_emission
    from /usr/lib/libgobject-2.0.so.0
  • #10 g_signal_emit_valist
    from /usr/lib/libgobject-2.0.so.0
  • #11 g_signal_emit
    from /usr/lib/libgobject-2.0.so.0
  • #12 gst_pad_unlink
    at gstpad.c line 1444
  • #13 unlink_pads
    at gstbin.c line 673
  • #14 foreach_fold_func
    at gstiterator.c line 528
  • #15 gst_iterator_fold
    at gstiterator.c line 503
  • #16 gst_iterator_foreach
    at gstiterator.c line 554
  • #17 gst_bin_remove_func
    at gstbin.c line 859
  • #18 gst_bin_remove
    at gstbin.c line 975
  • #19 gst_bin_dispose
    at gstbin.c line 389
  • #20 gst_decode_bin_dispose
    at gstdecodebin.c line 354
  • #21 g_object_unref
    from /usr/lib/libgobject-2.0.so.0
  • #22 gst_object_unref
    at gstobject.c line 402
  • #23 gst_message_finalize
    at gstmessage.c line 213
  • #24 gst_mini_object_unref
  • #25 gst_bus_source_dispatch
    at gstbus.c line 605
  • #26 g_main_context_dispatch
    from /usr/lib/libglib-2.0.so.0
  • #27 g_main_context_check
    from /usr/lib/libglib-2.0.so.0
  • #28 g_main_loop_run
    from /usr/lib/libglib-2.0.so.0
  • #29 gtk_main
    from /usr/lib/libgtk-x11-2.0.so.0
  • #30 main
    at totem.c line 3536

Comment 1 Edward Hervey 2006-01-17 09:47:07 UTC
could you attach the file or give a url ?
Comment 2 Bastien Nocera 2006-01-17 09:51:44 UTC
Most likely the one at:
http://www.apple.com/trailers/sony_pictures/da_vinci_code/hd/
Comment 3 Christian Fredrik Kalager Schaller 2006-01-26 11:53:35 UTC
Totem Mozilla fails with :

"GstQTDemux cannot work in push mode. The operation is not supported with this source element or protocol. It also spews a few extra fd: error messages."

Downloading any of the clips like:
http://movies.apple.com/movies/sony_pictures/da_vinci_code/da_vinci_code-tsr2_h320.mov

and playing them locally cause a segfault.
Comment 4 Christian Fredrik Kalager Schaller 2006-01-26 11:54:49 UTC
Noticed ronald has a backtrace for the segfault in 327088.
Comment 5 Luca Ferretti 2006-02-03 15:18:24 UTC
Christian, using latest (compiled this morning from HEAD) totem and gst-0.10 I'm able to locally play the movie with no crash.

Just, running in terminal, those ERROR messages form qtdemux

betatester@redrum:~$ totem da_vinci_code-tsr2_h320.mov
ERROR (0x839a790 - 0:00:02.212580000)              qtdemux(17548) qtdemux.c(1109):qtdemux_parse: atom length too short (0 < 8)
ERROR (0x839a790 - 0:00:02.213248000)              qtdemux(17548) qtdemux.c(1178):qtdemux_parse: length too long (1024 > 131)
ERROR (0x839a790 - 0:00:02.213355000)              qtdemux(17548) qtdemux.c(1109):qtdemux_parse: atom length too short (0 < 8)
ERROR (0x839a790 - 0:00:02.213470000)              qtdemux(17548) qtdemux.c(1109):qtdemux_parse: atom length too short (0 < 8)
ERROR (0x839a790 - 0:00:02.213558000)              qtdemux(17548) qtdemux.c(1113):qtdemux_parse: atom length too long (1114112 > 21)
ERROR (0x839a790 - 0:00:02.213643000)              qtdemux(17548) qtdemux.c(1109):qtdemux_parse: atom length too short (0 < 8)

Of course the push mode error is still here, but is should be related to neon, not qtdemux :-(
Comment 6 Christian Fredrik Kalager Schaller 2006-02-03 16:42:00 UTC
Works for me too now, closing as fixed. The push mode error is correct though, qtdemux do not support push-mode currently, only pull. 
Comment 7 Bastien Nocera 2006-02-03 18:12:51 UTC
"GstQTDemux cannot work in push mode. The operation is not supported with this
source element or protocol."

Could we get a better error message than this horror as well? :)
Comment 8 Tim-Philipp Müller 2006-02-03 18:32:31 UTC
I've committed a better error message earlier today (see bug #328830). There are plans to make qtdemux operate push-based as well, but I don't know when that will happen.



Comment 9 Christian Fredrik Kalager Schaller 2006-02-03 18:38:37 UTC
Is there any functionality in totem to define different 'streaming' behaviour for different formats? so that for non-streaming format totem will download it first before starting to play (or in the case of .mov files, download parts of them first like the quicktime player does). 
Comment 10 Tim-Philipp Müller 2006-02-27 17:03:13 UTC
QtDemux can work in streaming mode now.

This works for me in firefox:
 - Go http://www.apple.com/trailers/sony_pictures/da_vinci_code/hd/
 - click on 'Trailer'
 - click on 'Small', 'Medium' or 'Large'
 - movie begins to play.

Comment 11 Luca Ferretti 2006-02-27 19:27:43 UTC
(In reply to comment #10)
> QtDemux can work in streaming mode now.
> 
> This works for me in firefox:
>  - Go http://www.apple.com/trailers/sony_pictures/da_vinci_code/hd/
>  - click on 'Trailer'
>  - click on 'Small', 'Medium' or 'Large'
>  - movie begins to play.
> 

Not for me in Epiphany :-( "Totem could not play "fd://0" message
Comment 12 Tim-Philipp Müller 2006-02-27 19:36:47 UTC
Yes, sorry, it only works with a typefinding fix I have locally for that bug of yours (bug #331701). Will commit that to GStreamer core CVS in a bit. (The original issue of this bug has been resolved though, that's why I've closed it already).

Comment 13 Tim-Philipp Müller 2006-02-27 20:03:36 UTC
The typefinding fix is in GStreamer core now as well:

2006-02-27  Tim-Philipp Müller  <tim at centricular dot net>

        * plugins/elements/gsttypefindelement.c:
        (gst_type_find_element_handle_event):
          When we get an EOS event and have not found a type yet
          (most likely because we had not yet accumulated
          TYPE_FIND_MIN_SIZE of data yet), try to determine the
          type given the data we have so far. Fixes typefinding
          for very short streams again, most notably quicktime
          redirections as used on Apple's trailer site (#331701).