1

FaceTime カメラであるソース要素と udp シンクであるシンク要素を持つ、非常に単純な Gstreamer パイプラインを作成しようとしています。

まず、こちらの手順に従って Gstreamer をインストールします。基本的なパイプラインのいくつかは問題なく実行できました。ただし、次のコマンドを使用しようとしたとき

./gst-launch-0.10 v4l2src ! xviimagesink

次のエラーが発生しました。

ERROR: pipeline could not be constructed: no element "v4l2src".

だから私はいくつかの掘り下げを行い、v4l2src プラグインが gst-plugins-good にあることがわかりました。次のコマンドを使用して、macports を使用してこれらの優れたプラグインをインストールしました。

port install gst-plugins-good

非常に長い時間の後、すべてがエラーなしでインストールされました。gst-launch が 3 つの場所に表示されるようになりました。

/Library/Frameworks/GStreamer.framework/Versions/0.10/bin/gst-launch-0.10
/opt/local/bin/gst-launch
/opt/local/bin/gst-launch-0.10

これらのディレクトリのいずれかから上記のパイプラインを実行しようとすると、まだ取得されます

ERROR: pipeline could not be constructed: no element "v4l2src".

どこからでも次のコマンドを入力すると、さらにエラーが発生しますが、まだ v4lsrc が見つからないようです。

gst-launch v4l2src ! xviimagesink

与えます:

Dynamic session lookup supported but failed: launchd did not provide a socket path, verify that org.freedesktop.dbus-session.plist is loaded!
Dynamic session lookup supported but failed: launchd did not provide a socket path, verify that org.freedesktop.dbus-session.plist is loaded!
Dynamic session lookup supported but failed: launchd did not provide a socket path, verify that org.freedesktop.dbus-session.plist is loaded!
Dynamic session lookup supported but failed: launchd did not provide a socket path, verify that org.freedesktop.dbus-session.plist is loaded!
GConf Error: Failed to contact configuration server; some possible causes are that you need to enable TCP/IP networking for ORBit, or you have stale NFS locks due to a system crash. See http://projects.gnome.org/gconf/ for information. (Details -  1: Failed to get connection to session: Not enough memory)
ERROR: pipeline could not be constructed: no element "v4l2src".

そのため、GStreamer が混乱しているように見えますが、GStreamer が v4l2src を見つけられないため、カメラを動作させることができません。

いくつかの助けをいただければ幸いです!前もって感謝します。

4

2 に答える 2

7

v4l2srcは「video-for-linux (ver.2) ソース」を意味します。「linux」を実行していないので、「v4l2」を使用できないことはそれほど驚くべきことではありません。

を使用しようとするかもしれませんosxvideosrc(これは gstreamer-plugins-bad にあります)。

一般に、特定の機能を探している場合は、マシンにインストールされている要素を確認することをお勧めします。たとえば、次のようになります。

$ gst-inspect | grep -i video |grep -i source

ffmpegcolorspacePS: 通常、ビデオ ソースとシンクの間に色空間コンバーター ( など) を配置することをお勧めします。

于 2012-10-22T08:21:38.930 に答える
3

私にとって、MacPorts ( https://www.macports.org/ ) からのこれらの 2 つの作品:

GStreamer 1.0、applemedia: avfvideosrc: Video Source (AVFoundation)device-indexパラメーターを使用してデバイスを選択します (インデックスは接続順序によって異なります)。

bash-3.2# port install gstreamer1*

iCeDeROM:~ cederom$ gst-inspect-1.0 |grep video | grep src
inter:  intervideosrc: Internal video source
decklink:  decklinkvideosrc: Decklink Video Source
applemedia:  qtkitvideosrc: Video Source (QTKit)
applemedia:  avfvideosrc: Video Source (AVFoundation)
ximagesrc:  ximagesrc: Ximage video source
videotestsrc:  videotestsrc: Video test source
autodetect:  autovideosrc: Auto video source

GStreamer 0.10 ( autodetect: autovideosrc: 自動ビデオ ソース)

bash-3.2# port install gstreamer0*

iCeDeROM:~ cederom$ gst-inspect-0.10 |grep video | grep src
ximagesrc:  ximagesrc: Ximage video source
inter:  intervideosrc: FIXME Long name
gsettings:  gsettingsvideosrc: GSettings video src
gconfelements:  gconfvideosrc: GConf video source
autodetect:  autovideosrc: Auto video source
applemedia:  qtkitvideosrc: Video Source (QTKit)
applemedia:  miovideosrc: Video Source (MIO)
videotestsrc:  videotestsrc: Video test source

私はautovideosinkorosxvideosinkをテスト用に使用しています (2 番目は高速に動作し、最初は Xorg を使用します)。gst-inspect <module>モジュール情報に使用します。

于 2016-03-07T16:25:43.757 に答える