Created attachment 118870 [details] Working time Hi, I need some help on debugging the following crash. This is happening during playing a video(reusing the pipeline). Interesting that, the crash in happening when opening the second video(first is played without issues). Attached to this bug are the traces at working time and bellow are the traces when crash is happened. Thank you, Catalin Catchpoint 1 (signal SIGSEGV), get_next_argument (signature=0x1 <error: Cannot access memory at address 0x1>, details=details@entry=0x7ef0ba38) at src/connection.c:413 413 in src/connection.c (gdb) (gdb) bt full #0 get_next_argument (signature=0x1 <error: Cannot access memory at address 0x1>, details=details@entry=0x7ef0ba38) at src/connection.c:413 No locals. #1 0x744051a8 in wl_argument_from_va_list (signature=<optimized out>, args=args@entry=0x7ef0ba68, count=count@entry=20, ap=..., ap@entry=...) at src/connection.c:476 i = 0 sig_iter = <optimized out> arg = { type = 112 'p', nullable = 0 } #2 0x74403b68 in wl_proxy_marshal_constructor (proxy=0x73a1b5a0, opcode=opcode@entry=1, interface=0x74408660 <wl_registry_interface>) at src/wayland-client.c:625 args = {{ i = 0, u = 0, f = 0, s = 0x0, o = 0x0, n = 0, a = 0x0, h = 0 }, { i = 22964292, u = 22964292, f = 22964292, s = 0x15e6844 "\001", o = 0x15e6844, n = 22964292, a = 0x15e6844, h = 22964292 }, { i = 2129705660, u = 2129705660, f = 2129705660, s = 0x7ef0babc "\210/\\\001\002", o = 0x7ef0babc, n = 2129705660, a = 0x7ef0babc, h = 2129705660 }, { i = 1994331484, u = 1994331484, f = 1994331484, s = 0x76df155c <g_object_newv+500> "", o = 0x76df155c <g_object_newv+500>, n = 1994331484, a = 0x76df155c <g_object_newv+500>, h = 1994331484 }, { i = 0, u = 0, f = 0, s = 0x0, o = 0x0, n = 0, a = 0x0, h = 0 }, { i = 0, u = 0, f = 0, s = 0x0, o = 0x0, n = 0, a = 0x0, h = 0 }, { i = 0, u = 0, f = 0, s = 0x0, o = 0x0, n = 0, a = 0x0, h = 0 }, { i = 0, u = 0, f = 0, s = 0x0, o = 0x0, n = 0, a = 0x0, h = 0 }, { i = 1938866096, u = 1938866096, f = 1938866096, s = 0x7390bfb0 "@\277\220s", o = 0x7390bfb0, n = 1938866096, a = 0x7390bfb0, h = 1938866096 }, { i = 1992127716, u = 1992127716, f = 1992127716, s = 0x76bd74e4 "", o = 0x76bd74e4, n = 1992127716, a = 0x76bd74e4, h = 1992127716 }, { i = 12, u = 12, f = 12, s = 0xc <error: Cannot access memory at address 0xc>, o = 0xc, n = 12, a = 0xc, h = 12 }, { i = 1984800976, u = 1984800976, f = 1984800976, s = 0x764da8d0 "\b\220Mv", o = 0x764da8d0, n = 1984800976, a = 0x764da8d0, h = 1984800976 }, { i = 1950458404, u = 1950458404, f = 1950458404, s = 0x7441a224 "\314\020\001", o = 0x7441a224, n = 1950458404, a = 0x7441a224, h = 1950458404 }, { i = 0, u = 0, f = 0, s = 0x0, o = 0x0, n = 0, a = 0x0, h = 0 }, { i = 42192, u = 42192, f = 42192, s = 0xa4d0 "adata_into_database", o = 0xa4d0, n = 42192, a = 0xa4d0, h = 42192 }, { i = 0, u = 0, f = 0, s = 0x0, o = 0x0, n = 0, a = 0x0, h = 0 }, { i = 628, u = 628, f = 628, s = 0x274 <error: Cannot access memory at address 0x274>, o = 0x274, n = 628, a = 0x274, h = 628 }, { i = 1991329792, u = 1991329792, f = 1991329792, s = 0x76b14800 <malloc+116> "", o = 0x76b14800 <malloc+116>, n = 1991329792, a = 0x76b14800 <malloc+116>, h = 1991329792 }, { i = 0, u = 0, f = 0, s = 0x0, o = 0x0, n = 0, a = 0x0, h = 0 }, { i = 22818696, u = 22818696, f = 22818696, s = 0x15c2f88 "\260\277\220s\001", o = 0x15c2f88, n = 22818696, a = 0x15c2f88, h = 22818696 }} ap = { __ap = 0x7ef0bad4 } #3 0x7440fb80 in wl_display_get_registry (wl_display=<optimized out>) at /home/uidj9537/DevKits/10.06.rayl-std-10-07/tmp/staging/armv7a-mv-linux/usr/include/wayland-client-protocol.h:189 registry = <optimized out> #4 gst_wl_display_new_existing (display=<optimized out>, take_ownership=take_ownership@entry=0, error=0x0, error@entry=0x7ef0bb2c) at wldisplay.c:226 self = 0x15c2f88 err = 0x0 i = <optimized out> __func__ = "gst_wl_display_new_existing" #5 0x7440c674 in gst_wayland_sink_set_display_from_context (sink=sink@entry=0x7240a9c0, context=context@entry=0x7241a290) at gstwaylandsink.c:245 display = <optimized out> error = 0x0 __FUNCTION__ = "gst_wayland_sink_set_display_from_context" #6 0x7440dedc in gst_wayland_sink_set_context (element=element@entry=0x7240a9c0, context=context@entry=0x7241a290) at gstwaylandsink.c:400 sink = 0x7240a9c0 __FUNCTION__ = "gst_wayland_sink_set_context" #7 0x766910b4 in gst_element_set_context (element=0x7240a9c0, context=0x7241a290) at gstelement.c:3048 oclass = <optimized out> __func__ = "gst_element_set_context" __PRETTY_FUNCTION__ = "gst_element_set_context" #8 0x744a8a64 in activate_sink_bus_handler (bus=bus@entry=0x7240f6f8, msg=msg@entry=0x6edd9a18, playbin=playbin@entry=0x15e6838) at gstplaybin2.c:4224 tmp = <optimized out> tmp_type = <optimized out> context_type = 0x15e72c0 "GstWaylandDisplayHandleContextType" l = 0x73907650 #9 0x76677588 in gst_bus_post (bus=bus@entry=0x7240f6f8, message=message@entry=0x6edd9a18) at gstbus.c:324 reply = GST_BUS_PASS handler = 0x744a88c8 <activate_sink_bus_handler> emit_sync_message = 0 handler_data = 0x15e6838 __func__ = "gst_bus_post" __PRETTY_FUNCTION__ = "gst_bus_post" #10 0x7668bc00 in gst_element_post_message_default (element=0x7240a9c0, message=0x6edd9a18) at gstelement.c:1688 bus = 0x7240f6f8 result = 0 __func__ = "gst_element_post_message_default" __PRETTY_FUNCTION__ = "gst_element_post_message_default" #11 0x7668f254 in gst_element_post_message (element=element@entry=0x7240a9c0, message=message@entry=0x6edd9a18) at gstelement.c:1728 klass = 0x7390b028 #12 0x7440c8ac in gst_wayland_sink_find_display (sink=sink@entry=0x7240a9c0) at gstwaylandsink.c:281 query = <optimized out> msg = 0x6edd9a18 context = 0x0 error = 0x0 ret = 1 __FUNCTION__ = "gst_wayland_sink_find_display" #13 0x7440df1c in gst_wayland_sink_change_state (element=0x7240a9c0, transition=GST_STATE_CHANGE_NULL_TO_READY) at gstwaylandsink.c:322 sink = 0x7240a9c0 ret = GST_STATE_CHANGE_SUCCESS #14 0x766901f4 in gst_element_change_state (element=element@entry=0x7240a9c0, transition=transition@entry=GST_STATE_CHANGE_NULL_TO_READY) at gstelement.c:2602 oclass = <optimized out> ret = GST_STATE_CHANGE_SUCCESS __PRETTY_FUNCTION__ = "gst_element_change_state" #15 0x766908ac in gst_element_set_state_func (element=0x7240a9c0, state=<optimized out>) at gstelement.c:2558 current = <optimized out> next = <optimized out> old_pending = <optimized out> ret = <optimized out> transition = GST_STATE_CHANGE_NULL_TO_READY old_ret = <optimized out> __func__ = "gst_element_set_state_func" __PRETTY_FUNCTION__ = "gst_element_set_state_func" #16 0x7668ff10 in gst_element_set_state (element=element@entry=0x7240a9c0, state=state@entry=GST_STATE_READY) at gstelement.c:2459 oclass = 0x7390b028 result = GST_STATE_CHANGE_FAILURE __func__ = "gst_element_set_state" #17 0x744a8858 in activate_sink (playbin=playbin@entry=0x15e6838, sink=0x7240a9c0, activated=0x7ef0bda8, activated@entry=0x7ef0bda0) at gstplaybin2.c:4278 state = <optimized out> bus = 0x7240f6f8 sret = <optimized out> ret = 0 #18 0x744a9e30 in activate_group (target=22964280, group=0x15e6af0, playbin=0x15e6838) at gstplaybin2.c:5028 flags = <optimized out> audio_sink_activated = 1 text_sink_activated = 0 uridecodebin = 0x0 suburidecodebin = 0x0 video_sink_activated = 0 #19 setup_next_source (playbin=playbin@entry=0x15e6838, target=22964280, target@entry=GST_STATE_READY) at gstplaybin2.c:5414 new_group = <optimized out> old_group = <optimized out> __PRETTY_FUNCTION__ = "setup_next_source" #20 0x744ab024 in gst_play_bin_change_state (element=0x15e6838, transition=GST_STATE_CHANGE_READY_TO_PAUSED) at gstplaybin2.c:5502 ret = <optimized out> playbin = 0x15e6838 do_save = 0 __PRETTY_FUNCTION__ = "gst_play_bin_change_state" #21 0x766901f4 in gst_element_change_state (element=element@entry=0x15e6838, transition=<optimized out>) at gstelement.c:2602 oclass = <optimized out> ret = GST_STATE_CHANGE_SUCCESS __PRETTY_FUNCTION__ = "gst_element_change_state" #22 0x76690c48 in gst_element_continue_state (element=element@entry=0x15e6838, ret=ret@entry=GST_STATE_CHANGE_SUCCESS) at gstelement.c:2312 old_ret = <optimized out> old_state = <optimized out> old_next = <optimized out> current = <optimized out> next = <optimized out> pending = <optimized out> transition = <optimized out> __PRETTY_FUNCTION__ = "gst_element_continue_state" #23 0x76690364 in gst_element_change_state (element=element@entry=0x15e6838, transition=transition@entry=GST_STATE_CHANGE_NULL_TO_READY) at gstelement.c:2639 oclass = <optimized out> ret = <optimized out> __PRETTY_FUNCTION__ = "gst_element_change_state" #24 0x766908ac in gst_element_set_state_func (element=0x15e6838, state=<optimized out>) at gstelement.c:2558 current = <optimized out> next = <optimized out> old_pending = <optimized out> ret = <optimized out> transition = GST_STATE_CHANGE_NULL_TO_READY old_ret = <optimized out> __func__ = "gst_element_set_state_func" __PRETTY_FUNCTION__ = "gst_element_set_state_func" #25 0x7668ff10 in gst_element_set_state (element=element@entry=0x15e6838, state=state@entry=GST_STATE_PLAYING) at gstelement.c:2459 oclass = 0x73afa3a8 result = GST_STATE_CHANGE_FAILURE __func__ = "gst_element_set_state" #26 0x76c99478 in set_gst_player_state (pipeline=0x15e6838, newstate=GST_STATE_PLAYING) at src/libme_gst.c:220 rval = <optimized out> newstate = GST_STATE_PLAYING pipeline = 0x15e6838 rval = GST_STATE_CHANGE_FAILURE #27 0x76c9aa50 in libmeSetPlaybackState (handle=0x76ca6318 <av_engine>, state=<optimized out>, speed=<optimized out>) at src/libme_gst.c:1899 ret = <optimized out> current_mms_state = MMS_PLAYBACK_STOPPED current_pos = 0 current_len = 0 engine = 0x76ca6318 <av_engine> __FUNCTION__ = "libmeSetPlaybackState" #28 0x0000e208 in play_control (state=state@entry=MMS_PLAYBACK_PLAYING, speed=speed@entry=1000) at pb_engine/media_player_gst.c:342 __FUNCTION__ = "play_control" __func__ = "play_control" ret_val = <optimized out> #29 0x00014408 in media_playback_object_play_track (track=<optimized out>, position=0, auto_play=1, error=0x7ef0c42c, request_type=<optimized out>, obj=<optimized out>) at media_player_dbus.c:1170 path = "/media/F769-ED9A/MediaBatch/03 720x480 - MPEG-4 ASP.mp4", '\000' <repeats 968 times> err = MMS_G_ERROR_NONE requested_track_id = 2622179505 #30 0x0000f508 in dbus_glib_marshal_media_playback_object_BOOLEAN__INT_BOXED_INT_BOOLEAN_POINTER (closure=<optimized out>, return_value=0x7ef0c4c8, n_param_values=<optimized out>, param_values=0x1987f00, invocation_hint=0x0, marshal_data=0x14464 <media_playback_object_play_track>) at ./inc/plugin-playback-dbus-server.h:100 callback = 0x14464 <media_playback_object_play_track> cc = <optimized out> data1 = 0x15c23d0 data2 = <optimized out> v_return = <optimized out> __FUNCTION__ = "dbus_glib_marshal_media_playback_object_BOOLEAN__INT_BOXED_INT_BOOLEAN_POINTER" #31 0x76e5bffc in ?? () from /usr/lib/libdbus-glib-1.so.2 No symbol table info available. #32 0x76e319c0 in ?? () from /usr/lib/libdbus-1.so.3 No symbol table info available. #33 0x76e27a08 in dbus_connection_dispatch () from /usr/lib/libdbus-1.so.3 No symbol table info available. #34 0x76e59920 in ?? () from /usr/lib/libdbus-glib-1.so.2 No symbol table info available. #35 0x76d20bec in g_main_dispatch (context=0x74300f48) at gmain.c:3122 dispatch = 0x76e59908 prev_source = 0x0 was_in_call = 0 user_data = 0x0 callback = 0x0 cb_funcs = <optimized out> cb_data = 0x76d20bec <g_main_context_dispatch+448> need_destroy = <optimized out> source = 0x15c88a0 current = 0x15ad8a0 i = 0 #36 g_main_context_dispatch (context=context@entry=0x74300f48) at gmain.c:3737 No locals. #37 0x76d20e04 in g_main_context_iterate (context=0x74300f48, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at gmain.c:3808 max_priority = 0 timeout = 0 some_ready = 1 nfds = 2 allocated_nfds = <optimized out> fds = <optimized out> #38 0x76d2109c in g_main_loop_run (loop=0x15c8998) at gmain.c:4002 No locals. #39 0x0000c9dc in main (argc=2129708876, argv=<optimized out>) at media_player_main.c:854 dev_prefix = 0x0 log_id = "msc0" opt = <optimized out> len = <optimized out> wait_for_mount_flag = <optimized out> verbose = <optimized out> launch_partition = <optimized out> eng_thread = 1938814048 long_options = {{ name = 0x1ce4c "dev_node", has_arg = 1, flag = 0x0, val = 100 }, { name = 0x1ce55 "sys_node", has_arg = 1, flag = 0x0, val = 113 }, { name = 0x1ce62 "serial", has_arg = 1, flag = 0x0, val = 115 }, { name = 0x1ce5e "sys_serial", has_arg = 1, flag = 0x0, val = 97 }, { name = 0x1ce69 "product", has_arg = 1, flag = 0x0, val = 112 }, { name = 0x1ce71 "vendor", has_arg = 1, flag = 0x0, val = 111 }, { name = 0x1ce78 "label", has_arg = 1, flag = 0x0, val = 108 }, { name = 0x1ce7e "fs_type", has_arg = 1, flag = 0x0, val = 102 }, { name = 0x1ce86 "mount_point", has_arg = 1, flag = 0x0, val = 109 }, { name = 0x1ce92 "partition", has_arg = 1, flag = 0x0, val = 110 }, { name = 0x1ce9c "uuid", has_arg = 1, flag = 0x0, val = 117 }, { name = 0x1cea1 "verbose", has_arg = 0, flag = 0x0, val = 118 }, { name = 0x1cea9 "help", has_arg = 0, flag = 0x0, val = 104 }, { name = 0x0, has_arg = 0, flag = 0x0, val = 0 }} __FUNCTION__ = "main" (gdb)
This is a waylandsink issue: I'm pretty sure that the issue is that the wl_display is destroyed when it should not be, hence why it fails the second time. Which version of GStreamer are you using? If you're able to try a quite current version, could you please give that a go? If not, or if it is a current version, could you please file a bug on gnome.org against GStreamer - if you could please CC George Kiagiadakis and myself too, that'd be great. Thanks, and sorry for the confusion.
We use Gstreamer 1.4.5 version. Because of glib dependency, I'm not able to modify the working version to latest. All I'm able to do is to merge some specific code lines or apply a patch. I'll fallow your advice. Thank you !
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.