! Please note that this is a snapshot of our old Bugzilla server, which is read only since May 29, 2020. Please go to gitlab.xfce.org for our new server !
Subtitles = freeze
Status:
RESOLVED: FIXED

Comments

Description mbresson 2012-08-10 12:53:29 CEST
I'm running Parole 0.3.0 on Archlinux.

When I play a video and there is a .srt file with a different name, I can't select this srt file in Parole because the option "Select text subtitles" cannot be clicked.

If I rename the .srt file to have the same name as the video, parole will load it automatically and play the video with the subtitles, but it will freeze as soon as it is launched: the video continue being played but I cannot click the menu and the buttons, the interface is not responding.

It took two screenshots to show you better:

http://imageshack.us/f/822/parole1.png/
when "Select text subtitles" cannot be clicked

http://imageshack.us/f/808/parole2.png/
when Parole is frozen
Comment 1 Sean Davis editbugs 2012-08-10 12:56:58 CEST
Hello,

The "Select Subtitles" menu item is always disabled presently.  The functionality to choose an external subtitle is not yet available.

As for the interface freezing, that is a problem.  I'll investigate.
Comment 2 mbresson 2012-08-10 13:01:57 CEST
(In reply to comment #1)
> Hello,
> 
> The "Select Subtitles" menu item is always disabled presently.  The
> functionality to choose an external subtitle is not yet available.
> 
> As for the interface freezing, that is a problem.  I'll investigate.

Thank you, tell me if you need more information.
Comment 3 Sean Davis editbugs 2012-08-10 19:07:24 CEST
Hello,

I'm currently running a fully-updated Arch Linux with just the XFCE and gstreamer dependencies and am seeing no crash with external subtitles.  Please try the latest git master and see if it works better for you.

Thanks,
Sean
Comment 4 mbresson 2012-08-10 20:07:55 CEST
(In reply to comment #3)
> Hello,
> 
> I'm currently running a fully-updated Arch Linux with just the XFCE and
> gstreamer dependencies and am seeing no crash with external subtitles. 
> Please try the latest git master and see if it works better for you.
> 
> Thanks,
> Sean

Hello,
I have tried the latest git master from git://git.xfce.org/apps/parole and I have the same problem with it.
Comment 5 Tijl Coosemans 2012-08-19 20:53:19 CEST
I have the same problem with 0.3.0 on FreeBSD. To be clear, the program doesn't crash. The interface just locks up while the video continues to play. I have included a backtrace of the thread that seems dead-locked (libthr is the pthread library on FreeBSD):

(gdb) thr 11
[Switching to thread 11 (Thread 2b003080 (LWP 100706))]
#0  0x2953a04f in ?? () from /lib/libthr.so.3
(gdb) bt
#0  0x2953a04f in ?? () from /lib/libthr.so.3
#1  0x2952fadf in ?? () from /lib/libthr.so.3
#2  0x295342b8 in ?? () from /lib/libthr.so.3
#3  0x29534323 in pthread_mutex_lock () from /lib/libthr.so.3
#4  0x28e7a22d in g_static_rec_mutex_lock ()
   from /usr/local/lib/libglib-2.0.so.0
#5  0x28d2b575 in post_activate (pad=pad@entry=0x2c0b1800, 
    new_mode=<optimized out>) at gstpad.c:660
#6  0x28d329b0 in gst_pad_activate_push (pad=pad@entry=0x2c0b1800, 
    active=active@entry=0) at gstpad.c:993
#7  0x28d33541 in gst_pad_set_active (pad=0x2c0b1800, active=active@entry=0)
    at gstpad.c:718
#8  0x2b4e3e0e in gst_stream_synchronizer_release_stream (
    self=self@entry=0x2b1c5850, stream=0x2c0aa838)
    at gststreamsynchronizer.c:808
#9  0x2b4e4232 in gst_stream_synchronizer_release_pad (element=0x2b1c5850, 
    pad=0x2c0b1800) at gststreamsynchronizer.c:856
#10 0x28d1599f in gst_element_release_request_pad (element=0x2b1c5850, 
    pad=0x2c0b1800) at gstelement.c:350
#11 0x2b4c9d73 in gst_play_sink_reconfigure (playsink=0x2b335000)
    at gstplaysink.c:2595
#12 0x2b4c1f49 in gst_play_bin_set_flags (flags=<optimized out>, 
    playbin=0x2b016900) at gstplaybin2.c:1398
#13 gst_play_bin_set_property (object=0x2b016900, prop_id=4, value=0xbfbfd920, 
    pspec=0x2b31fc90) at gstplaybin2.c:1904
#14 0x28dd3c39 in g_object_set_valist ()
   from /usr/local/lib/libgobject-2.0.so.0
#15 0x28dd47d7 in g_object_set () from /usr/local/lib/libgobject-2.0.so.0
#16 0x08074271 in gst_set_current_subtitle_track (gst=0x2b1c8800, track_no=-1)
    at parole-gst.c:2339
#17 0x0805db79 in parole_player_combo_box_subtitles_changed_cb (
    widget=0x2b1c7118, player=0x2b1c8060) at parole-player.c:2691
#18 0x28de7a41 in g_cclosure_marshal_VOID__VOID ()
   from /usr/local/lib/libgobject-2.0.so.0
#19 0x28dcda87 in g_closure_invoke () from /usr/local/lib/libgobject-2.0.so.0
#20 0x28dde468 in ?? () from /usr/local/lib/libgobject-2.0.so.0
#21 0x28de7131 in g_signal_emit_valist ()
   from /usr/local/lib/libgobject-2.0.so.0
#22 0x28de729d in g_signal_emit () from /usr/local/lib/libgobject-2.0.so.0
#23 0x281f0a2f in ?? () from /usr/local/lib/libgtk-x11-2.0.so.0
#24 0x281f53fa in gtk_combo_box_set_active ()
   from /usr/local/lib/libgtk-x11-2.0.so.0
#25 0x080586c7 in parole_player_clear_subtitles (player=0x2b1c8060)
    at parole-player.c:571
#26 0x0805878d in parole_player_set_subtitles_list (player=0x2b1c8060, 
    subtitle_list=0x2b223850) at parole-player.c:592
#27 0x08058edd in parole_player_update_subtitles (player=0x2b1c8060, 
    gst=0x2b1c8800) at parole-player.c:752
#28 0x08058fb3 in parole_player_update_languages (player=0x2b1c8060, 
    gst=0x2b1c8800) at parole-player.c:772
#29 0x08059985 in parole_player_playing (player=0x2b1c8060, stream=0x2b1faa90)
    at parole-player.c:1033
#30 0x0805a02d in parole_player_media_state_cb (gst=0x2b1c8800, 
    stream=0x2b1faa90, state=PAROLE_STATE_PLAYING, player=0x2b1c8060)
    at parole-player.c:1227
#31 0x08074c4c in _gmarshal_VOID__OBJECT_ENUM (closure=0x2b8f9360, 
    return_value=0x0, n_param_values=3, param_values=0x2b201080, 
    invocation_hint=0xbfbfe04c, marshal_data=0x0) at gstmarshal.c:84
#32 0x28dcda87 in g_closure_invoke () from /usr/local/lib/libgobject-2.0.so.0
#33 0x28dde468 in ?? () from /usr/local/lib/libgobject-2.0.so.0
#34 0x28de7131 in g_signal_emit_valist ()
   from /usr/local/lib/libgobject-2.0.so.0
#35 0x28de729d in g_signal_emit () from /usr/local/lib/libgobject-2.0.so.0
#36 0x08070bba in parole_gst_evaluate_state (gst=0x2b1c8800, 
    old=GST_STATE_PAUSED, new=GST_STATE_PLAYING, 
    pending=GST_STATE_VOID_PENDING) at parole-gst.c:935
#37 0x08071708 in parole_gst_bus_event (bus=bus@entry=0x2b0e22b0, 
    msg=0x2c05bf00, data=data@entry=0x2b1c8800) at parole-gst.c:1197
#38 0x28d08183 in marshal_VOID__MINIOBJECT (closure=0x2b3380e0, 
    return_value=0x0, n_param_values=2, param_values=0x2bbce340, 
    invocation_hint=0xbfbfe38c, marshal_data=0x0) at gstbus.c:134
#39 0x28dcda87 in g_closure_invoke () from /usr/local/lib/libgobject-2.0.so.0
#40 0x28dde468 in ?? () from /usr/local/lib/libgobject-2.0.so.0
#41 0x28de7131 in g_signal_emit_valist ()
   from /usr/local/lib/libgobject-2.0.so.0
#42 0x28de729d in g_signal_emit () from /usr/local/lib/libgobject-2.0.so.0
#43 0x28d08389 in gst_bus_async_signal_func (bus=bus@entry=0x2b0e22b0, 
    message=message@entry=0x2c05bf00, data=data@entry=0x0) at gstbus.c:1118
#44 0x28d09196 in gst_bus_source_dispatch (source=0x2b339200, 
    callback=0x28d082f3 <gst_bus_async_signal_func>, user_data=0x0)
    at gstbus.c:764
#45 0x28e551e2 in g_main_context_dispatch ()
   from /usr/local/lib/libglib-2.0.so.0
#46 0x28e559da in ?? () from /usr/local/lib/libglib-2.0.so.0
#47 0x28e55fb6 in g_main_loop_run () from /usr/local/lib/libglib-2.0.so.0
#48 0x28278e73 in gtk_main () from /usr/local/lib/libgtk-x11-2.0.so.0
#49 0x08057b12 in main (argc=1, argv=0xbfbfe9a4) at main.c:369
(gdb)
Comment 6 Tijl Coosemans 2012-11-05 18:47:20 CET
Created attachment 4710 
Don't set gstreamer subtitle when playing starts

The attached patch fixes the problem for me, but I'm not sufficiently familiar with the code to be sure it's a good patch.
Comment 7 Simon Steinbeiss editbugs 2012-11-15 01:15:30 CET
It'd be nice if someone could confirm that this patch works (I can't reproduce the bug), mbresson?
Comment 8 mbresson 2012-11-15 09:34:11 CET
I'm sorry, I cannot try this patch at the moment, I will tell you when I try it and whether it works.
Comment 9 Jani Välimaa 2012-11-15 17:31:08 CET
(In reply to comment #7)
> It'd be nice if someone could confirm that this patch works (I can't
> reproduce the bug), mbresson?

At least it worked for me. After applying the patch, UI doesn't freeze anymore and I can use buttons/menus.
Comment 10 Sean Davis editbugs 2012-11-18 12:50:02 CET
This patch seems to work nicely, and it makes a lot of sense.  I have included it with the latest parole git master.  Please test and let me know if the issue is resolved for everyone.
Comment 11 Simon Steinbeiss editbugs 2012-11-19 08:37:34 CET
I was finally able to confirm the bug and then also that the patch works.
Comment 12 Simon Steinbeiss editbugs 2012-11-23 15:06:27 CET
This bug should be history now, if not, please add a new report or I can re-open this report.
Comment 13 Tijl Coosemans 2013-06-13 11:37:36 CEST
This bug reappeared in 0.5.1, because the fix for bug 9880 reverts the fix for this bug.
Comment 14 Sean Davis editbugs 2013-07-19 00:41:38 CEST
I have reverted that fix in git master.  Please let me know if the freezing is gone again.
Comment 15 Tijl Coosemans 2013-07-19 13:08:32 CEST
Yes, that fixes it.
Comment 16 Sean Davis editbugs 2013-07-23 23:09:18 CEST
Glad to know this is working now!

Bug #9194

Reported by:
mbresson
Reported on: 2012-08-10
Last modified on: 2013-07-23

People

Assignee:
Simon Steinbeiss
CC List:
3 users

Version

Version:
unspecified

Attachments

Additional information