RTSP スケールと速度ヘッダーのデバッグ: 早送り、スローモーション、トリック プレイ、NVR 再生、およびサポートされていないレート
RTSP スケールおよびスピード ヘッダー、早送り、スロー モーション、NVR 再生、範囲インタラクション、サポートされていない再生レート、およびトリック プレイ カメラの動作をデバッグする方法
RTSP ライブ表示はすでに複雑ですが、録画再生では速度制御という別のレイヤーが追加されます。通常の再生は機能するが、早送り、逆再生、またはスロー再生が失敗する場合、ユーザーは「RTSP スケール ヘッダー」、「RTSP スピード ヘッダー」、「RTSP 早送りが機能しない」、「NVR トリック プレイ RTSP」、「RTSP 再生速度がサポートされていません」、および「RTSP スロー モーション カメラの再生」を検索します。
トリック プレイはコントロール プレーンの問題であるため、RTSP Inspector は便利です。クライアントは、Range、Scale、または Speed を指定して PLAY を送信し、サーバーはリクエストを受け入れる、クランプする、無視する、または拒否することができます。
スケールと通常の再生の比較
通常の再生は次のようになります。
PLAY rtsp://nvr/recording RTSP/1.0
Range: npt=0-
Trick play may add:
Scale: 2.0
またはサーバーのサポートに応じて別の料金がかかります。一部のサーバーは、選択された値のみをサポートします。サポートされていない値を無視するものもあります。実際に受け入れられるスケールを含む応答ヘッダーを返すものもあります。
よくある症状
失敗は次のように表示されます。
- 早送りボタンを押しても何も起こりません。
- ストリームが間違った時間にジャンプします。
- スケール要求後に再生がフリーズします。
- サーバーは「455 Method Not Valid in This State」を返します。
- サーバーは「457 無効な範囲」を返します。
- サーバーは「501 Not Implemented」を返します。
- サーバーは PLAY を受け入れますが、通常の速度を維持します。
- NVR は、早送り中にキーフレームのみを送信します。
- トリックプレイ中に音声が消えます。
これらは同じ失敗ではありません。正確なリクエスト ヘッダーとレスポンス ヘッダーが重要です。
範囲の相互作用
録画された RTSP の再生では、多くの場合、「レンジ」と「スケール」が組み合わされます。
例:
Range: npt=120-
Scale: 4.0
or:
Range: clock=20260603T010000Z-
Scale: 0.5
クライアントがサーバーがサポートしていない時刻形式を送信した場合、本当の問題は「範囲」であっても、失敗は速度の問題のように見える可能性があります。
サーバーの速度がクランプまたは書き換えられる
一部の NVR は離散値のみを受け入れます。
0.51.0- 「2.0」
4.0- 「8.0」
- キーフレームのみのモード
クライアントが「3.0」を要求した場合、サーバーは「2.0」または「4.0」を選択できます。適切なトレースでは、要求されたレートと、受け入れられた応答ヘッダーおよび実際の RTP タイミングが比較されます。
トリックプレイ中のオーディオの動作
多くのサーバーでは、早送りまたは逆再生中に音声が途切れます。オーディオは高速では意味のあるデコードができないため、これは予想されることかもしれません。
証拠:
- ビデオセットアップはアクティブなままです。
- 早送り再生後にオーディオ RTP が停止します。
- サーバーは音声の RTCP BYE を送信します。
- スケールが「1.0」に戻ると、オーディオ トラックが再開されます。
- SDP は引き続きオーディオをアドバタイズしますが、再生モードではそれが抑制されます。
RTSP 制御状態がチェックされるまで、これをパケット損失として診断しないでください。
キーフレームのみの早送り
NVR は多くの場合、高速再生中にキーフレームのみを送信します。これにより、帯域幅とデコード コストが削減されますが、RTP のリズムが変化します。
症状:
- ビデオがカクカクして見える。
- RTP ビットレートが低下します。
- フレームがまばらです。
- マーカービットのリズムが変化します。
- タイムスタンプは大きな間隔でジャンプします。
これは、ストリームの破損ではなく、正しいトリックプレイ動作である可能性があります。
逆再生非対応
逆再生は一般的にはサポートされていません。一部のサーバーは負のスケール値を拒否します。キーフレーム間をジャンプすることで逆再生をエミュレートするものもあります。
検索語:
- 「RTSP 逆再生はサポートされていません」
- 「RTSPマイナススケール」
- 「NVR巻き戻しRTSP」
- 「RTSP トリックプレイのみキーフレーム」
診断上の質問は、サーバーが要求されたレートを明示的に拒否したか、それともサイレントに動作を変更したかです。
デバッグチェックリスト
このプロセスを使用します。
- 動作中の通常速度PLAYをキャプチャします。
- トリックプレイPLAYをキャプチャします。
Range、Scale、およびSpeedヘッダーを比較します。- 応答ステータスコードを確認してください。
- 応答ヘッダーで受け入れられたレートを確認してください。
- RTP タイムスタンプのリズムを比較します。
- 音声が意図的に停止していないか確認してください。
- キーフレームのみのビデオの動作を探します。
- サポートされている離散速度をテストします。
- NVR ベンダーのサポートのために要求ヘッダーと応答ヘッダーを保存します。
最終診断
RTSP の早送り、スローモーション、トリック プレイの失敗は、制御ヘッダーとメディア タイミングを合わせて診断する必要があります。サーバーは、「Scale」と「Speed」を拒否、クランプ、無視、または部分的にサポートする場合があります。
RTSP Inspector は、問題がサポートされていない再生レート、範囲形式、NVR トリックプレイ ポリシー、音声抑制、またはクライアント解釈であるかどうかを証明するのに役立ちます。