First - love your work guys. I think more people need to know that. So getting inexperienced people using your stuff is the way to go. So its a bit of a problem when the hello world doesn't work as expected, so I hope you don't think this trivial
First, my setup. I do not normally develop in C, so my experience is on a pretty fresh XCode, and my machine is pretty clean. Following the instructions at https://gstreamer.freedesktop.org/documentation/tutorials/basic/hello-world.html Everything compiles and runs, I get audio, but no window with video. I was able to run the gst_parse_launch command string through /Library/Frameworks/GStreamer.framework/Versions/1.0/bin/gst-launch-1.0 with no trouble. Window came up fine. After trying to work out how to debug such a problem - and I would love to have advice from an experienced XCode developer - How do you debug windows events??? I'm guessing you need to be in the know of exactly what debug context will expose them from the rest of the debugging data. I then tried the example playback-tutorial-1.c. That worked. So direct instantiation and manipulation of the g_object playbin works. With my inexperienced xcode / c debugging I discovered: pipeline = gst_parse_launch ("playbin uri='file:///Users/drsog/Local/GStream_dev/gst-docs/examples/tutorials/test.mp4'", error); returns with a pipeline with current_state GstState GST_STATE_NULL error is null current_state GstState GST_STATE_READY next_state GstState GST_STATE_PAUSED pending_state GstState GST_STATE_PLAYING and ret = GST_STATE_CHANGE_FAILURE So the obvious question is how to get debugging info on GST_STATE_CHANGE_FAILURE. Or is the practice to recompile al of gst to get debugging info (or on the mac apparently dSYM packages with dwarf-with-dsym set) so xcode can bind the sources in debug), and then trace to the cause?Happy to look into it further myself if someone would be kind enough to mentor me so I don't go down too many rabbit holes. Regards, Sean Ogden _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel |
The difference between the
basic-hello-world example and the basic-playback example is that
the latter uses a GMainLoop for the event loop whereas the former
directly pops GstMessage's off the GstBus. This matters because
in order to perform GUI related functionality, macOS requires that
the application be running a CFRunLoop and
if you're running with the binaries provided by the GStreamer project, then they contain additions to GMainLoop to run a CFRunLoop alongside the GMainLoop. Without such an addition, the application would need to run their own CFRunLoop using something like https://cgit.freedesktop.org/gstreamer/gst-plugins-base/tree/tests/examples/gl/cocoa/cocoa-videooverlay.m#n222 as a kludge. As far as the example is concerned, I think the intention of the basic-examples is that they don't rely on the use of GMainLoop for simplicity reasons to avoid introducing event processing and to show that GMainLoop is *not* required for interacting with GStreamer (a common misconception) however they could be ported to the use of GMainLoop for the macOS use case or also pump the main CFRunLoop. Hope that helps. -Matt On 02/01/18 09:30, Sean Ogden wrote: First - love your work guys. I think more people need to know that. So getting inexperienced people using your stuff is the way to go. So its a bit of a problem when the hello world doesn't work as expected, so I hope you don't think this trivial _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel signature.asc (527 bytes) Download Attachment |
In reply to this post by Sean Ogden
Hi,
On Tue, 2018-01-02 at 11:30 +1300, Sean Ogden wrote: > First - love your work guys. I think more people need to know that. > So getting inexperienced people using your stuff is the way to go. > So its a bit of a problem when the hello world doesn't work as > expected, so I hope you don't think this trivial In addition to what Matthew replied, there is also https://bugzilla.gnome.org/show_bug.cgi?id=790242 -- Sebastian Dröge, Centricular Ltd · http://www.centricular.com _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel |
Free forum by Nabble | Edit this page |