|
|
@ -59,7 +59,7 @@ webrtcbin name=sendrecv bundle-policy=max-bundle stun-server=stun://stun.l.googl |
|
|
|
if platform == 'raspberry': |
|
|
|
PIPELINE_DESC = ''' |
|
|
|
webrtcbin name=sendrecv bundle-policy=max-bundle stun-server=stun://stun.l.google.com:19302 |
|
|
|
rpicamsrc bitrate=600000 annotation-mode=12 preview=false ! video/x-h264,profile=constrained-baseline,width=640,height=360,level=3.0 ! queue max-size-time=100000000 ! h264parse ! |
|
|
|
rpicamsrc bitrate=2000000 keyframe-interval=25 exposure-mode=sports annotation-mode=12 preview=false name=rpicamsrc ! video/x-h264,profile=baseline,width=1280,height=720,framerate=49/1,level=3.0 ! queue max-size-time=100000000 ! h264parse ! |
|
|
|
rtph264pay config-interval=-1 name=payloader ! |
|
|
|
application/x-rtp,media=video,encoding-name=H264,payload=96 ! sendrecv. |
|
|
|
audiotestsrc is-live=true wave=red-noise ! audioconvert ! audioresample ! queue ! opusenc ! rtpopuspay ! |
|
|
@ -129,6 +129,12 @@ class WebRTCCamera(Thread): |
|
|
|
self._peers[client_sid]['webrtc'] = webrtc |
|
|
|
webrtc.connect('on-negotiation-needed', self.on_negotiation_needed, client_sid) |
|
|
|
webrtc.connect('on-ice-candidate', self.on_ice_candidate, client_sid) |
|
|
|
|
|
|
|
if platform == 'raspberry': |
|
|
|
rpicamsrc = pipeline.get_by_name ("rpicamsrc") |
|
|
|
#rpicamsrc.set_property("annotation-mode", 1) |
|
|
|
#rpicamsrc.set_property("annotation-text", "Saturation %d" % (saturation)) |
|
|
|
|
|
|
|
pipe.set_state(Gst.State.PLAYING) |
|
|
|
|
|
|
|
def close_pipeline(self, client_sid): |
|
|
|