2017-03-16 42 views

答えて

2
Hero4で

以降あなたはこのURLを取得することにより、UDPストリームを開始することができます

http://10.5.5.9/gp/gpControl/execute?p1=gpStream&a1=proto_v2&c1=restart 

これはでUDPストリームを開きます。この流れを読む

udp://10.5.5.9:8554 

は少しトリッキーです。 This Python scriptはFFMPEGを使用してストリームを開きます。このスクリプトが定期的に送信する「keep alive」メッセージに注意してください。これらのメッセージがなければ、カメラはすぐにストリーミングを停止します。

私は、このスクリプトの要素と、OpenCV VideoCaptureオブジェクトを使用して、プログラムでHero5セッションからストリームにアクセスしています。関連するコードは次のようになります。

cap = cv2.VideoCapture("udp://:8554", cv2.CAP_FFMPEG) 
sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) 
last_message = time.time() 

while some_condition(): 

    # Get an image 
    ret, img = cap.read() 

    # Do something with img 
    cv2.imshow("My Window", img) 
    cv2.waitKey(1) 

    # Keep alive. 
    current_time = time.time() 
    if current_time - last_message >= keep_alive_period/1000: 
     logger.info("Sending keep alive message to %s.", self.host) 
     sock.sendto(message, ("10.5.5.9", 8554)) 
     last_message = current_time 

cv2.destroyWindow(window_name) 
cap.release() 

詳細情報here

関連する問題