GStreamer
open source multimedia framework
Home
Features
News
Planet
Download
Applications
Developers
Documentation
Mailing Lists
File a Bug
Bug Lists
Artwork

Bindings for .NET

The GStreamer bindings for the .NET framework, known as Gst# (gst-sharp), are implemented using C#, a modern object-oriented language defined by the ECMA-334 standard. However, applications making use of the bindings can be written in any language supported by the .NET runtime, including but not limited to C#, Visual Basic, Managed C++, Python, Perl, Java and JavaScript.

The bindings are generated in two steps by the Mono project's Gtk# code parser, which produces an intermediate XML representation of the API, and code generator which processes the XML to produce the bindings themselves. Few custom modifications are required to the code once generated, making it possible to provide up-to-date .NET bindings at the same time as every major and minor GStreamer release.

Gst# is still at an early stage of development so many areas of its functionality remain untested. In particular, users should not expect a stable API between releases.

The bindings are present in the module (gst-sharp) of Mono's CVS tree but there are currentl no released packages.

Gst# is being developed primarily on GNU/Linux using the Mono JIT runtime on x86. Users are encouraged to try different platforms and report the extent of their success.

Documentation and Examples

Gst# includes monodoc documentation, although it is currently very incomplete. A couple of examples are provided in the sample/ directory of the Gst# distribution.

Applications

There are only a handful of applications that make use of Gst# right now, but this situation is expected to improve as GStreamer and Mono continue to reach a wider audience.

  • Permovi - a home theatre PC system
  • Phonic - a music collection cataloguing system for GNOME2


Contact Information

Alp Toker
alp (at) atoker.com
Owen Fraser-Green
owen (at) discobabe.net



If there are any problems on this page, please contact thomas (at) apestaart (dot) org