video_feed
时间: 2024-08-21 17:02:54 浏览: 25
`Flask` 提供了一个内置的 `video_feed` 功能来支持流式视频传输[^1]。这个功能通常用于实现 HTTP 实时视频流,它基于 `multipart/x-mixed-replace` 或其他流媒体协议,如 HLS 或 RTMP。创建一个 `video_feed` 路由的基本示例如下:
```python
from flask import Response, stream_with_context
@app.route('/video_feed')
def video_feed():
def generate():
while True:
# 模拟实时视频帧数据
frame_data = "Video Frame Data" # 替换成实际的视频帧数据
yield (b'--frame\r\n'
b'Content-Type: image/jpeg\r\n\r\n' + frame_data.encode('utf-8') +
b'\r\n') # 图片结束符
return Response(stream_with_context(generate()), mimetype='multipart/x-mixed-replace; boundary=frame')
```
在这个示例中,`generate` 函数是一个无限循环,每次迭代都会发送一个新的视频帧到客户端。每个帧的数据会被编码为 JPEG 并添加适当的 MIME 标头。