python实现视频的实时传送_使用Python在两台计算机之间传输实时视频

我正在尝试实时发送macbook air网络摄像头视频,并在另一台计算机上使用python接收视频。这样做的动机是能够将实时图像识别任务卸载到服务器上。服务器需要访问python中的实时视频帧,这样我就可以将这些帧传递给图像识别算法(一种深层神经网络)。在

我能够成功地使用https://github.com/atuldo/videoStream

它使用套接字库以字符串格式发送视频帧。但是,这个方法的结果是帧速率很低(代码片段见下文)。在

尝试1:from flask import Flask, render_template, Response

from camera import VideoCamera

app = Flask(__name__)

@app.route('/')

def index():

return render_template('index.html')

def gen(camera):

while True:

frame = camera.get_frame()

yield (b'--frame\r\n'

b'Content-Type: image/jpeg\r\n\r\n' + frame + b'\r\n\r\n')

@app.route('/video_feed')

def video_feed():

return Response(gen(VideoCamera()),

mimetype='multipart/x-mixed-replace; boundary=frame')

if __name__ == '__main__':

app.run(host='0.0.0.0', debug=True)

我还使用了这个https://github.com/log0/video_streaming_with_flask_example,它使用flask将视频流式传输到web页面。在chrome上看网页,它的帧速率比我的第一个解决方案好得多。但是,这个解决方案不接收python格式的视频,并且需要我从网页上读取视频,我不太清楚该怎么做。在

尝试2(我用cv2替换了原来的github代码中的pygame,以便能够访问我的mac网络摄像头):

^{pr2}$

视频流显示在网页上,如下所示:

Video Streaming Demonstration

Video Streaming Demonstration

我怎样才能用这两种方法中的任何一种获得高帧速率,或者有更好的方法来实现这一点?在

你可能感兴趣的:(python实现视频的实时传送)