0

我需要在我的 qt-gstreamer 应用程序中使用 typefind 元素。

似乎缺少特定的 Qt 元素绑定,所以问题是:在这种情况下,即使使用 qt-gstreamer,我也应该使用 g_signal_connect 吗?如何?

我是 gt-gstreamer 的初学者,我仍然不清楚 g_signal_connect 是如何以 Qt 风格实现的,或者如何将它们一起使用。

这是用C编写的代码:

filesrc = g_str_has_prefix(argv[1], "http://") || g_str_has_prefix(argv[1], "https://")? gst_element_factory_make ("souphttpsrc", "source") : gst_element_factory_make ("filesrc", "source");
g_object_set (G_OBJECT (filesrc), "location", argv[1], NULL);
typefind = gst_element_factory_make ("typefind", "typefinder");
g_signal_connect (typefind, "have-type", G_CALLBACK (cb_typefound), loop);
fakesink = gst_element_factory_make ("fakesink", "sink");

谢谢!

4

1 回答 1

0

只是对其他人来说, tt 非常简单:

g_signal_connect((GstElement*) pipeline->getElementByName("typedef"), "have-type", G_CALLBACK(&MyClass::typefoundCB), this);

问候

于 2016-06-21T16:18:32.583 回答