ONVIF インターコム機能のディスカッション
序文
この記事では、onvif インターコム機能について質問をして共有する方法を試みます。
1. onvif インターコム機能は onvif プロトコルと密接に関連していますか?
onvif インターコム機能は、実際には onvif プロトコルとはほとんど関係がありません。インターコム機能は主に rtsp プロトコルを使用して実装されます。DESCRIBE インタラクション要求メッセージに Require: www.onvif.org/ver20/backchannel フィールドを含めることで、 rtsp プロトコルを介してクライアントに送信し、双方向接続の確立を要求するか、データ リバース チャネルを使用して rtsp 接続を確立してみます。メッセージから、
track4 がオーディオを表すことがわかり、後続のリクエストは track4 を中心に行われ、interleaved=2-3; もオーディオを表します。
デバイスがインターコム機能をサポートしている場合は、DESCRIBE フェーズで成功を返しますが、サポートしていない場合は、応答エラー コード 551 オプションがサポートされていません。その後、クライアントはバックチャネルなしで RTSP 接続の確立を試みることができます。
2. デバイスが onvif インターコム機能をサポートしていることを報告するにはどうすればよいですか?
これは確かに問題です。公式ドキュメントからは、onvif インターコム機能セットがレポートに使用するインターフェイスとフィールドについて明確な言及がないためです。ただし、rtsp リバース チャネルに接続する場合、次の説明が記載されています。赤い
ボックス 説明から、オーディオ機能のレポートに関連していることがわかります。どのような機能がレポートされるか、オーディオ デコード機能とサポートされているオーディオ デコード パラメーター、つまり、デバイスが言語インターコム機能をサポートしているかどうか、実際にはオーディオ ストリームを再生する必要がありますが、デバイスがオーディオ出力をサポートしていない場合は、インターコム機能について話す必要はありませんが、間違いなくサポートされません。
3. onvif プロトコルのどのインターフェイスがオーディオ デコード設定を報告しますか?
オーディオ デコードの取得に関連するインターフェイスは次のとおりです: GetAudioDecoderConfigurationOptions、GetAudioDecoderConfigurations;
GetAudioDecoderConfigurationOptions インターフェイスは、オーディオ フォーマット、ビット レート、サンプリング周波数情報など、デバイスのオーディオ デコードがサポートするフォーマット情報を取得でき、この情報に基づいて判断できます。サンプルメッセージは次のとおりです。
Request:
POST /onvif/media2 HTTP/1.1
Host: 172.16.33.173
Content-Type: application/soap+xml; charset=utf-8
Content-Length: 313
<?xml version="1.0" encoding="utf-8"?>
<s:Envelope xmlns:s="http://www.w3.org/2003/05/soap-envelope">
<s:Body xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<GetAudioDecoderConfigurationOptions xmlns="http://www.onvif.org/ver20/media/wsdl" />
</s:Body>
</s:Envelope>
Request:
POST /onvif/media2 HTTP/1