gstreamermm-0.10.10.1 contains some function names which are identical to some of the function names found in the gstreamer-plugins package. When a plugin is initialized by the gstreamer framework the plugin makes a call to what is supposed to be a local function call but instead calls a similarly named function in the gstreamer library which eventually causes the plugin to fail initialization. Fix: This problem appears to have already been identified here: web.archiveorange.com/archive/v/zb6jHVcFoud9WvczVnQZ It looks like one of the committers changed the name of the functions in gstreamermm-0.10.10.2 to avoid the duplicate symbol problem. Updating the port fixes both multimedia/subtitleeditor and the test program. Patch attached with submission follows: How-To-Repeat: Install and run multimedia/subtitleeditor. When a video file is opened, you should see the error, Media file could not be played. Failed to create a GStreamer textoverlay (textoverlay). Please check your GStreamer installation. A simpler way to repeat the problem is with the following test code: #include <gstreamermm.h> test.cpp: int main(int argc, char* argv[]) { Gst::init(argc, argv); Glib::RefPtr<Gst::Element> textoverlay; textoverlay = Gst::ElementFactory::create_element("textoverlay", "overlay"); printf("textoverlay: %s\n", textoverlay ? "true":"false"); return 0; } $ clang++ test.cpp -o test -g `pkg-config --cflags --libs gstreamermm-0.10` $ ./test --gst-debug-level=5 You should see, among several other warnings: 0:00:00.348919067 0x805c17080 LOG GST_ELEMENT_FACTORY gstelementfactory.c:450:GstElement *gst_element_factory_make(const gchar *, const gchar *): gstelementfactory: make "textoverlay" "overlay" 0:00:00.348954686 0x805c17080 LOG GST_ELEMENT_FACTORY gstelementfactory.c:456:GstElement *gst_element_factory_make(const gchar *, const gchar *):<textoverlay> found factory 0x805f0e6c0 0:00:00.348977454 0x805c17080 DEBUG GST_PLUGIN_LOADING gstpluginfeature.c:106:GstPluginFeature *gst_plugin_feature_load(GstPluginFeature *): loading plugin for feature 0x805f0e6c0; 'textoverlay' 0:00:00.348989397 0x805c17080 DEBUG GST_PLUGIN_LOADING gstpluginfeature.c:110:GstPluginFeature *gst_plugin_feature_load(GstPluginFeature *): loading plugin pango 0:00:00.348999943 0x805c17080 DEBUG GST_PLUGIN_LOADING gstplugin.c:1293:GstPlugin *gst_plugin_load_by_name(const gchar *): looking up plugin pango in default registry 0:00:00.349046597 0x805c17080 DEBUG GST_PLUGIN_LOADING gstplugin.c:1296:GstPlugin *gst_plugin_load_by_name(const gchar *): loading plugin pango from file /usr/local/lib/gstreamer-0.10/libgstpango.so 0:00:00.349084102 0x805c17080 DEBUG GST_PLUGIN_LOADING gstpluginfeature.c:115:GstPluginFeature *gst_plugin_feature_load(GstPluginFeature *): loaded plugin pango 0:00:00.349119791 0x805c17080 INFO GST_PLUGIN_LOADING gstpluginfeature.c:145:GstPluginFeature *gst_plugin_feature_load(GstPluginFeature *): Tried to load plugin containing feature 'textoverlay', but feature was not found. 0:00:00.349131105 0x805c17080 WARN GST_ELEMENT_FACTORY gstelementfactory.c:410:GstElement *gst_element_factory_create(GstElementFactory *, const gchar *):<textoverlay> loading plugin containing feature overlay returned NULL! 0:00:00.349142629 0x805c17080 INFO GST_ELEMENT_FACTORY gstelementfactory.c:472:GstElement *gst_element_factory_make(const gchar *, const gchar *):<textoverlay> couldn't create instance! textoverlay: false
Responsible Changed From-To: freebsd-ports-bugs->freebsd-multimedia Over to maintainer (via the GNATS Auto Assign Tool)
kwm 2012-07-13 10:06:26 UTC FreeBSD ports repository Modified files: multimedia/gstreamermm Makefile distinfo Log: Update to 0.10.10.2. This should fix loading plugins again. PR: ports/169700 Submitted by: Heath Nielson <heathn@gmail.com> Revision Changes Path 1.27 +1 -2 ports/multimedia/gstreamermm/Makefile 1.15 +2 -2 ports/multimedia/gstreamermm/distinfo _______________________________________________ cvs-all@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/cvs-all To unsubscribe, send any mail to "cvs-all-unsubscribe@freebsd.org"
State Changed From-To: open->closed Committed with small changes, Thanks!