はじめに: ストリーミングとは、パッケージ化されたコンテンツを収集段階でサーバーに送信するプロセスを指します。実際、これはライブビデオ信号をネットワークに送信するプロセスです。オンライン調査、対話とインタビュー、オンライントレーニング、その他のコンテンツは、現場のインターネット上に掲載されます。直感、スピード、形式の良さ、豊富なコンテンツ、強力な双方向性、制限のない地域、分割可能な視聴者などのインターネットの特性を活用し、イベント会場のプロモーション効果を強化します。ライブ ブロードキャストの終了後、読者はいつでもリプレイやオンデマンド ブロードキャストを提供し続けることができるため、ライブ ブロードキャストの時間と空間が効果的に拡張され、ライブ ブロードキャスト コンテンツの価値が最大化されます。
歴史襲撃者:
sanic: API インターフェースを介してコンピューターのスクリーンショットまたはビデオを撮影します。
Python+ADB スクリーンショット、画面記録、ログキャプチャ
依存ライブラリをインストールします。
pip install flask opencv-python
手順:
1. 新しいファイルを作成します:app.py
# -*- coding: utf-8 -*-
# time: 2023/4/26 10:28
# file: app.py
# 公众号: 玩转测试开发
from flask import Flask, render_template, Response
import cv2
app = Flask(__name__)
camera = cv2.VideoCapture(0) # 使用默认摄像头
def gen_frames():
while True:
success, frame = camera.read()
if not success:
break
else:
ret, buffer = cv2.imencode('.jpg', frame)
frame = buffer.tobytes()
yield (b'--frame\r\n'
b'Content-Type: image/jpeg\r\n\r\n' + frame + b'\r\n')
@app.route('/video_feed')
def video_feed():
return Response(gen_frames(), mimetype='multipart/x-mixed-replace; boundary=frame')
@app.route('/')
def index():
return render_template('index.html')
if __name__ == '__main__':
app.run(debug=True)
2. 新しいディレクトリ: templatesを作成します。
3. 新しいファイルindex.htmlをテンプレートに作成します。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>实时视频推流</title>
</head>
<body>
<h1>实时视频推流</h1>
<img src="{
{ url_for('video_feed') }}" alt="实时视频">
</body>
</html>
4. 次のコマンドを実行して Flask サーバーを起動します。
python app.py
ブラウザで http://127.0.0.1:5000/ を開くと、リアルタイムのビデオ ストリームが表示されます。
リアルタイム ビデオ ストリームを表示するには、プレーヤーを使用することをお勧めします。オープン ソースの HTML5 ビデオ プレーヤーである video.js を使用するか、CDN を使用できます。
注: この例は、ローカル開発環境でのみ機能します。実稼働環境にデプロイする場合は、ニーズに合わせて設定を調整してください。