#include <subscriber.h>

データフィールド
void * ユーザーデータ
void(* on_rtc_stats_report )(otc_加入者 *subscriber, void *ユーザーデータ, const char *json_array_of_reports)
void * 予約済み

詳細な説明

サブスクライバーのRTC統計レポートのコールバックを設定するための構造体を定義します。

関連項目 : otc_subscriber_set_rtc_stats_report_cb.

現場記録

on_rtc_stats_report

void(* on_rtc_stats_report) (otc_加入者 *subscriber, void *ユーザーデータ, const char *json_array_of_reports)

サブスクライバーのRTC統計レポートを取得するためのコールバック関数を定義します。

パラメータ : | | | | --- | --- | | subscriber | この呼び出しを実行するインスタンス。 | | user_data | この構造体にバインドされたユーザーカスタムデータへのポインタ。 | | json_array_of_reports | サブスクライバーのストリームに関する RTC 統計レポートの配列。この JSON 配列の構造は、Web ブラウザで実装されている RtcStatsReport オブジェクトの形式と類似しています(参照: Mozillaのドキュメント). こちらも参照 このW3Cドキュメント. |

以下にその一部を例として示します:

   [
      {
         "audioLevel": 0,
         "id": "RTCAudioSource_1",
         "kind": "audio",
         "timestamp": 1603448671532842,
         "totalAudioEnergy": 0,
         "totalSamplesDuration": 4.249999999999954,
         "trackIdentifier": "4nP5yeIDzbUm6IJho5jkTps1lnfabsFvTXjH00",
         "type": "media-source"
     },
     {
         "base64Certificate":
"MIIBFjCB...QIhAMIfr/NgvhNp16zaoHxGQGrID1STFmBSSSB4V1bxBrTU", "fingerprint":
"E7:5F:...:FA:5A:1F:A7:E0:55:60", "fingerprintAlgorithm": "sha-256", "id":
"RTCCertificate_E7:5F:E5...F:1D:FA:5A:1F:A7:E0:55:60", "timestamp":
1603448671532842, "type": "certificate"
     },
     {
         "channels": 1,
         "clockRate": 8000,
         "id": "RTCCodec_audio_Inbound_0",
         "mimeType": "audio/PCMU",
         "payloadType": 0,
         "timestamp": 1603448671532842,
         "type": "codec"
     },
     {
         "channels": 2,
         "clockRate": 48000,
         "id": "RTCCodec_audio_Inbound_111",
         "mimeType": "audio/opus",
         "payloadType": 111,
         "sdpFmtpLine": "minptime=10;useinbandfec=1",
         "timestamp": 1603448671532842,
         "type": "codec"
     },
   ]

ユーザーデータ

void* user_data

この構造体にバインドされたユーザー定義データへのポインタ。