OpenCV ガイドリポジトリ
DWE.ai カメラ向けの完全なソースコードとサンプルプロジェクトを GitHub で確認できます。
特徴
- 生の RTP/UDP: GStreamer や外部依存関係は不要です。
- 高解像度: 1080p 30fps 以上のストリームに最適化されています。
- 10 ビット対応: 10 ビット YUV 4:4:4(
yuv444p10le)および標準の 8 ビット形式を扱えます。 - 低レイテンシ: バックグラウンドの受信スレッドとマルチスレッドのデコードを使用します。
- モジュラー設計: ネットワーク処理、デコード、表示ロジックを分離しています。
前提条件
- Python 3.8 以上
- FFmpeg ライブラリ(通常は PyAV 経由で自動的にインストールされます)
インストール
リポジトリ内の3-receive-dweos-h264/python ディレクトリに移動し、環境をセットアップします:
-
仮想環境を作成します:
-
必要な依存関係をインストールします:
使い方
- H.264 RTP ストリームを開始します(デフォルトは
127.0.0.1:5600)。 - 受信側を実行します:
プロジェクト構成
rtp_receiver.py: 生の UDP パケット受信と H.264 NAL の再構成(FU-A および STAP-A を含む)を処理します。h264_decoder.py: 高性能な H.264 デコードのために PyAV をラップします。main.py: 受信側とデコーダを OpenCV ウィンドウに接続するメインエントリポイント。