xges playback fails using gst-launch-1.0 with playbin
I'm using Fedora 30, and I built gstreamer 1.16.0 using a script and then gst-build.
I have an xges file with media files here.
You can extract the files into a folder, but the xges file has absolute file paths; so you will need to replace my path with yours. Mine is /home/ding/mess/xges_repro/fedora_30-1.16.0/04
.
You can run a command to prove that this is a valid xges file as follows:
ges-launch-1.0 --load=04.xges
Next you can run the command using playbin, and it just hangs without playing.
gst-launch-1.0 playbin uri=ges://04.xges
The highest debug message is INFO
.
[ding@ding-fedora-30 fedora_30-1.16.0]$ gst-launch-1.0 --gst-debug-level=4 playbin uri=ges:///home/ding/mess/xges_repro/fedora_30-1.16.0/04.xges
0:00:00.000155386 7635 0x139eec0 INFO GST_INIT gstmessage.c:128:_priv_gst_message_initialize: init messages
0:00:00.000425648 7635 0x139eec0 INFO GST_INIT gstcontext.c:84:_priv_gst_context_initialize: init contexts
0:00:00.000607895 7635 0x139eec0 INFO GST_PLUGIN_LOADING gstplugin.c:318:_priv_gst_plugin_initialize: registering 0 static plugins
0:00:00.000668034 7635 0x139eec0 INFO GST_PLUGIN_LOADING gstplugin.c:226:gst_plugin_register_static: registered static plugin "staticelements"
0:00:00.000674958 7635 0x139eec0 INFO GST_PLUGIN_LOADING gstplugin.c:228:gst_plugin_register_static: added static plugin "staticelements", result: 1
0:00:00.000681458 7635 0x139eec0 INFO GST_REGISTRY gstregistry.c:1723:ensure_current_registry: reading registry cache: /home/ding/.cache/gstreamer-1.0/registry.x86_64.bin
0:00:00.011577095 7635 0x139eec0 INFO GST_REGISTRY gstregistrybinary.c:621:priv_gst_registry_binary_read_cache: loaded /home/ding/.cache/gstreamer-1.0/registry.x86_64.bin in 0.010877 seconds
0:00:00.011667989 7635 0x139eec0 INFO GST_REGISTRY gstregistry.c:1579:scan_and_update_registry: Validating plugins from registry cache: /home/ding/.cache/gstreamer-1.0/registry.x86_64.bin
0:00:00.012804732 7635 0x139eec0 INFO GST_REGISTRY gstregistry.c:1681:scan_and_update_registry: Registry cache has not changed
0:00:00.012813418 7635 0x139eec0 INFO GST_REGISTRY gstregistry.c:1758:ensure_current_registry: registry reading and updating done, result = 1
0:00:00.012818908 7635 0x139eec0 INFO GST_INIT gst.c:806:init_post: GLib runtime version: 2.60.4
0:00:00.012823827 7635 0x139eec0 INFO GST_INIT gst.c:808:init_post: GLib headers version: 2.60.4
0:00:00.012827305 7635 0x139eec0 INFO GST_INIT gst.c:810:init_post: initialized GStreamer successfully
0:00:00.012848868 7635 0x139eec0 INFO GST_PIPELINE gstparse.c:336:gst_parse_launch_full: parsing pipeline description 'playbin uri=ges:///home/ding/mess/xges_repro/fedora_30-1.16.0/04.xges '
0:00:00.013983487 7635 0x139eec0 INFO GST_PLUGIN_LOADING gstplugin.c:902:_priv_gst_plugin_load_file_for_registry: plugin "/home/ding/.conan/data/gst-plugins-base/1.16.0/panopto/7.3/package/e809a048d2a81fcf3197187a5e99e8e2fe679d2e/plugins/libgstplayback.so" loaded
0:00:00.013994600 7635 0x139eec0 INFO GST_ELEMENT_FACTORY gstelementfactory.c:361:gst_element_factory_create: creating element "playbin"
Setting pipeline to PAUSED ...
0:00:00.014296773 7635 0x139eec0 INFO GST_STATES gstbin.c:2499:gst_bin_element_set_state:<playsink> current NULL pending VOID_PENDING, desired next READY
0:00:00.014309725 7635 0x139eec0 INFO GST_STATES gstbin.c:2499:gst_bin_element_set_state:<streamsynchronizer0> current NULL pending VOID_PENDING, desired next READY
0:00:00.014316588 7635 0x139eec0 INFO GST_STATES gstelement.c:2675:gst_element_continue_state:<streamsynchronizer0> completed state change to READY
0:00:00.014321776 7635 0x139eec0 INFO GST_STATES gstelement.c:2575:_priv_gst_element_state_changed:<streamsynchronizer0> notifying about state-changed NULL to READY (VOID_PENDING pending)
0:00:00.014340158 7635 0x139eec0 INFO GST_STATES gstbin.c:2948:gst_bin_change_state_func:<playsink> child 'streamsynchronizer0' changed state to 2(READY) successfully
0:00:00.014346798 7635 0x139eec0 INFO GST_STATES gstelement.c:2675:gst_element_continue_state:<playsink> completed state change to READY
0:00:00.014351511 7635 0x139eec0 INFO GST_STATES gstelement.c:2575:_priv_gst_element_state_changed:<playsink> notifying about state-changed NULL to READY (VOID_PENDING pending)
0:00:00.014358386 7635 0x139eec0 INFO GST_STATES gstbin.c:2948:gst_bin_change_state_func:<playbin0> child 'playsink' changed state to 2(READY) successfully
0:00:00.014364116 7635 0x139eec0 INFO GST_STATES gstelement.c:2647:gst_element_continue_state:<playbin0> committing state from NULL to READY, pending PAUSED, next PAUSED
0:00:00.014368757 7635 0x139eec0 INFO GST_STATES gstelement.c:2575:_priv_gst_element_state_changed:<playbin0> notifying about state-changed NULL to READY (PAUSED pending)
0:00:00.014385203 7635 0x139eec0 INFO GST_STATES gstelement.c:2655:gst_element_continue_state:<playbin0> continue state change READY to PAUSED, final PAUSED
0:00:00.014393460 7635 0x139eec0 INFO GST_STATES gstbin.c:2499:gst_bin_element_set_state:<playsink> current READY pending VOID_PENDING, desired next PAUSED
0:00:00.014398128 7635 0x139eec0 INFO playsink gstplaysink.c:1439:do_async_start:<playsink> Sending async_start message
0:00:00.014405041 7635 0x139eec0 INFO GST_STATES gstbin.c:2499:gst_bin_element_set_state:<streamsynchronizer0> current READY pending VOID_PENDING, desired next PAUSED
0:00:00.014410441 7635 0x139eec0 INFO GST_STATES gstelement.c:2675:gst_element_continue_state:<streamsynchronizer0> completed state change to PAUSED
0:00:00.014414825 7635 0x139eec0 INFO GST_STATES gstelement.c:2575:_priv_gst_element_state_changed:<streamsynchronizer0> notifying about state-changed READY to PAUSED (VOID_PENDING pending)
0:00:00.014421307 7635 0x139eec0 INFO GST_STATES gstbin.c:2948:gst_bin_change_state_func:<playsink> child 'streamsynchronizer0' changed state to 3(PAUSED) successfully
0:00:00.014426895 7635 0x139eec0 INFO GST_STATES gstbin.c:2955:gst_bin_change_state_func:<playbin0> child 'playsink' is changing state asynchronously to PAUSED
0:00:00.014432933 7635 0x139eec0 INFO GST_ELEMENT_FACTORY gstelementfactory.c:361:gst_element_factory_create: creating element "uridecodebin"
0:00:00.014516123 7635 0x139eec0 INFO GST_STATES gstelement.c:2647:gst_element_continue_state:<uridecodebin0> committing state from NULL to READY, pending PAUSED, next PAUSED
0:00:00.014523433 7635 0x139eec0 INFO GST_STATES gstelement.c:2575:_priv_gst_element_state_changed:<uridecodebin0> notifying about state-changed NULL to READY (PAUSED pending)
0:00:00.014530038 7635 0x139eec0 INFO GST_STATES gstelement.c:2655:gst_element_continue_state:<uridecodebin0> continue state change READY to PAUSED, final PAUSED
0:00:00.016080887 7635 0x139eec0 INFO GST_PLUGIN_LOADING gstplugin.c:902:_priv_gst_plugin_load_file_for_registry: plugin "/home/ding/.conan/data/gst-editing-services/1.16.0/panopto/7.3/package/97dffa48d351d12bbe25f7d9bb712e120fc233cc/plugins/libgstges.so" loaded
0:00:00.016090972 7635 0x139eec0 INFO GST_ELEMENT_FACTORY gstelementfactory.c:358:gst_element_factory_create: creating element "gessrc" named "source"
0:00:00.016174715 7635 0x139eec0 INFO GST_STATES gstelement.c:2647:gst_element_continue_state:<source> committing state from NULL to READY, pending PAUSED, next PAUSED
0:00:00.016195261 7635 0x139eec0 INFO GST_STATES gstelement.c:2575:_priv_gst_element_state_changed:<source> notifying about state-changed NULL to READY (PAUSED pending)
0:00:00.016216647 7635 0x139eec0 INFO GST_STATES gstelement.c:2655:gst_element_continue_state:<source> continue state change READY to PAUSED, final PAUSED
0:00:00.016221686 7635 0x139eec0 INFO GST_STATES gstelement.c:2675:gst_element_continue_state:<source> completed state change to PAUSED
0:00:00.016226449 7635 0x139eec0 INFO GST_STATES gstelement.c:2575:_priv_gst_element_state_changed:<source> notifying about state-changed READY to PAUSED (VOID_PENDING pending)
Pipeline is PREROLLING ...