Flask video streaming?

Есть задача: получем фото post запросом, затем размещаем его на веб странице с MIME:x-mixed-replace(технология стриминга через http).
Раньше фото бралось с веб-камеры в функции get_frame напрямую и все работало.
Сейчас - белое окно на месте, где должно быть видео.

from flask import Flask, render_template, Response, request
import cv2

app = Flask(__name__)
img = b''

@app.route('/')
def index():
    return render_template('index.html')


@app.route('/get_frame', methods=['GET', 'POST'])
def get():
    img = request.data
    return "OK"


def get_frame():
	while True:
		stringData=img
		yield (b'--frame\r\n'
			b'Content-Type: text/plain\r\n\r\n'+stringData+b'\r\n')


@app.route('/calc')
def calc():
	return Response(get_frame(),mimetype='multipart/x-mixed-replace; boundary=frame')

	 
if __name__ == '__main__':
	app.run(host='0.0.0.0', debug=True, port=6789)
  • Вопрос задан
  • 1469 просмотров
Решения вопроса 1
@Dnomin Автор вопроса
переменная img не может быть использована в разных функциях, из-за flask'a. Заносил изображение в memcashed и все заработало.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
de-iure
@de-iure
just a crazy lawyer
а вы cv2 не используете?... не от этого ли у вас белое окно...
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы