|
 |
Multiplatform
GStreamer has been ported to a wide range of operating systems, processors and compilers. This include but are not limited to Linux on i86,PPC, ARM using GCC. Solaris on x86 and SPARC using both GCC and Forte, MacOSX, Microsoft Windows using MS Visual Developer and IBM OS/400.
Comprehensive Core Library
- Graph-based structure allows arbitrary pipeline construction
-
Based on
GLib 2.0
object model for object-oriented design and inheritance
- Compact core library of less than 500KB, about 65 K lines of code
- Multi-threaded pipelines are trivial and transparent to construct
-
Clean and simple
API for both
plugin and application developers
- Extremely lightweight data passing means very high performance/low latency
-
Complete
debugging system
for both core and plugin/app developers
- Clocking to ensure global inter-stream synchronization (a/v sync)
- Quality of service (qos) to ensure best possible quality under high CPU load
Intelligent Plugin Architecture
-
Dynamically loaded
plugins provide elements and media types, demand-loaded via an XML registry,
similar to ld.so.cache
-
Element interface
handles all known types of sources, filters, sinks
-
Capabilities system
allows verification of element compatibility using MIME types and
media-specific properties
-
Autoplugging uses
capabilities system to complete complex paths automatically
-
Pipelines can be saved to
XML and loaded back to working state
- Resource friendly plugins don't waste RAM
Extensive Development Tools
GStreamer is rapidly approaching a stable API. There is still a number of
items on our TODO list.
|
 |