GNOME Bugzilla – Bug 341706
when open an another movie file during play movie, totem freeze
Last modified: 2006-06-09 16:48:27 UTC
Steps to reproduce: 1. open a movie file with subtitle. 2. play a moment 3. open an another movie file with subtitle. Stack trace: (gdb) thread 1 [Switching to thread 1 (Thread -1208162640 (LWP 16283))]#0 0x00234402 in ?? () (gdb) bt
+ Trace 68211
Other information: It is not occurred everytime, but often. After I set GST_DEBUG=bin:4, I found this message. DEBUG (0x8e14080 - 0:01:57.237730000) bin(15191) gstbin.c(1792):gst_bin_change_state_func:<subtitle-bin> clearing all cached messages DEBUG (0x8e14080 - 0:01:57.237796000) bin(15191) gstbin.c(1650):gst_bin_sort_iterator_resync:<subtitle-bin> resync DEBUG (0x8e14080 - 0:01:57.237859000) bin(15191) gstbin.c(1559):update_degree:<subtitle-bin> change element gnomevfssrc22, degree 0->1, linked to subtitle-decoder DEBUG (0x8e14080 - 0:01:57.237923000) bin(15191) gstbin.c(1579):update_degree:<subtitle-bin> element gnomevfssrc22 not linked on any sinkpads DEBUG (0x8e14080 - 0:01:57.237986000) bin(15191) gstbin.c(1623):gst_bin_sort_iterator_next:<subtitle-bin> queue empty, next best: subtitle-decoder DEBUG (0x8e14080 - 0:01:57.238048000) bin(15191) gstbin.c(1637):gst_bin_sort_iterator_next:<subtitle-bin> queue head gives subtitle-decoder DEBUG (0x8e14080 - 0:01:57.238111000) bin(15191) gstbin.c(1559):update_degree:<subtitle-bin> change element gnomevfssrc22, degree 1->0, linked to subtitle-decoder DEBUG (0x8e14080 - 0:01:57.238173000) bin(15191) gstbin.c(1484):add_to_queue:<subtitle-bin> gnomevfssrc22 add to queue DEBUG (0x8e14080 - 0:01:57.238238000) bin(15191) gstbin.c(1792):gst_bin_change_state_func:<subtitle-decoder> clearing all cached messages DEBUG (0x8e14080 - 0:01:57.238301000) bin(15191) gstbin.c(1650):gst_bin_sort_iterator_resync:<subtitle-decoder> resync DEBUG (0x8e14080 - 0:01:57.238363000) bin(15191) gstbin.c(1579):update_degree:<subtitle-decoder> element fakesink not linked on any sinkpads DEBUG (0x8e14080 - 0:01:57.238427000) bin(15191) gstbin.c(1579):update_degree:<subtitle-decoder> element typefind not linked on any sinkpads DEBUG (0x8e14080 - 0:01:57.238490000) bin(15191) gstbin.c(1623):gst_bin_sort_iterator_next:<subtitle-decoder> queue empty, next best: fakesink DEBUG (0x8e14080 - 0:01:57.238552000) bin(15191) gstbin.c(1637):gst_bin_sort_iterator_next:<subtitle-decoder> queue head gives fakesink DEBUG (0x8e14080 - 0:01:57.238614000) bin(15191) gstbin.c(1579):update_degree:<subtitle-decoder> element fakesink not linked on any sinkpads DEBUG (0x8e14080 - 0:01:57.238687000) bin(15191) gstbin.c(2026):gst_bin_handle_message_func:<subtitle-decoder> [msg 0x9546050] handling child message of type state-changed DEBUG (0x8e14080 - 0:01:57.238750000) bin(15191) gstbin.c(2200):gst_bin_handle_message_func:<subtitle-decoder> posting message upward DEBUG (0x8e14080 - 0:01:57.238812000) bin(15191) gstbin.c(2026):gst_bin_handle_message_func:<subtitle-bin> [msg 0x9546050] handling child message of type state-changed DEBUG (0x8e14080 - 0:01:57.238873000) bin(15191) gstbin.c(2200):gst_bin_handle_message_func:<subtitle-bin> posting message upward DEBUG (0x8e14080 - 0:01:57.238939000) bin(15191) gstbin.c(1623):gst_bin_sort_iterator_next:<subtitle-decoder> queue empty, next best: typefind DEBUG (0x8e14080 - 0:01:57.239002000) bin(15191) gstbin.c(1637):gst_bin_sort_iterator_next:<subtitle-decoder> queue head gives typefind DEBUG (0x8e14080 - 0:01:57.239065000) bin(15191) gstbin.c(1579):update_degree:<subtitle-decoder> element typefind not linked on any sinkpads DEBUG (0x8e14080 - 0:01:57.239135000) bin(15191) gstbin.c(2026):gst_bin_handle_message_func:<subtitle-decoder> [msg 0x9faff20] handling child message of type state-changed DEBUG (0x8e14080 - 0:01:57.239198000) bin(15191) gstbin.c(2200):gst_bin_handle_message_func:<subtitle-decoder> posting message upward DEBUG (0x8e14080 - 0:01:57.239260000) bin(15191) gstbin.c(2026):gst_bin_handle_message_func:<subtitle-bin> [msg 0x9faff20] handling child message of type state-changed DEBUG (0x8e14080 - 0:01:57.239322000) bin(15191) gstbin.c(2200):gst_bin_handle_message_func:<subtitle-bin> posting message upward DEBUG (0x8e14080 - 0:01:57.239388000) bin(15191) gstbin.c(1628):gst_bin_sort_iterator_next:<subtitle-decoder> queue empty, elements exhausted DEBUG (0x8e14080 - 0:01:57.239450000) bin(15191) gstbin.c(1667):gst_bin_sort_iterator_free:<subtitle-decoder> free DEBUG (0x8e14080 - 0:01:57.239520000) bin(15191) gstbin.c(2026):gst_bin_handle_message_func:<subtitle-bin> [msg 0xa092f00] handling child message of type state-changed DEBUG (0x8e14080 - 0:01:57.239582000) bin(15191) gstbin.c(2200):gst_bin_handle_message_func:<subtitle-bin> posting message upward DEBUG (0x8e14080 - 0:01:57.239647000) bin(15191) gstbin.c(1637):gst_bin_sort_iterator_next:<subtitle-bin> queue head gives gnomevfssrc22 DEBUG (0x8e14080 - 0:01:57.239708000) bin(15191) gstbin.c(1579):update_degree:<subtitle-bin> element gnomevfssrc22 not linked on any sinkpads DEBUG (0x8e14080 - 0:01:57.239779000) bin(15191) gstbin.c(2026):gst_bin_handle_message_func:<subtitle-bin> [msg 0x9f80918] handling child message of type state-changed DEBUG (0x8e14080 - 0:01:57.239841000) bin(15191) gstbin.c(2200):gst_bin_handle_message_func:<subtitle-bin> posting message upward DEBUG (0x8e14080 - 0:01:57.239906000) bin(15191) gstbin.c(1628):gst_bin_sort_iterator_next:<subtitle-bin> queue empty, elements exhausted DEBUG (0x8e14080 - 0:01:57.239968000) bin(15191) gstbin.c(1667):gst_bin_sort_iterator_free:<subtitle-bin> free DEBUG (0x8e14080 - 0:01:57.240038000) bin(15191) gstbin.c(1785):gst_bin_change_state_func:<subtitle-bin> clearing EOS elements DEBUG (0x8e14080 - 0:01:57.240101000) bin(15191) gstbin.c(1650):gst_bin_sort_iterator_resync:<subtitle-bin> resync DEBUG (0x8e14080 - 0:01:57.240164000) bin(15191) gstbin.c(1559):update_degree:<subtitle-bin> change element gnomevfssrc22, degree 0->1, linked to subtitle-decoder DEBUG (0x8e14080 - 0:01:57.240229000) bin(15191) gstbin.c(1579):update_degree:<subtitle-bin> element gnomevfssrc22 not linked on any sinkpads DEBUG (0x8e14080 - 0:01:57.240291000) bin(15191) gstbin.c(1623):gst_bin_sort_iterator_next:<subtitle-bin> queue empty, next best: subtitle-decoder DEBUG (0x8e14080 - 0:01:57.240353000) bin(15191) gstbin.c(1637):gst_bin_sort_iterator_next:<subtitle-bin> queue head gives subtitle-decoder DEBUG (0x8e14080 - 0:01:57.240416000) bin(15191) gstbin.c(1559):update_degree:<subtitle-bin> change element gnomevfssrc22, degree 1->0, linked to subtitle-decoder DEBUG (0x8e14080 - 0:01:57.265804000) bin(15191) gstbin.c(1484):add_to_queue:<subtitle-bin> gnomevfssrc22 add to queue DEBUG (0x8e14080 - 0:01:57.265943000) bin(15191) gstbin.c(1785):gst_bin_change_state_func:<subtitle-decoder> clearing EOS elements DEBUG (0x8e14080 - 0:01:57.266016000) bin(15191) gstbin.c(1650):gst_bin_sort_iterator_resync:<subtitle-decoder> resync DEBUG (0x8e14080 - 0:01:57.266082000) bin(15191) gstbin.c(1579):update_degree:<subtitle-decoder> element fakesink not linked on any sinkpads DEBUG (0x8e14080 - 0:01:57.266150000) bin(15191) gstbin.c(1579):update_degree:<subtitle-decoder> element typefind not linked on any sinkpads DEBUG (0x8e14080 - 0:01:57.266213000) bin(15191) gstbin.c(1623):gst_bin_sort_iterator_next:<subtitle-decoder> queue empty, next best: fakesink DEBUG (0x8e14080 - 0:01:57.266277000) bin(15191) gstbin.c(1637):gst_bin_sort_iterator_next:<subtitle-decoder> queue head gives fakesink DEBUG (0x8e14080 - 0:01:57.266338000) bin(15191) gstbin.c(1579):update_degree:<subtitle-decoder> element fakesink not linked on any sinkpads DEBUG (0x8e14080 - 0:01:57.266428000) bin(15191) gstbin.c(1623):gst_bin_sort_iterator_next:<subtitle-decoder> queue empty, next best: typefind DEBUG (0x8e14080 - 0:01:57.266491000) bin(15191) gstbin.c(1637):gst_bin_sort_iterator_next:<subtitle-decoder> queue head gives typefind DEBUG (0x8e14080 - 0:01:57.266555000) bin(15191) gstbin.c(1579):update_degree:<subtitle-decoder> element typefind not linked on any sinkpads DEBUG (0x8e14080 - 0:01:57.270229000) bin(15191) gstbin.c(2026):gst_bin_handle_message_func:<subtitle-decoder> [msg 0x9f80a58] handling child message of type state-changed DEBUG (0x8e14080 - 0:01:57.270381000) bin(15191) gstbin.c(2200):gst_bin_handle_message_func:<subtitle-decoder> posting message upward DEBUG (0x8e14080 - 0:01:57.270447000) bin(15191) gstbin.c(2026):gst_bin_handle_message_func:<subtitle-bin> [msg 0x9f80a58] handling child message of type state-changed DEBUG (0x8e14080 - 0:01:57.270510000) bin(15191) gstbin.c(2200):gst_bin_handle_message_func:<subtitle-bin> posting message upward DEBUG (0x8e14080 - 0:01:57.271009000) bin(15191) gstbin.c(2026):gst_bin_handle_message_func:<subtitle-bin> [msg 0x9559610] handling child message of type state-changed DEBUG (0x8e14080 - 0:01:57.271083000) bin(15191) gstbin.c(2200):gst_bin_handle_message_func:<subtitle-bin> posting message upward DEBUG (0x8e14080 - 0:01:57.271165000) bin(15191) gstbin.c(2026):gst_bin_handle_message_func:<subtitle-bin> [msg 0x9559250] handling child message of type state-changed DEBUG (0x8e14080 - 0:01:57.271229000) bin(15191) gstbin.c(2200):gst_bin_handle_message_func:<subtitle-bin> posting message upward DEBUG (0x8e14080 - 0:01:57.271302000) bin(15191) gstbin.c(2026):gst_bin_handle_message_func:<subtitle-bin> [msg 0x9559210] handling child message of type state-changed DEBUG (0x8e14080 - 0:01:57.271367000) bin(15191) gstbin.c(2200):gst_bin_handle_message_func:<subtitle-bin> posting message upward DEBUG (0x8e14080 - 0:01:57.271448000) bin(15191) gstbin.c(2026):gst_bin_handle_message_func:<subtitle-bin> [msg 0xa1c2360] handling child message of type state-changed DEBUG (0x8e14080 - 0:01:57.271512000) bin(15191) gstbin.c(2200):gst_bin_handle_message_func:<subtitle-bin> posting message upward DEBUG (0x8e14080 - 0:01:57.271731000) bin(15191) gstbin.c(2026):gst_bin_handle_message_func:<subtitle-decoder> [msg 0xa1c2320] handling child message of type state-changed DEBUG (0x8e14080 - 0:01:57.271799000) bin(15191) gstbin.c(2200):gst_bin_handle_message_func:<subtitle-decoder> posting message upward DEBUG (0x8e14080 - 0:01:57.271862000) bin(15191) gstbin.c(2026):gst_bin_handle_message_func:<subtitle-bin> [msg 0xa1c2320] handling child message of type state-changed DEBUG (0x8e14080 - 0:01:57.271925000) bin(15191) gstbin.c(2200):gst_bin_handle_message_func:<subtitle-bin> posting message upward DEBUG (0x8e14080 - 0:01:57.272010000) bin(15191) gstbin.c(2026):gst_bin_handle_message_func:<subtitle-decoder> [msg 0xa1c22e0] handling child message of type state-changed DEBUG (0x8e14080 - 0:01:57.272074000) bin(15191) gstbin.c(2200):gst_bin_handle_message_func:<subtitle-decoder> posting message upward DEBUG (0x8e14080 - 0:01:57.272137000) bin(15191) gstbin.c(2026):gst_bin_handle_message_func:<subtitle-bin> [msg 0xa1c22e0] handling child message of type state-changed DEBUG (0x8e14080 - 0:01:57.272199000) bin(15191) gstbin.c(2200):gst_bin_handle_message_func:<subtitle-bin> posting message upward DEBUG (0x8e14080 - 0:01:57.272268000) bin(15191) gstbin.c(1650):gst_bin_sort_iterator_resync:<subtitle-decoder> resync DEBUG (0x8e14080 - 0:01:57.272335000) bin(15191) gstbin.c(1559):update_degree:<subtitle-decoder> change element typefind, degree 0->1, linked to subparse11 DEBUG (0x8e14080 - 0:01:57.272400000) bin(15191) gstbin.c(1579):update_degree:<subtitle-decoder> element fakesink not linked on any sinkpads DEBUG (0x8e14080 - 0:01:57.272465000) bin(15191) gstbin.c(1579):update_degree:<subtitle-decoder> element typefind not linked on any sinkpads DEBUG (0x8e14080 - 0:01:57.272721000) bin(15191) gstbin.c(1623):gst_bin_sort_iterator_next:<subtitle-decoder> queue empty, next best: subparse11 DEBUG (0x8e14080 - 0:01:57.272785000) bin(15191) gstbin.c(1637):gst_bin_sort_iterator_next:<subtitle-decoder> queue head gives subparse11 DEBUG (0x8e14080 - 0:01:57.272848000) bin(15191) gstbin.c(1559):update_degree:<subtitle-decoder> change element typefind, degree 1->0, linked to subparse11 DEBUG (0x8e14080 - 0:01:57.272911000) bin(15191) gstbin.c(1484):add_to_queue:<subtitle-decoder> typefind add to queue DEBUG (0x8e14080 - 0:01:57.272978000) bin(15191) gstbin.c(1637):gst_bin_sort_iterator_next:<subtitle-decoder> queue head gives typefind DEBUG (0x8e14080 - 0:01:57.273041000) bin(15191) gstbin.c(1579):update_degree:<subtitle-decoder> element typefind not linked on any sinkpads DEBUG (0x8e14080 - 0:01:57.273108000) bin(15191) gstbin.c(1623):gst_bin_sort_iterator_next:<subtitle-decoder> queue empty, next best: fakesink DEBUG (0x8e14080 - 0:01:57.273171000) bin(15191) gstbin.c(1637):gst_bin_sort_iterator_next:<subtitle-decoder> queue head gives fakesink DEBUG (0x8e14080 - 0:01:57.273232000) bin(15191) gstbin.c(1579):update_degree:<subtitle-decoder> element fakesink not linked on any sinkpads DEBUG (0x8e14080 - 0:01:57.273297000) bin(15191) gstbin.c(1628):gst_bin_sort_iterator_next:<subtitle-decoder> queue empty, elements exhausted DEBUG (0x8e14080 - 0:01:57.273370000) bin(15191) gstbin.c(1667):gst_bin_sort_iterator_free:<subtitle-decoder> free DEBUG (0x8e14080 - 0:01:57.273435000) bin(15191) gstbin.c(1650):gst_bin_sort_iterator_resync:<subtitle-bin> resync DEBUG (0x8e14080 - 0:01:57.273500000) bin(15191) gstbin.c(1559):update_degree:<subtitle-bin> change element selector_text_src0, degree 0->1, linked to preroll_text_src0 DEBUG (0x8e14080 - 0:01:57.273565000) bin(15191) gstbin.c(1559):update_degree:<subtitle-bin> change element subtitle-decoder, degree 0->1, linked to selector_text_src0 DEBUG (0x8e14080 - 0:01:57.273632000) bin(15191) gstbin.c(1559):update_degree:<subtitle-bin> change element gnomevfssrc22, degree 0->1, linked to subtitle-decoder DEBUG (0x8e14080 - 0:01:57.273696000) bin(15191) gstbin.c(1579):update_degree:<subtitle-bin> element gnomevfssrc22 not linked on any sinkpads DEBUG (0x8e14080 - 0:01:57.273759000) bin(15191) gstbin.c(1623):gst_bin_sort_iterator_next:<subtitle-bin> queue empty, next best: preroll_text_src0 DEBUG (0x8e14080 - 0:01:57.273822000) bin(15191) gstbin.c(1637):gst_bin_sort_iterator_next:<subtitle-bin> queue head gives preroll_text_src0 DEBUG (0x8e14080 - 0:01:57.273885000) bin(15191) gstbin.c(1559):update_degree:<subtitle-bin> change element selector_text_src0, degree 1->0, linked to preroll_text_src0 DEBUG (0x8e14080 - 0:01:57.273948000) bin(15191) gstbin.c(1484):add_to_queue:<subtitle-bin> selector_text_src0 add to queue DEBUG (0x8e14080 - 0:01:57.274015000) bin(15191) gstbin.c(1637):gst_bin_sort_iterator_next:<subtitle-bin> queue head gives selector_text_src0 DEBUG (0x8e14080 - 0:01:57.274078000) bin(15191) gstbin.c(1559):update_degree:<subtitle-bin> change element subtitle-decoder, degree 1->0, linked to selector_text_src0 DEBUG (0x8e14080 - 0:01:57.274140000) bin(15191) gstbin.c(1484):add_to_queue:<subtitle-bin> subtitle-decoder add to queue DEBUG (0x8e14080 - 0:01:57.274205000) bin(15191) gstbin.c(1637):gst_bin_sort_iterator_next:<subtitle-bin> queue head gives subtitle-decoder DEBUG (0x8e14080 - 0:01:57.274268000) bin(15191) gstbin.c(1559):update_degree:<subtitle-bin> change element gnomevfssrc22, degree 1->0, linked to subtitle-decoder DEBUG (0x8e14080 - 0:01:57.274331000) bin(15191) gstbin.c(1484):add_to_queue:<subtitle-bin> gnomevfssrc22 add to queue DEBUG (0x8e14080 - 0:01:57.274395000) bin(15191) gstbin.c(1637):gst_bin_sort_iterator_next:<subtitle-bin> queue head gives gnomevfssrc22 DEBUG (0x8e14080 - 0:01:57.274456000) bin(15191) gstbin.c(1579):update_degree:<subtitle-bin> element gnomevfssrc22 not linked on any sinkpads DEBUG (0xa5dcbd8 - 0:01:57.274823000) bin(15191) gstbin.c(2026):gst_bin_handle_message_func:<subtitle-bin> [msg 0x9144e18] handling child message of type state-dirty DEBUG (0xa5dcbd8 - 0:01:57.274849000) bin(15191) gstbin.c(2054):gst_bin_handle_message_func:<subtitle-bin> subtitle-decoder gave state dirty DEBUG (0xa5dcbd8 - 0:01:57.274869000) bin(15191) gstbin.c(2058):gst_bin_handle_message_func:<subtitle-bin> marking dirty DEBUG (0xa5dcbd8 - 0:01:57.274890000) bin(15191) gstbin.c(2070):gst_bin_handle_message_func:<subtitle-bin> pushing recalc on thread pool DEBUG (0x8e14080 - 0:01:57.299453000) bin(15191) gstbin.c(2026):gst_bin_handle_message_func:<subtitle-bin> [msg 0xa1c22e0] handling child message of type state-changed DEBUG (0x8e14080 - 0:01:57.299582000) bin(15191) gstbin.c(2200):gst_bin_handle_message_func:<subtitle-bin> posting message upward DEBUG (0x8e14080 - 0:01:57.299664000) bin(15191) gstbin.c(1628):gst_bin_sort_iterator_next:<subtitle-bin> queue empty, elements exhausted DEBUG (0x8e14080 - 0:01:57.299735000) bin(15191) gstbin.c(1667):gst_bin_sort_iterator_free:<subtitle-bin> free DEBUG (0xa091d98 - 0:01:57.299828000) bin(15191) gstbin.c(1956):gst_bin_recalc_func:<subtitle-bin> doing state recalc DEBUG (0xa091d98 - 0:01:57.299922000) bin(15191) gstbin.c(2026):gst_bin_handle_message_func:<subtitle-bin> [msg 0xa1c2220] handling child message of type state-changed DEBUG (0xa091d98 - 0:01:57.299986000) bin(15191) gstbin.c(2200):gst_bin_handle_message_func:<subtitle-bin> posting message upward DEBUG (0xa091d98 - 0:01:57.300060000) bin(15191) gstbin.c(1960):gst_bin_recalc_func:<subtitle-bin> state recalc done In above messages, It seems subtitle-decoder tried link to fakesink.
I haven't been able to reproduce this yet. Could you attach a (gzipped) version of your complete log please? (Please don't paste logs into comments, they are very hard to read that way, always attach them separately - thanks!).
Created attachment 65804 [details] full log when freeze this is full log when totem freeze.
I don't know that is related with this bug, but It doesn't happen after commented GROUP_WAIT(play_base_bin); at gst-plugins-base/gst/playback/gstplaybasebin.c:1335 also bug 339942 has gone too.
Created attachment 66595 [details] [review] don't wait group lock after apply this patch, totem doesn't freeze.
update playbin element from cvs, totem doesn't freeze, too. It might be related with bug 343397.
> update playbin element from cvs, totem doesn't freeze, too. > It might be related with bug 343397. Seems likely they're the same problem - guess we can close this then :) *** This bug has been marked as a duplicate of 343397 ***