我对 C 语言很熟悉,但需要学习 GObject
和 Glib
以使用 gstreamer
。在网络上找到的都是 Gobject 参考手册,虽然不错,但希望能够找到以 Gobject/Glib 为主题的教程,因为我的重点是 gstreamer。
因此,请分享一些其他学习 glib 和 gobject 的资源。
从 Glib 开始,这很容易并且在这里有很好的描述:Glib 参考手册
GObject 主要是为了实现面向对象而产生的大量样板代码。尝试使用GObject 参考手册中找到的 "maman bar" 示例
对我来说,最难理解的是 GStreamer。文档很好,但需要阅读很多内容 (GStreamer 文档)。阅读基础知识后,尝试使用 gst-launch 从命令行启动管道。然后阅读关于应用程序开发的完整手册并进行一些示例。在尝试构建自己的插件之前,请查看一些简单的插件并尝试了解不同的部分,一个简单的入门点是identity 插件
祝你好运!
/Joel Larsson
还有一个"官方Gnome 2开发者指南"。请参见该书的第59页及其后内容... 检查gtk的来源也是个好主意。我花了几个星期的时间学习它,并且发现这本书非常有帮助。相当繁琐的是获得正确的构造函数和初始化顺序需要耗费 "相当" 的精力。 你应该查阅GObject文档中的第4章。虽然它并不覆盖所有内容,但与书籍一起使用还是很好的。我建议从一个非常简单的派生自GObject的玻璃表单开始,以更好地理解基本原理。
人们总是有两种结构。一种是类结构,其中存储所有函数指针; 另一种是实例结构,代表一个对象。这是最重要的事情。
另一个有点难以理解的是内存管理的引用计数。如果您之前接触过Objective-C和/或libapr和/或COM,则会有所帮助。
问候 弗里德里希
g_signal_newv
。来自https://developer.gnome.org/gobject/stable/signal.html - kravemir