GstreamerをDM368 Leopardboard *で動作させようとしています。テストビデオ(videotestsrc)を作成し、エンコードし、ファイルにダンプするように成功させました。
働いたパイプは次のとおりです。
gst-launch -v videotestsrc num-buffers=100 ! queue ! ffenc_mpeg4 bitrate=800000 ! ffmux_mp4 ! filesink location=video_test.mp4
次のステップでは、ネットワークを介してテストカードをストリーミングするようにパイプを変更し、VLCを搭載したPCでrtsp:// ip_addr:port/streamnameのようなものを使用して表示します。これは一見非常に薄い(そしてしばしば時代遅れ)ように見え、例はそれを行うソースコードとコマンドラインの方法を曖昧にしているようです。
私は、問題の50%以上がGstreamerとそのさまざまな部分に慣れていないことを自由に認めるでしょう。私は、もし最初から実際の例があれば、それを棒で突いて残りを解決できることを常に発見しました。そこから。
私はこれまで持っています:
gst-launch -v videotestsrc ! queue ! ffenc_mpeg4 bitrate=800000 ! rtpmp4vpay ! tcpserversink Host=<PC_ip> port=5000
VLCでsomethingが発生するようです(tcp:// board_ip:portを使用)-何かがあると思うようです進行中(エラーをスローしません)が、何も再生/表示しません。 gstプロセスを中断(^ C)すると、VLCが通知します。
それで、基本的に-どんなガイダンス/フィードバックも素晴らしいでしょう、働く1ライナーは素晴らしいでしょう。
編集して追加します:はいtest_video.cの例がありますが、それは特別なプログラムをコンパイルして、単に呼び出すことができるように見えるようにしますコマンドラインから概念を証明します。
* = Linux version 2.6.32-17-ridgerun /CPU: ARM926EJ-S
最後に、ここで実際の例を見つけました:
ただし、VLC用の.SDPファイルを作成し、IPアドレスを指定する必要があります。これは、実際にはどのようにしたいかではありません...
ソース :RTPとは異なり、RTSPサーバーはRTPサーバーとクライアント間の接続をオンデマンドでネゴシエートします( Link )。 gst-rtsp-server はgstreamerプラグインではなく、独自のRTSPアプリケーションを実装するために使用できるライブラリです。次のテストケースは、Ubuntu 12.04.5マシンに適用されました。
autoconf automake autopoint libtool
_およびその他の欠落している必須ビルドツールをインストールしますgit clone git://anongit.freedesktop.org/gstreamer/gst-rtsp-server && cd gst-rtsp-server
_git checkout remotes/Origin/1.2
_./autogen.sh --noconfigure && GST_PLUGINS_GOOD_DIR=$(pkg-config --variable=pluginsdir gstreamer-plugins-bad-1.0) ./configure && make
(何らかの理由で、GST_PLUGINS_GOOD_DIRはpkg-configによって設定されないため、明示的に設定します)cd examples && ./test-launch "( videotestsrc ! x264enc ! rtph264pay name=pay0 pt=96 )"
rtsp://Host_IP:8554/test
_)によってリモートでストリームにアクセスできます(たとえば、VLCを使用)。プロセスの最後に問題がありました。次のようなものです。
私はこの投稿で解決策を見つけました:
そして、それは完全に機能しました!!!