0
私はピラミッドフレームワークを使用して私のウェブカメラをストリーミングしようとしていましたが、生成されるオブジェクトはジェネレータオブジェクトであり、ビューを渡すと、 (/ video_feed)しかし、それは多くの遅れている。誰でも?ピラミッドフレームワーク:Opencvを使用したストリームカメラ
ここ
from pyramid.response import Response
from pyramid.view import view_config
from sqlalchemy.exc import DBAPIError
from ..models import MyModel
import cv2
class VideoCamera(object):
def __init__(self):
self.video = cv2.VideoCapture(0)
def __iter__(self):
return self
def close(self):
self.video.release()
def get_frame(self):
success,image = self.video.read()
ret, jpeg = cv2.imencode('.jpg', image)
return jpeg.tobytes()
__next__=get_frame
@view_config(route_name='home', renderer='templates/stream.jinja2')
def my_view(request):
return {'project': 'my_project'}
def generate(camera):
while True:
frame = camera.__next__()
yield (b'--frame\r\n'
b'Content-Type: image/jpeg\r\n\r\n' + frame+ b'\r\n\r\n')
@view_config(route_name="video_feed")
def video(request):
return Response(app_iter=generate(VideoCamera()),content_type="multipart/x-mixed-replace; boundary=frame")
ヘルプのためのコードのブロックです!