試圖讓一個子類:如何重寫GstBin中的handle_message?
mybin.h:
#pragma once
#include <gst/gstbin.h>
G_BEGIN_DECLS
G_DECLARE_DERIVABLE_TYPE(MyBin, my_bin, MY, BIN, GstBin)
struct _MyBinClass
{
GstBinClass parent_class;
};
GstElement* my_bin_new(const gchar *name);
G_END_DECLS
mybin.c:
#include "mybin.h"
G_DEFINE_TYPE(MyBin, my_bin, GST_TYPE_BIN)
static void my_bin_init(MyBin *bin)
{
}
static void my_bin_class_init(MyBinClass *class)
{
// virtual function overrides go here
}
GstElement* my_bin_new(const gchar *name)
{
// ???
}
什麼在my_bin_new()
寫盡了my_bin_class_init()
叫?
我在glib文檔中看到了g_object_new()
,但不清楚要傳遞給它的內容。 gstreamer消息來源gst_element_factory_make()
,但我看不到這個工廠與我的自定義類相關。