第 3章基礎

この章では、GStreamer の基本的なコンセプトについて紹介します。このマニュアルの残りの部分では、この章で取り上げる GStreamer の基本的なコンセプトを理解していることを前提としており、まずこれらのコンセプトを理解することが重要です。

3.1. エレメント

エレメント (element) は、GStreamer のオブジェクトの中で最も重要なクラスです。通常、プログラマは複数のエレメントを互いにリンクさせてチェインを作成し、このエレメントのチェインの中をデータが流れていくようにします。エレメントは特定の機能を 1 つ持っています。この機能は、ファイルからデータを読み取る機能であったり、読み取ったデータをデコードする機能であったり、またはデータをサウンドカード (またはその他の任意の出力先) に出力する機能であったりします。プログラマは、こうしたエレメントをいくつか並べてチェインさせることで、メディアの再生やキャプチャなど、特定の作業を行うことができるパイプライン (pipeline) を作成することになります。GStreamer にはデフォルト状態で非常に多くのエレメントが用意されており、幅広い種類のメディアアプリケーションを開発することが可能になっています。必要なら、独自に新しいエレメントを記述することもできます。この点については、『Plugin Writer's Guide』に詳しい説明があります。