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.
kurz · knapp · bündig · sehr gut!
meckern können alle!
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").
Ja es reicht. Ich werde es in einen von nächsten Artikeln beschreiben
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
Danke. Korrigiert.