如何使用视频标记将视频从localhost流式传输到web浏览器?

2024-10-01 05:05:57 发布

您现在位置:Python中文网/ 问答频道 /正文

基本上,我希望在本地主机上,使用Flask、OpenCV或FFmpeg将视频流传输到浏览器

但我不知道怎么做

我试过这个:

#!/usr/bin/env python
from flask import Flask, render_template, Response
import cv2
import sys
import numpy

app = Flask(__name__)

def get_frame():
    c=cv2.VideoCapture("output.mkv")

    while True:
        retval, im = c.read()
        imgencode=cv2.imencode('.jpg',im)[1]
        stringData=imgencode.tostring()
        yield (b'--frame\r\n'
            b'Content-Type: text/plain\r\n\r\n'+stringData+b'\r\n')

    del(c)

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


if __name__ == '__main__':
    app.run(host='localhost',port=5000, debug=True, threaded=True)

但它不起作用。可能是因为它正在发送图像。如何流式传输视频


Tags: nameimporttrueappflaskgetresponsedef