2017-11-01 4 views
0

동물 연구를위한 무인 항공기의 카메라에서 FPV 영상을 스트리밍하기 위해 Raspberry를 통해 GStreamer를 사용하는 팀에서 일하고 있습니다. 범위 테스트를 수행 할 때 스트림을 잃을 때 정지되고 스트림이 돌아 왔을 때 실시간으로 멈출 때까지 가동 중지 시간이 빨라진다는 사실을 발견했습니다. 우리가 스트림을 다시 얻 자마자 실시간을 볼 수 있도록하려면 어떻게해야합니까?GStreamer : 연결이 끊어진 후 빠른 재생 제거

파이의 명령을 실행 :

raspivid -t 0 -h 730 -w 1296 -fps 25 -b 2000000 -o - | gst-launch-1.0 -v fdsrc ! h264parse ! rtph264pay config-interval=1 pt=96 ! gdppay ! tcpserversink host=YOUR-PI-IP-ADDRESS port=5000 

기본 컴퓨터의 명령 실행 :

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

답변

0

(this tutorial에서) 이야기하는 것은 쉽지 않다. 그것은 당신이 원하는 것과 아카이브하는 방법에 달려 있습니다. 선택한 프로토콜에 따라 기본적으로 데이터가 손실되지 않습니다. 그러나 분명히 설명 된 동작이 발생합니다. 아마도 PI에 데이터를 놓기를 원할 것입니다. 여기 버퍼의 옵션에 대해서는 gst-inspect-1.0 tcpserversink을 참조하십시오 (예 : buffers-max). 그러나 이것은 아마도 깨어진 비트 스트림을 초래할 것입니다. 그러면 키 프레임이 다시 도착할 때까지 수신기에서 왜곡 된 이미지가 나타납니다 (인코더 설정이이 설정을 정의합니다.이 경우 카메라에서 뭔가있을 수 있습니다).