Ismerete bevezetése gstreamer

Ismerete bevezetése gstreamer

lemondás

Sokan már hallottam, hogy van olyan dolog, mint a GStreamer, vagy látott az Ubuntu és hasonló eloszlást hez telepíteni a különböző csomagok, akiknek a neve tartalmazza a „gstreamer” volt az első kísérlet arra, hogy játsszon mp3, vagy bármely más, a „nem szabad” formátumban média . Így fogom leírni ezt a könyvtárat.

Gstreamer van egy plug-in architektúra és a standard csomagnak van egy nagyon nagy sor plugin, amely képes megoldani 99% -a az igényeinek minden multimédiás szoftver fejlesztő.

építészet

A Gstreamer több fő összetevőből áll:

  • elemek
  • pads
  • Bin konténerek és csővezeték

És most a részleteket:

Ismerete bevezetése gstreamer

Szinte minden Gstreamer egyik eleme. Minden, a hagyományos forrásokból folyamok (filesrc, alsasrc, és m. P.), processzorok folyamok (demultiplexerek, dekóderek, szűrők, és m. P.) a végső kimeneti eszközök (alsasink, fakesink, filesink, és m. N ) ..

Ismerete bevezetése gstreamer

Pad - ez a fajta a lényeg az összekötő elem egy másik elemmel, ha egyszerűbb - ez csínját-bínját az elem. ezek általában nevezik «mosogató» - belépési és «src» - kimenet.
Elements mindig van legalább egy pad. Például filesrc - egy elem adatok olvasására fájlrendszer - csak egy pad úgynevezett «src», azaz ő bemenet, és csak be az áramlás a fájlrendszer belső reprezentáció, amely már működik más elemeket ... Hasonlóképpen alsasink elem, akkor van egy pad úgynevezett «mosogató», azaz. K. Ez csak akkor kap áramot a belső és a kimeneti azt a hangkártya keresztül alsa. Elemei a mentesítési «szűrők» (akik valahogy átalakult flow) két vagy több kapcsolódási pontot. Például térfogati elemnek pad nevű «mosogató», amely megkapja az áramlás ezen az elemen belül átalakul (hangerő változás), és ezen keresztül a pad a neve «src» már folytatja útját. Emellett vannak olyan elemek, amelyek valamelyest mind be- és kimenetek.

konténerek

Ismerete bevezetése gstreamer
A tartály belsejében elemek töltenek életciklusuk során. A tartály kezeli az üzenetek elküldésére sejtről sejtre, kezeli a status elemekkel. A konténerek két csoportba sorolhatjuk:

Hogyan működik

Vegyünk egy példát, egy primitív rendszer a játékos. A legegyszerűbb lejátszó program kell kinéznie:

Ismerete bevezetése gstreamer

Nézzük meg, mi történik itt. filesrc elem beolvassa a fájlt a rendszer, és elküldi az áramlás a tartály decodebin, ami dekódolja a patak a belső ábrázolása, és ezt követően elküldi az áramot alsasink elem, amely szintén elküldi az audio stream a hangkártya. Ennek ellenőrzésére a kör elegendő az, hogy a csapat

És ha hallja a csengőhangot, akkor minden rendben van.

jegyzetek
  • GST-dob-1.0 segédprogram jön csomagolt gstreamer1.0 szerszámok
  • Abban az esetben, használja OSS / Jack / stb Ez a rendszer sikertelen lehet. Ezért alsasink autoaudiosink helyettesíteni lehet egy olyan elemet, majd válassza ki a kívánt elemet kimeneti audio.

Mi a következő lépés?

A jövőben azt tervezi, hogy írjon egy cikksorozatot, amely megvizsgálja a különböző elemek és azok képességeit, valamint a kód példák valós használat Gstreamer lehetőség nyílik.