/var/log/messages

Sep 5, 2014 - 1 minute read - Comments - Linux

gstreamer マニュアルかくにん

自分メモ、ということで控えを以下に。

  • GstElement は gst_element_factory_make という手続きを使う
  • element の参照カウントが 0 になると解放される
  • GObject て何
  • gst-inspect の出力にはファクトリ名が含まれる
  • gst-inspect にファクトリ名を渡すとプロパティが出力される
  • wavenc という plugin があるな、Encode raw audio into WAV とのこと
  • gstreamer0.10-plugins-good は入れておくべきな模様

ええと、マイク入力から wav に、なソレとしては

gst-launch alsasrc ! wavenc ! hoge

みたいなカンジになるのかどうか。

あら

コマンドとして実行しなくても一つのプログラムとして記述できるのか。

結局

plugin writer’s guide なるソレを確認中です。とりあえず以下を実行してたりなんかして。

$ git clone git://anongit.freedesktop.org/gstreamer/gst-template.git

gst-plugin/src 配下のソレ達が plugin なソースの雛形らしい。

filesync というプラグイン

名前付きパイプ使って云々、という策を思いつくなど。

その後

alsa な USB マイクから入力した音を wav にエンコードしてファイル化することはできました。まず aplay -l でデバイス確認して以下。

$ sudo gst-launch alsasrc device=hw:1 ! wavenc ! filesink location=xx.wav

あるいはフォーマットをアレするのであれば以下な例が man に書いてあるようです。

$ gst-launch osssrc ! 'audio/x-raw, rate=[32000,64000],
  format={S16LE, S24LE, S32LE}' ! wavenv ! filesink location=xx.wav

Building a Plugin 再読

Chapter 2 から読んだ方が良さげ。つうか GObject 云々、ってあたりからスデに蕁麻疹がorz

gstreamer 試してみた 肉を茹でる最強メソド

comments powered by Disqus