OBS および Spout ループバック
ループバックは、1 台のマシン上で実際のキャプチャ パスをテストするのに役立ちます。
期待される結果は遅延であり、即時応答ではありません。たとえば、送信側のアバターが最初に移動し、次にデコードされたアバターが OBS またはキャプチャ遅延の後に続く必要があります。
送信者のパス
- エンコーダ出力のレンダリング テクスチャを割り当てます。
- スクリーンスペースまたはカメラ出力パスを通じて TSMP 出力を表示します。
- 表示される出力を Spout に送信します。
- OBS にまだ Spout ソース タイプが表示されていない場合は、OBS Spout2 プラグインをインストールします。
- OBS に Spout ソースを追加します。
- Spout 送信元設定から TSMP 送信者を選択します。
- OBS が TSMP 領域をスケーリングまたはフィルタリングしていないことを確認します。
OBS には、デフォルトの組み込みソースとして Spout ソースが含まれていません。一般的なオプションは OBS Spout2 プラグインで、Spout 入出力サポートを OBS に追加します。
OBS プレビューには、TSMP フレーム全体が表示されます。プレビューで上部のヘッダー領域が切り取られると、デコードは失敗します。
受信側パス
- OBS 出力をテクスチャ ソースにフィードバックします。
- そのテクスチャを
TSMPDecoderに割り当てます。 - Luma4 設定を送信者と互換性のある状態に保ちます。
Apply Setupを実行します。TSMPDebugCanvasを見てください。
OBS をテストするときは、元のエンコーダのレンダー テクスチャをデコーダに割り当てないでください。これにより、検証しようとしているパスがバイパスされます。
推奨される最初のテスト
TSMPNetworkGameObjectToggle を使用します。
RPCTarget.All を使用すると、送信者はすぐに切り替える必要があります。 OBS 遅延の後、デコードされた RPC は再び切り替わります。これは、RPC メッセージがテクスチャ パスを通過していることを証明します。
ローカル切り替えは機能するが、遅延切り替えは機能しない場合:
- TX
rpcが増加するはずです。 - RX
rpcは遅延後に増加するはずです。 - RX フレーム損失は低く抑えられるはずです。
- 受信側オブジェクトは同じネットワーク ID を持つ必要があります。
予想される動作
ループバックが動作している場合:
- エンコーダのフレーム インデックスが増加します。
- デコーダ フレーム インデックスは遅延後に続きます。
- 受信側の変換またはアバターは、OBS によって導入された遅延を伴います。
- CRC 警告は表示されません。
- 損失は低く抑えられます。
- データが変更されている場合、ペイロードとメッセージの数はゼロ以外になります。
受信機が動かない場合
チェック:
- OBS は TSMP の画像を表示しています。
- OBS には、インストールされたプラグインを通じて利用できる Spout ソースがあります。
- レシーバ入力テクスチャは、エンコーダ テクスチャではなく、OBS 出力です。
- TSMP フレーム全体が表示され、切り取られません。
- デコーダ
header=yesおよびvalid=yes。 - デコーダ
msgはゼロより大きい。 - 受信機コンポーネントが有効になっており、受信補間が
Noneではありません。 Apply Setupは、受信コンポーネントを追加した後に実行されました。
動きが遅れたり途切れたりする場合
多少の遅れが予想されます。途切れ途切れの動きは通常、次のことを意味します。
- OBS または受信機がフレームをドロップしています。
- エンコーダのフレーム レートがトランスポートで伝送できる速度を超えています。
- ペイロードが容量に近づいています。
- 受信コンポーネントは、
Discreteの方が見栄えが良いContinuousモードを使用しています。
ビジュアル設定を変更する前に、デバッグ キャンバスを使用してください。