ポートとネットワークの動作
Insightは、通常動作中に複数のポートを使用します。デフォルトのポートは、SDKコンテナー内または直接インストールされたDevKitで使用されるポートです。Neat開発環境では、SDKはこれらのサービスをホストポートに公開します。デフォルトのホストポートがすでに使用されている場合、sima-cliを使用して、別の利用可能なホストポートを割り当てることができます。

| ポートマップ名 | デフォルトのポートまたはポート範囲 | プロトコル | 目的 |
|---|---|---|---|
mainUI | 9900 | HTTPS/TCP | 主な Insight ウェブ UI、HTTP API、および HTTP MJPEG ストリーミングソース。 |
videoUI | 8081 | HTTPS/TCP | WebRTC ビデオビューアーのユーザーインターフェース。 |
rtsp.tcp | 8554 | RTSP/TCP | アップロードされたメディアから作成された、RTSP ストリーミングソース。 |
videoUDP | 9000-9079 | UDP | 動画 RTP 視聴者向けチャンネルに配信 0-79. |
metadataUDP | 9100-9179 | UDP | メタデータ JSON 視聴者向けチャンネルに配信 0-79. |
webRTC | 40000-40199 | UDP | WebRTC:メディアおよびメタデータ。vfからブラウザへのDataChannelによるデータ送信。 |
webSSH | 8022 | HTTPS/TCP | 利用可能な場合は、ペアリングされた DevKit にブラウザシェルを接続します。 |
実際の SDK ポートマップを見つけてください。
SDKでは、デフォルトのホストポートが利用可能であると仮定しないでください。次のコマンドを実行してください。
neat --json
出力には、insight.webUiUrl と、exposedPorts という配列が含まれます。
{
"exposedPorts": [
{"hostPortEnd": null, "hostPortStart": 9900, "name": "mainUI", "protocol": "tcp"},
{"hostPortEnd": 9179, "hostPortStart": 9100, "name": "metadataUDP", "protocol": "udp"},
{"hostPortEnd": null, "hostPortStart": 8554, "name": "rtsp.tcp", "protocol": "tcp"},
{"hostPortEnd": 9079, "hostPortStart": 9000, "name": "videoUDP", "protocol": "udp"},
{"hostPortEnd": null, "hostPortStart": 8081, "name": "videoUI", "protocol": "tcp"},
{"hostPortEnd": 40199, "hostPortStart": 40000, "name": "webRTC", "protocol": "udp"},
{"hostPortEnd": null, "hostPortStart": 8022, "name": "webSSH", "protocol": "tcp"}
],
"insight": {
"serviceState": "Running",
"venv": "/opt/neat-insight/venv",
"webUiUrl": "https://10.0.0.210:9900"
}
}
ホストポートが再マッピングされた場合、hostPortStartの値は、外部クライアントが使用すべきポートです。hostPortEndは、ビデオ、メタデータ、WebRTCなどのポート範囲に対して使用されます。
チャンネルマッピング
ビデオビューワーは、ペアになったビデオポートとメタデータポートを使用します。チャンネルについては、 N:
video: UDP 9000 + N
metadata: UDP 9100 + N
例:
| 視聴者チャンネル | ビデオポート | メタデータポート |
|---|---|---|
0 | 9000 | 9100 |
1 | 9001 | 9101 |
2 | 9002 | 9102 |
ビデオとメタデータのチャンネル番号を一致させてください。アプリケーションがチャンネル3にビデオを送信する場合は、対応するメタデータをチャンネル3のメタデータポートに送信してください。
SDK ポートマッピング
Neat 開発環境では、SDKコンテナーによってポートが再マッピングされる場合があります。Insight は、利用可能な場合にSDKポートマップ構成を読み込み、UIリンクがブラウザからアクセス可能なホストポートを指すようにします。
これは、特にビデオビューアーにとって重要です。内部のデフォルトビューアーポートは8081ですが、SDKがvideoUIを別のホストポートにマッピングする場合、ブラウザに表示されるポートが異なる場合があります。
URLが間違っていると仮定する前に、Insight UIのシステム情報を使用して、実際に公開されているポートを確認してください。