Features of GStreamer 0.10 Technologies

From RidgeRun Developer Connection
Jump to: navigation, search

Features of GStreamer 0.10 Technologies

  • Thread-safe

Designed from the ground up to be a thread-safe framework. GStreamer 0.10 will work flawlessly on multi-CPU and hyper-threaded systems.

  • Pre-rolling and seeking improvements

GStreamer 0.10 implements pre-rolling. This means all your media playback applications will do instant start/stop, and 'video scrubbing' when seeking, and has accurate audio/video synchronisation.

  • RTP Suppport

GStreamer 0.10 includes great support for the RTP protocol and has payload encoders and decoders for a wide variety of formats.

  • Fraction based frame rates

GStreamer 0.10 specifies frame rates in fractions. This allows for correct specification of commonly used frame rates and allows elimination of rounding errors which could otherwise cause loss of synchronization.

  • No more manual registry maintenance

GStreamer 0.10 takes care of keeping its internal registry in sync automatically and should through that make life better for many of our users.

  • Better performance and smaller overhead

The GStreamer framework now has less overhead and higher performance than 0.8. Some benchmarks now show it running twice as fast. These speedups are especially an advantage for the use of GStreamer in embedded systems.

  • Improvements in clock handling

GStreamer new master/slave clock implementation allows for network clocks which will ensure, when implemented in your application, that even if you have multiple devices spread out on your network running GStreamer-based applications, they will be playing or recording fully synchronized with each other. GStreamer new clock selection algorithms makes sure the clocks of live sources are preferred over the clocks of sink elements, ensuring good results when decoding RTP streams, for instance.

  • Base classes

GStreamer 0.10 provides a set of element base classes which implement the common functionality of sinks, sources and transforms. They enable both easier plugin development and highly consistent behaviour between plug-ins of the same type.

  • New controller subsystem

GstController takes over from the DParams infrastructure of GStreamer 0.8. GstController provides timed parameter changes synchronised with the data stream. This means that having your applications do timed parameter adjustments on elements is easier than ever, for instance timing the cross fading of two audio or two video tracks.

  • Improved developer documentation

The GStreamer core now follows a policy of not allowing API additions without the new API being fully documented. All GStreamer plug-ins also generate documentation now, making it easier for developers and users to see what kind of plug-ins are available and what the plug-ins are capable of.