Achtung! dieser Artikel wurde nicht von einem Muttersprachler geschrieben. Bitte das bei Kritik berücksichtigen. Ich (bed) habe nur die rudimentäre Grammatik und Syntax angepasst.

Da ich noch öfter auf gstreamer  zugreifen werde,  glaube ich es hat auch Sinn, darüber ein Artikel zu schreiben.

Gstreamer ist ein Mediaframework. Seine Modularität macht ihn zu etwas besonderem. Jede moderne Distribution nutzt Gstreamer. Es steht hinter Totem, Rythmbox, Cheese, Banshee, Empathy (audio/video chat) und vielen anderen. Wer sich damit beschäftigt, kann auch helfen in genannten Programmen Fehler finden.

In der Regel nutzt man Gstreamer als Library für C, C++, C# oder Python. Man kann es aber auch als Bashscript ansetzen. Dafür gibt es gst-launch (oder in manchen Distros gst-launch-0.10) - ursprünglich diente dieser Befehl als Debuger für Gstreamer interne Sachen. Falls Totem kein Video abspielt, kann man es mit gst-launch prüfen, ob Gstreamer oder Totem daran schuld ist.

Nun, lange Rede kurzer Sinn. Lass uns ein wenig KungFu üben:

gst-launch fakesrc ! fakesink

Gstreamer arbeitet mit Elementen. fakesrc und fakesink sind diese Elementen. Man verbindet die mit Ausrufezeichen "!".

gst-launch audiotestsrc ! pulsesink

Hiermit erzeugen wir ein Audiotestsignal und leiten es durch Pulseaudio auf den Lautsprecher.

gst-launch videotestsrc ! autovideosink

Hiermit erzeugen wir ein Videotestsignal und zeigen es auf dem Schirm.

gst-launch videotestsrc ! autovideosink audiotestsrc ! pulsesink

Und so machen wir beides gleichzeitig.

Um herauszufinden welche Elementen uns zu Verfügung stehen, gibt es den Befehl gst-inspect. Ohne weitere Optionen zeigt es alle Elemente und Formate. In Verbindung mit einem Element wird es Bedienungsanleitung zeigen: gst-inspect pulsesink.

Nun zum Schluss ein Beispiel  für Audioaufnahme:

gst-launch pulsesrc ! vorbisenc ! oggmux ! filesink location=test.ogg

Den zu Entschlüsseln ist jetzt eure Aufgabe.

5 Kommentare

Linear

  • macdet  

    kurz · knapp · bündig · sehr gut!

    meckern können alle!

  • dakira  

    Hi. So muesste es doch auch moeglich sein bspw. ein Skype-Gespraech mitzuschneiden, oder? Nur... reicht pulsesrc als Tonquelle, wenn man sowohl Mikrofon, als auch die Tonausgabe aufzeichnen moechte?

    btw.. es heisst "Elemente" (ohne "n").

    • Alexey Fisher  

      Ja es reicht. Ich werde es in einen von nächsten Artikeln beschreiben

  • Pa_trick17  

    Hallo.

    Toller Artikel - lädt zum Spielen ein. Was mir beim Spielen aufgefallen ist: Der letzte Befehl sollte wohl mit 'gst-launch' statt mit 'gst-inspect' anfangen.

    Ich freu mich auf folgende Teile!

    Gruß

    Pa_trick17

    • Alexey Fisher  

      Danke. Korrigiert.

Kommentar schreiben

Die angegebene E-Mail-Adresse wird nicht dargestellt, sondern nur für eventuelle Benachrichtigungen verwendet.

Um maschinelle und automatische Übertragung von Spamkommentaren zu verhindern, bitte die Zeichenfolge im dargestellten Bild in der Eingabemaske eintragen. Nur wenn die Zeichenfolge richtig eingegeben wurde, kann der Kommentar angenommen werden. Bitte beachten Sie, dass Ihr Browser Cookies unterstützen muss, um dieses Verfahren anzuwenden.
CAPTCHA

Standard-Text Smilies wie :-) und ;-) werden zu Bildern konvertiert.
BBCode-Formatierung erlaubt
Markdown-Formatierung erlaubt