GStreamer についてちょっとだけ
GStreamer ???
GStreamer は、凝ったGUIを持ったものから、特定の形式の動画の再生をするだけといったシンプルなのものまで、様々なプレイヤーを作成できる。
マルチメディアのマルチプラットフォーム対応ライブラリです。
➔GStreamer: features
※ Windows, OS X, Linux 対応
iOS, Android でも使えます。
公式のドキュメント(サンプルやHowto)が充実しているので、
Google先生に頼らずに、勉強しやすいのも特徴(?)
バージョンについて
GStreamerには、0.10 と 1.0 の2つのバージョンがあり、
ネットでサンプルコードを探して出てくるものの多くが 0.10 です。(個人的な感想)
公式の Tutorial も 0.10 で書かれています。。。
また、debian wheezy (現在のstable) に入っている GStremaer は 0.10 のみですが、
次期 stable の jessie からは 1.0 も入れることが可能です。
どっちがいい?
ゴリゴリに使っている人じゃないので、正直わかりません。
ですが、1.0 をはじめとする、1.x 系は、公式でも "targeted at end users." と書かれてますし、 iOS や Android などで GStreamer を使いたい場合は 1.0 がいいかもしれません。
バグ修正や新規開発が進んでいるのも 1.x 系ですし…
違いは?
メジャーバージョンが変わっていることからもわかりますが、 0.10 と 1.0 の間にはAPIの互換性がありません。
マクロや関数に手がたくさん入っています。
開発環境内に 0.10 と 1.0 のライブラリを共存させることは可能ですが、
1つのプログラム内で併用するとかそういうヤバイことはやめたほうがいいと思います。(やったことない)
0.10 のサンプルしか見当たらない!
そんな時は 1.0 へ Porting するのが1つの手です。
Porting作業時に頼りになる公式ドキュメントがこちら
→ GStreamer 0.10 to 1.0 porting guide
ちなみに、公式の Tutorialのサンプルコードはすでに Porting されています。
→ http://cgit.freedesktop.org/~slomo/gst-sdk-tutorials/
Tutorial 内のコードと見比べながらサンプルコードを動かすと勉強になりそうですね。