1

こんにちは、raspberry pi からリモート PC へのマルチメディア ストリーミングに gstreamer を使用しています。ラズベリーパイでこれらのパイプラインを使用しています

raspivid -t 0 -h 720 -w 1080 -fps 25 -hf -b 2000000 -o - | gst-launch-    1.0 -v fdsrc ! 
h264parse !  rtph264pay config-interval=1 pt=96 ! gdppay ! tcpserversink host=YOUR_RPI_IP_ADDRESS port=5000. 

私のPCでは、このコマンドを使用してストリームを表示しています

gst-launch-1.0 -v tcpclientsrc host=YOUR_RPI_IP_ADDRESS  port=5000  ! gdpdepay !  
rtph264depay ! avdec_h264 ! videoconvert ! autovideosink  
sync=false 

Pythonコードを使用してPCでストリームを表示したいと思います.pygstを調べ始めましたが、これを達成する方法がわかりません.誰かがこれを手伝ってください.

4

1 に答える 1

0

python3/Gst1.*/Gtk3 の場合、pygst は基本的に非推奨です。GObject イントロスペクション APIに移行する必要があります。このような例はたくさんあります

Python で動作する gstreamer パイプラインの最も簡単な例は次のとおりです。

import gi

gi.require_version('Gst', '1.0')
gi.require_version('Gtk', '3.0')

from gi.repository import Gst, Gtk

Gst.init(None)


pipeline = Gst.parse_launch('playbin uri=file:///path/to/my/video.ext')

pipeline.set_state(Gst.State.PLAYING)

Gtk.main()

Gst.parse_launch を使用して、gst-launch と同様にパイプラインを宣言的に指定できます。パイプラインの作成/機能をさらに制御する必要がある場合は、プログラムで作成する必要があります。この場合、詳細と例について GStreamer のドキュメントを読む必要があります。

このチュートリアルのように、通常は GTK のウィンドウ内にビデオ出力を埋め込みたいと思うでしょう。

于 2016-07-04T14:11:03.453 に答える