我有一个关于流电影(720p)的小项目。在Python Flask中,谁能给我一个示例,说明如何从python flask中的本地磁盘流式传输视频。因此它会在首页上播放可以使用哪些功能。
谢谢
答案 0 :(得分:1)
Miguel Grinberg 在他的博客上写了一篇很棒的文章Video Streaming with Flask。
正如他所说并很好解释的那样,使用Flask进行流媒体就是这么简单:
app.py
<html>
<head>
<title>Video Streaming Demonstration</title>
</head>
<body>
<h1>Video Streaming Demonstration</h1>
<img src="{{ url_for('video_feed') }}">
</body>
</html>
index.html :
fold
所有详细信息都在文章中。
从那里...
对于您而言,工作已大大简化:
要流式传输预先录制的视频,您只需将视频文件作为 常规文件。例如,您可以使用ffmpeg将其编码为mp4,或者 您想要更复杂的东西可以编码 多分辨率HLS流。无论哪种方式,您都只需要为 静态文件,则不需要Flask。
答案 1 :(得分:0)
您可能遇到过手动解决方案,但是Flask已经具有帮助程序功能,可以轻松地流式传输媒体文件。
您需要使用send_from_directory
https://flask.palletsprojects.com/en/1.1.x/api/#flask.send_from_directory中的helpers.py
方法
您可以像这样使用它:
@app.route("/movies", methods=["GET"])
def get_movie():
return send_from_directory(
app.config["UPLOAD_FOLDER"],
"your_movie.png",
conditional=True,
)