質問・問題
Call Inspectorとは何ですか?
回答・解決方法
この記事では Agora Analytics の Call Inspector - コールインスペクター についてご紹介します。
Agora Analytics - Call Inspector とは
Agora Analytics の Call Inspector を利用すると、コール中に得られたSDKからの情報をもとに、以下のような通話の品質に関する情報を参照することができます。
- クライアント端末でのCPU使用率やアプリのCPU使用率などデバイスのステータス(Native SDKのみ)
- 配信側で録音された音量レベルと受信側での音量レベル、およびその配信・受信ビットレート
- 送受信された映像のフレームレート、解像度、ビットレート
- End-to-Endのパケット損失率
- オーディオとビデオのフリーズ(固まること)時間
- ユーザーイベントの概要(オーディオ送信停止や、ビデオの受信停止・再開など)
Call Inspectorの機能
Call Inspectorの機能は以下のとおりです。
- Call Search:通話記録を検索し、結果を一覧で表示します。
- Call Overview:単一の通話記録とその状況の概要を表示します。※Premium、Enterpriseのみ
-
Call Details:単一の通話記録とその状況の詳細を表示します。下記3つの機能があります。
-
Homepage: 「Call Details」をクリックして最初に表示されるページです。各ユーザーの基本的情報と、イベント(タイムラインごと)、音声・映像の品質を1画面で表示します。
-
End-to-End Details: 送信者と受信者ペアの通話品質とイベントを表示します。
-
Sender details: 単一の送信者の通話品質とイベントを提供します。
-
通話記録を検索する
Call Searchページにて、通話記録を検索します。
通話を検索するには、検索フィールドに入力します。
- Agora Consoleにログインし、ナビゲーションバーの左側にあるAgora Analyticsの下にあるCall Inspectorをクリックします。
- 左上隅にあるプロジェクトを選択します。
- 基本検索
- 検索時間枠を指定します。
- ドロップダウンメニューでチャンネル名などを入力します。
- コールの状態(Call Ended / Call in Progress)でフィルタリングします。
※Call Ended :終了済み、Call in Progress:進行中のコールを検索できます。
- アドバンス検索
- Advancedをクリックします。
- 追加の検索項目(ユーザID、通話時間、最大同時人数、freezeレート等)を入力します。
- Searchをクリックし、検索結果を表示します。
通話品質を確認する
Call Searchページにて該当の通話記録のCall Detailsをクリックすると、ACUが50人以上の場合、Call Overview、ACUが50人未満の場合、Call Details(HomePage)を表示します。
Call Overview
通話の全体状況を把握するための基本情報、例外の概要、品質メトリクスの統計を表示します。
※Premium、Enterpriseのみ
- Statistical insights:映像と音声のフリーズ状況。
- ACUが20人以上の場合のみ表示されます。
- >をクリックすると、 Detailed statisticsを表示します。
- Call experience (beta):例外事象(Diagnosis checklist items)の発生数。
- Host diagnosis (beta):配信者側の例外事象の発生数。
- Abnormal host (beta):ユーザーID、配信時間、例外の種類と共に表示した配信側の例外状況。
Detailed statistics
通話品質の統計情報をさまざまなグラフで表示します。
- Time selector:通話時間を絞り込みます。
- Top video freezing users/Video freeze details:映像フリーズ発生ユーザの上位ランキング。
- Top audio freezing users/Audio freeze details:音声フリーズ発生ユーザの上位ランキング。
- Trend tracking:PCU(最大同時接続数)、最大映像フリーズ発生率、最大音声フリーズ発生率。
- Metric Analysis:デバイス、ネットワークタイプ、SDKバージョン、OSの地域ごとの割合。
Call Details(HomePage)
ユーザー固有の品質問題や例外を探し出すための品質メトリクスを表示します。
ユーザーリスト
通話の参加したユーザの情報を表示します。
- ユーザの追加(②)
- ユーザID(UID)を入力し、Add Userをクリックします。
- ユーザの絞り込み(②)
- Advanced searchをクリックします。
- 検索項目を入力し、Searchをクリックします。
- 絞り込みたいユーザのみをチェックし、Saveをクリックします。
- ユーザのタイムライン、音声・映像の品質メトリクスの表示制御(③)
- View metricsをオンにすると、表示します。
-
View metricsをオフにすると、非表示になります。
※最大20名まで表示することができます。
- 通話時間の絞り込み(④)
- タイムラインバーの端を選択し、右または左に動かします。
- 絞り込みたい期間になるようにバーを調節します。
タイムラインビュー
ユーザのイベントと品質メトリクスをタイムラインビューベースで表示します。
- タイムラインビューでのイベントの確認
- 円の上にマウスを置くと、イベントログが表示されます。
- 右上のズームインまたはズームアウトのアイコンをクリックして、時間スケールを調整します。
- 右上のドロップダウンメニューを使用して、ログインとログアウト、ネットワーク送信、ビデオ送信、およびオーディオ送信を含む、1つまたは複数のイベントタイプを選択します。
- 右上のリストビューをクリックすると、リストビューに切り替わります。
リストビュー
ユーザのイベントと品質メトリクスをリストビューベースで表示します。
- リストビューでのイベント確認
- 右側のListViewをクリックします。
- 右上のドロップダウンメニューで、表示したいイベントタイプ(※)を選択します。
※login and logout, network transmission, video sending, video receiving, audio sending, audio receiving - 右上のTimeline viewをクリックすると、タイムライン表示に切り替わります。
映像、音声の品質メトリクス
絞り込んだ通話時間内のSender(送信者)、Receiver(受信者)の品質メトリクスを表示します。
Sender’s view(送信者ビュー)
- Sender(送信者)の確認
- Sender's viewをクリックします。
- 音声の品質メトリクスを確認したい場合、Audioをクリックします。
- 映像の品質メトリクスを確認したい場合、Videoをクリックします。
・折れ線グラフに赤い線が多く表示されている場合は、送信ストリームのパケットロス率が高い可能性があります。右上のView Sender Detailsをクリックすると、詳細ページに入ります。詳細はsender details pageを参照してください。
・右上にエクスクラメーションマークが表示されている場合、通話の品質に大きく影響する問題に遭遇している可能性があります。エクスクラメーションマークをクリックすると、このユーザーの通話診断(ベータ版)ページに入ります。詳細はView Call Diagnosis (Beta)を参照してください。
Receiver’s view(受信者ビュー)
- Receiver(受信者)の確認
- Receiver's viewをクリックします。
- 音声の品質メトリクスを確認したい場合、Audioをクリックします。
- 映像の品質メトリクスを確認したい場合、Videoをクリックします。
・折れ線グラフに赤い線が多く表示されている場合は、フリーズ事象が発生している可能性があります。右上のChoose a sender to view detailsをクリックし、送信側のUIDを選択すると、end-to-end detailsページに入ります。詳細はend-to-end detailsを参照してください。
・右上にエクスクラメーションマークが表示されている場合、通話の品質に大きく影響する問題に遭遇している可能性があります。エクスクラメーションマークをクリックすると、このユーザーの通話診断(ベータ版)ページに入ります。詳細はView Call Diagnosis (Beta)を参照してください。
End-to-end details
特定の送信者と受信者の音声とビデオの統計情報が表示されます。これらの統計は、コールの品質に影響を及ぼしたと推測される問題を特定する一助となります。
- Sender×Receiverの確認
※Automatic diagnosisは、通話の問題が発見された場合のみ表示されます。
- タイムラインビューを調整し、通話時間を絞り込みます。
- ユーザイベントを確認したい場合、Event listをクリックします。
- 音声の品質メトリクスを確認したい場合、Audioをクリックします。
- 映像の品質メトリクスを確認したい場合、Videoをクリックします。
- 品質メトリクスについて
詳細はUser-specific metricsを参照してください。
ビットレート
ビットレートは、1秒あたりに送受信されるデータ(ビット)の量です。
より高いオーディオ/ビデオビットレートは、より高いオーディオ/ビデオ品質を意味します。低ビットレートは必ずしも品質の問題を引き起こすわけではありませんが、非常に低いビットレートは、多くの場合、オーディオ/ビデオ品質が悪いことを意味します。
パケット損失
データはパケットと呼ばれる単位で送信されます。データ伝送では、パケットの一部が失われます。パケット損失率は、ネットワーク品質を反映した失われたパケットの割合です。
- 送信者のパケット損失率は、データを送信するパケット損失率です。
- 受信者のパケット損失率は、送信者から受信者へのパケット損失率です。
通常、パケット損失率が低いと、品質の問題は発生しません。高いパケット損失率(5%以上)は、ネットワーク品質が悪く、オーディオ/ビデオのフリーズやビデオのぼやけたビデオを引き起こす可能性があることを意味します。
フレームレート
フレームレートは、連続した画像(フレーム)がディスプレイに表示される周波数(レート)です。
フレームレートが高いほど、ビデオがスムーズになりますが、帯域幅とCPU使用率が高くなります。フレームレートが低いと、ビデオがフリーズする可能性があります。
解像度
解像度は、画像の幅と高さのピクセル数です。高解像度は、より鮮明なビデオを意味します。
デバイス状態
システムとアプリのCPU使用率、システムのビジー状態を示します。システムがビジー状態(CPU使用率が高い場合)、オーディオ/ビデオがフリーズする可能性があります。
Call Inspector のユースケース
ケース1:映像品質が悪いケース(送信側ネットワーク起因)
送信側のネットワークが原因で映像品質が悪いケースを想定します。エンドユーザー様からのお問い合わせとしては「Aさんからの映像がフリーズしたりぼやけたりする」といった形になります。
この場合、送信側(Sender)をAとし、受信側(Receiver)をBとする形で エンドツーエンドの詳細 を参照し原因分析が行えます。
上記のデータが得られたとして、このような分析ができます。(左がA拠点、右がB拠点とします)
- CPU使用率については、特に問題ない
- A拠点で多数のパケットロスが発生している(中央部にスパイクあり)
- B拠点でA拠点と同タイミングのパケットロスが多数見られる
- B拠点でパケットロスが発生したタイミングでフレームレート低下・ビデオのフリーズが発生している
上記の状況から、A拠点のパケットロスがB拠点での映像品質低下に影響を及ぼしていることがわかります。
ケース2:映像品質が悪いケース(受信側ネットワーク起因)
次に、受信側のネットワークが原因で映像品質が悪いケースを考えます。エンドユーザーからの問い合わせ内容としては「Aさんからの映像がフリーズしたりぼやけたりする」というもので、内容としてはケース1と同様であることも多々あります。そのため、同じ事象でも原因が異なることが多く、注意が必要となります。
この場合もケース1と同様、送信側(Sender)をAとし、受信側(Receiver)をBとする形で エンドツーエンドの詳細 を参照し原因分析が行えます。
今回のケースではこのように分析できます。(左がA拠点、右がB拠点とします)
- CPU使用率については、特に問題ない(低い)
- A拠点でパケットロスなどは発生しておらず、フレームレートも一定
- B拠点でパケットロスが多数見られる
- B拠点でフレームレート低下・ビデオのフリーズが発生している
上記の状況から、B拠点の不安定なネットワークが映像品質低下に影響を及ぼしていることがわかります。
まとめ
この記事では Agora Analytics の Call Inspector についてご紹介しました。より詳しく知りたい方は、Call Inspector (原文) を参照ください。また、Agora Analytics には複数のサブスクリプションプランが存在します。価格などの詳細については、担当営業にお問合せください。
合わせて、Agora Analyticsの情報のみで解決しない場合は、agora社に問合せをし詳細な解析を行うことも可能です。その際は、事象の内容、再現方法およびSDKログ(アプリ設定要)などの情報をご提供いただく必要がございますので、詳細は、[ログ解析を依頼したいのですが、どのような情報が必要でしょうか?]をご参照ください。