Skip to content
Rust Search
← Browse conferences

GObject subclassing in Rust for extending GTK+ & GStreamer

FOSDEM

Many commonly used libraries from other languages, especially GUI toolkits, make use of Object Oriented Programming (OOP). While Rust has support for many of the OOP concepts in one way or another, there is no easy way for implementing subclassing or inheritance. The topic of this talk will be how to implement subclassing and inheritance in safe Rust, based on the GObject C library. The GObject library is providing Java/ObjectiveC-style OOP features to C. It is used by the GTK+ UI toolkit, the G

Recording not playing? Use the FOSDEM link above.

Other talks by Sebastian Dröge

GStreamer & Rust

FOSDEM

GStreamer is a highly versatile, cross-platform, plugin-based multimedia framework that caters to the whole range of multimedia needs. It can be used basically everywhere, from embedded devices like phones, TVs or drones to desktop applications or on huge server farms. This talk will focus on how and why Rust looks like the perfect programming language for evolving GStreamer and provide a safer but still performant and even more productive development environment than C. Both GStreamer application development in Rust, and GStreamer plugin development will be covered. What is possible today already, for which applications can Rust be perfectly used already and which parts are still missing? How does it feel like to write an application in Rust compared to doing it in C? And how and why would one write GStreamer plugins in Rust to extend the framework and all applications with support for new codecs, filters or anything else? Afterwards there will be a short outlook into the future of Rust in the GStreamer project itself and for GStreamer application and plugin development.

GStreamer & Rust – A perfect match

Rust Programming Language
RustFest 30:14 4391 views

GStreamer is a highly versatile, cross-platform, plugin-based multimedia framework that caters to the whole range of multimedia needs. It can be used basically everywhere, from embedded devices like phones, TVs or drones to desktop applications or on huge server farms. In this talk we will discuss how Rust is the perfect match for GStreamer to evolve from its C roots and safely enter the future. Be it for application development on top of GStreamer or for the development of plugins, where the actual media processing is happening. We will give an overview of the current status of getting Rust and GStreamer working together, our experience with Rust so far, what problems we ran into and what is already possible today. In the end we will give an outline of our ideas how to evolve from here, what the next steps are on the way to world domination. And who knows, maybe in the future we will have a GStreamer completely written in Rust? Sebastian Dröge https://twitter.com/sdroege_ https://github.com/sdroege https://users.rust-lang.org/users/slomo/activity Luis de Bethencourt https://twitter.com/luisbg https://github.com/luisbg https://users.rust-lang.org/users/luisbg/activity