GStreamer

GStreamer on sovelluskehys multimediaohjelmistojen tekemiseen. GStreamer on toteutettu enimmäkseen C-kielellä. GStreamerin pluginit on julkaistu GNU LGPL -lisenssillä ja lisäksi joissakin tapauksissa käytetään lisäehtoa, jolloin GNU GPL-lisensoituja ohjelmia voi levittää yhdessä GStreamerin kanssa.

GStreamer toimii useimmilla merkittävillä käyttöjärjestelmillä joita ovat Linux, Android, Mac OS X, Windows, iOS sekä useimmat BSD-johdannaiset sekä kaupalliset Unixit, Solaris ja Symbian. GStreameria voidaan suorittaa useimmilla merkittävillä laitteistoarkkitehtuureilla mukaan lukien x86, ARM, MIPS, SPARC ja PowerPC 32- ja 64-bittisinä versioina. Se on siirretty useille käyttöjärjestelmille, suorittimille ja kääntäjille.

Sovereign Tech Fund (STF) on rahoittanut projektia jotta osat siitä kirjoitettaisiin uudestaan Rust-kielellä. STF:n rahoittaja on Saksan hallituksen Bundesministerium für Wirtschaft und Klimaschutz, joka on rahoittanut myös GNOME-projektia.

 Käyttö 
GStreamer on sisältynyt GNOME-työpöytäympäristöön julkaisusta 2.2 lähtien. GNOME suosittelee GSteamerin hyödyntämistä GNOME- ja GTK+ -sovelluksissa.

GStreamer on käytössä myös Nokian Internet Tablet -laitteissa Nokia 770, N800, N810 ja N900.

 Tekniikka 
GStreamer voi kytkeytyä toisiin multimediakehyksiin olemassa olevien komponenttien käyttämiseksi:
 OpenMAX-IL (Linux/Unix)
 DirectShow (Windows)
 QuickTime (Mac OS X)

Heinäkuussa 2021 kerrottiin kokeellisesta tuesta Vulkan Video -laajennukselle. Vulkan Video -tukea on kehitetty myös FFmpeg ja Mesa 3D -kirjastoissa.
Myös Intelin VA-API-rajapinnalle on kehitetty tukea. Vulkan-tuki H.264 ja H.265 -dekoodaukselle julkaistiin versiossa 1.24. Versiossa 1.26 on lisätty tuki H.266, LCEVC ja JPEG XS -koodekeille.

GStreamer sisältää ohjelmointirajapinnan (API) sovelluksille, arkkitehtuurin laajentamiselle, mediatyyppien tunnistamisen, synkronointimekanismin ja lisäosia sekä työkaluja. Lisäosat jaetaan protokollan, lähteen, mediatyypin, koodekin, suodattimen ja kohteen (sink) mukaan. GStreamer jaetaan useissa paketeissa, joita ovat ydinpaketti, plugins-base, plugins-good, plugins-ugly, plugins-bad ja libav-tuki. Plugins-paketit ovat jaettu sen mukaan, miten laadukkaita koodekkien toteutukset ovat tai onko jakelemisessa mahdollisesti lisenssien yhteensopivuuden kanssa ongelmia.

 Lähteet 

 Aiheesta muualla 
 GStreamer imaging pipeline configuration (PDF) 

Luokka:Multimediaohjelmistot
Luokka:Vapaat ohjelmistot
Luokka:Freedesktop.org