2
파이썬으로 네트워크 비디오 스트림을 캡처하고 표시하려고합니다. 다음 명령을 사용하여 스트림이 생성되었습니다 (내 랩톱에서).파이썬으로 gstreamer 네트워크 비디오 캡처하기
gst-launch-1.0 v4l2src ! videorate ! video/x-raw,framerate=2/1,width=640,height=480 ! x264enc pass=qual quantizer=20 tune=zerolatency ! rtph264pay config-interval=10 pt=96 ! udpsink host=127.0.0.1 port=5000
UDP 카메라는 웹캠 입력을 받아 UDP 포트를 통해 스트리밍합니다. 나는 스트림을 캡처하고 다음 명령을 사용하여 표시 할 수 있습니다 : 지금은 파이썬 스크립트와 같은 (캡처) 할 노력하고 있어요
gst-launch-1.0 udpsrc port=5000 ! "application/x-rtp, payload=127" ! rtph264depay ! avdec_h264 ! xvimagesink sync=false
하지만 부족하지.
import gi
gi.require_version('Gst', '1.0')
from gi.repository import Gst
udpPipe = Gst.pipeline("player")
source = Gst.ElementFactory.make('udpsrc', None)
source.set_property("port", 5000)
source.set_property("host", "127.0.0.1")
rdepay = Gst.ElementFactory.make('rtph264depay', 'rdepay')
vdecode = Gst.ElementFactory.make('avdec_h264', 'vdecode')
sink = Gst.ElementFactory.make('xvimagesink', None)
udpPipe.add(source, rdepay, vdecode, sink)
gst.element_link_many(source, rdepay, vdecode, sink)
udpPipe.set_state(gst.STATE_PLAYING)
내가 점점 오전 오류는 다음과 같습니다 :
/usr/lib/python2.7/dist-packages/gi/overrides/Gst.py:56: Warning: /build/glib2.0-prJhLS/glib2.0-2.48.2/./gobject/gsignal.c:1674: parameter 1 of type '<invalid>' for signal "GstBus::sync_message" is not a value type
Gst.Bin.__init__(self, name=name)
/usr/lib/python2.7/dist-packages/gi/overrides/Gst.py:56: Warning: /build/glib2.0-prJhLS/glib2.0-2.48.2/./gobject/gsignal.c:1674: parameter 1 of type '<invalid>' for signal "GstBus::message" is not a value type
Gst.Bin.__init__(self, name=name)
Traceback (most recent call last):
File "getUdp.py", line 13, in <module>
source = Gst.ElementFactory.make('udpsrc', None)
File "/usr/lib/python2.7/dist-packages/gi/overrides/Gst.py", line 217, in make
return Gst.ElementFactory.make(factory_name, instance_name)
TypeError: unbound method fake_method() must be called with ElementFactory instance as first argument (got str instance instead)
어떤 아이디어가 여기 내 코드는? :-(
. 난 당신이 볼 am Python 2.7을 사용한다. I. 파이썬 3 환경에서 Gst를 테스트 해 보았습니다. 이제 파이썬 2 응용 프로그램에서 구현하고이 오류가 발생했습니다. 나는 이것이 어떻게 고정 될 수 있는지 아직 확신하지 못한다. 하지만 어쨌든 응용 프로그램을 Python 3에 이식 할 계획이었습니다. 그러나 그것은 시간이 걸릴 것입니다. 그것이 작동하고 나는이 링크를 잊어 버리지 않았다면 나는 당신에게 업데이트를 줄 것이다. – exhuma