TRTC Web SDKはWebRTCに基づき実現され、現在、デスクトップとモバイル端末の主流ブラウザをサポートしています。サポートレベルの詳細については下の表をご参照ください。
お客様のユースケースは対応表に記載されていない場合は、TRTC Web SDK機能テスト画面を開けて、現在の環境がWebRTCのすべての機能をサポートしているかどうかをチェックすることができます。例えば、WebViewなどのブラウザ環境。
OS | ブラウザタイプ | ブラウザの最低 バージョン要件 |
SDKのバージョン要件 | 受信(再生) | 送信(マイク・オン) | 画面共有 |
---|---|---|---|---|---|---|
Windows | デスクトップ版Chromeブラウザ | 56+ | - | サポートあり | サポートあり | Chrome72以降のバージョンをサポート |
デスクトップ版QQブラウザ(超高速コア) | 10.4+ | - | サポートあり | サポートあり | サポートなし | |
デスクトップ版Firefoxブラウザ | 56+ | v4.7.0+ | サポートあり | サポートあり | Firefox66以降のバージョンをサポート | |
デスクトップ版Edgeブラウザ | 80+ | v4.7.0+ | サポートあり | サポートあり | サポートあり | |
デスクトップ版Sogouブラウザ(高速モード) | 11+ | v4.7.0+ | サポートあり | サポートあり | サポートあり | |
デスクトップ版Sogouブラウザ(互換モード) | - | - | サポートなし | サポートなし | サポートなし | |
デスクトップ版Operaブラウザ | 46+ | v4.7.0+ | サポートあり | サポートあり | Opera60以降のバージョンをサポート | |
デスクトップ版360セキュリティブラウザ(超高速モード) | 13+ | v4.7.0+ | サポートあり | サポートあり | サポートあり | |
デスクトップ版360セキュリティブラウザ(互換モード) | - | - | サポートなし | サポートなし | サポートなし | |
デスクトップ版WeChat内蔵ブラウザ | - | - | サポートあり | サポートなし | サポートなし | |
デスクトップ版WeChat Work内蔵ブラウザ | - | - | サポートあり | サポートなし | サポートなし | |
Mac OS | デスクトップ版Safariブラウザ | 11+ | - | サポートあり | サポートあり | Safari13以降のバージョンをサポート |
デスクトップ版Chromeブラウザ | 56+ | - | サポートあり | サポートあり | Chrome72以降のバージョンをサポート | |
デスクトップ版Firefoxブラウザ | 56+ | v4.7.0+ | サポートあり | サポートあり | Firefox66以降のバージョンをサポート(注意[3]) | |
デスクトップ版Edgeブラウザ | 80+ | v4.7.0+ | サポートあり | サポートあり | サポートあり | |
デスクトップ版Operaブラウザ | 46+ | v4.7.0+ | サポートあり | サポートあり | Opera60以降のバージョンをサポート | |
デスクトップ版WeChat内蔵ブラウザ | - | - | サポートあり | サポートなし | サポートなし | |
デスクトップ版WeChat Work内蔵ブラウザ | - | - | サポートあり | サポートなし | サポートなし | |
Android | WeChat内蔵ブラウザ(TBSコア) | - | - | サポートあり | サポートあり | サポートなし |
WeChat内蔵ブラウザ(XWEBコア) | - | - | サポートあり | サポートあり | サポートなし | |
WeChat Work内蔵ブラウザ | - | - | サポートあり | サポートあり | サポートなし | |
モバイル版Chromeブラウザ | - | - | サポートあり | サポートあり | サポートなし | |
モバイル版QQブラウザ | - | - | サポートなし | サポートなし | サポートなし | |
モバイル版UCブラウザ | - | - | サポートなし | サポートなし | サポートなし | |
iOS 12.1.4+ | WeChat内蔵ブラウザ | - | - | サポートあり | サポートなし | サポートなし |
iOS 14.3+ | WeChat内蔵ブラウザ | 6.5+(WeChatバージョン) | - | サポートあり | サポートあり | サポートなし |
iOS | WeChat Work内蔵ブラウザ | - | - | サポートあり | サポートなし | サポートなし |
iOS 11.1.2+ | モバイル版Safariブラウザ | 11+ | - | サポートあり | サポートあり | サポートなし |
iOS 12.1.4+ | モバイル版Chromeブラウザ | - | - | サポートあり | サポートなし | サポートなし |
iOS 14.3+ | モバイル版Chromeブラウザ | - | - | サポートあり | サポートあり | サポートなし |
注意:
- H.264 の著作権上の制限により、Huawei Chrome 88 より前のバージョンは H264 エンコーディングを使用できません(つまり、ストリームをプッシュできません)。HuaweiデバイスのChromeブラウザで TRTC Web SDK を使用してストリームをプッシュするには、チケットを提出し、VP8コーデックの有効化を申請してください。
- Mac OSでのFirefoxの画面共有機能はあまり効果的ではなく、現時点では対処方法もありません。そのため、画面共有にはChromeまたはSafariの使用をお勧めします。
- Web端末でのプッシュ時にステレオコーデックのサポートをご希望の場合は、チケットを提出 のグループ内テクニカルサポートに連絡し、WebRTCステレオコーデック機能を有効にしてください。
- 製品の安定性を高め、より良いオンラインサポートをご利用いただくために、TRTC Web SDKを速やかに最新バージョンに更新することをお勧めします。バージョンのアップグレードに関する注意事項については、アップグレードガイドラインをご参照ください。
ブラウザセキュリティポリシーの制限により、WebRTC機能を使用したページへのアクセスプロトコルには厳しい要件があります。以下の表を参照してアプリケーションの開発とデプロイを行ってください。
ユースケース | プロトコル | 受信(再生) | 送信(マイク・オン) | 画面共有 | 備考 |
---|---|---|---|---|---|
本番環境 | HTTPSプロトコル | サポートあり | サポートあり | サポートあり | 推奨 |
本番環境 | HTTPプロトコル | サポートあり | サポートなし | サポートなし | |
ローカル開発環境 | http://localhost | サポートあり | サポートあり | サポートあり | **推奨 |
ローカル開発環境 | http://127.0.0.1 | サポートあり | サポートあり | サポートあり | |
ローカル開発環境 | http://[ローカルマシンIP] | サポートあり | サポートなし | サポートなし | |
ローカル開発環境 | file:/// | サポートあり | サポートあり | サポートあり |
初期化フローおよびAPIの使用法の詳細については、以下のガイドをご参照ください。
機能 | Sample Codeガイド |
---|---|
基本的なオーディオビデオ通話 | ガイドリンク |
Interactive Live Video Broadcastingマイク接続 | ガイドリンク |
カメラおよびマイクの切り替え | ガイドリンク |
ローカルビデオのプロパティの設定 | ガイドリンク |
ローカルオーディオまたはビデオの動的な停止| ガイドリンク | |
画面共有 | ガイドリンク |
音量計測 | ガイドリンク |
カスタマイズキャプチャとカスタマイズ再生レンダリング | ガイドリンク |
ルーム内アップリンクユーザー数の制限 | ガイドリンク |
バックグラウンドミュージックと効果音の実装ソリューション | ガイドリンク |
通話前の環境およびデバイステスト | ガイドリンク |
通話前のネットワーク品質テスト | ガイドリンク |
デバイス挿抜動作のチェック | ガイドリンク |
CDNへのプッシュの実現 | ガイドリンク |
ビッグスモールストリームの伝送を有効にする | ガイドリンク |
美顔を有効にする | ガイドリンク |
ウォーターマークを有効にする | ガイドリンク |
ルーム間マイク接続の実現 | ガイドリンク |
クラウドミクスストリーミングの実装 | ガイドリンク |
クラウドレコーディングの実装 | ガイドリンク |
説明:
- その他の機能についてはクリックして確認してください。
- よくあるご質問については、Web端末に関するご質問をご参照ください。
注意:このドキュメントは4.x.xバージョンのTRTC Web SDKに適用されます。
TRTCはTRTC Web SDKのメインエントリーで、TRTCメソッドによってTRTCのクライアントオブジェクト(Client)とローカルオーディオビデオストリーミングオブジェクト(Stream)を作成することができます。また、TRTCメソッドはブラウザの互換性や、画面共有をサポートするかをチェックしたり、ログレベルやログのアップロードを設定したりすることもできます。
API | 説明 |
---|---|
VERSION | TRTC Web SDKバージョン番号。 |
checkSystemRequirements | ブラウザがTRTC Web SDKと互換性があるかをチェックします。現在のブラウザとTRTC Web SDKとの互換性がない場合は、Chromeブラウザの最新バージョンをダウンロードすることをお勧めします。 |
isScreenShareSupported | ブラウザが画面共有をサポートするかをチェックします。画面共有ストリームを作成する前に、このメソッドを呼び出して、現在のブラウザが画面共有をサポートするか確認してください。 |
isSmallStreamSupported | プラウザがビッグスモールストリームモードをサポートしているかをチェックします。ビッグスモールストリームモードを有効にする前にこのメソッドを呼び出して、現在のブラウザがビッグスモールストリームモードの有効化をサポートしているかをチェックしてください。 |
getDevices | メディアの入出力デバイスリストを返します。 |
getCameras | カメラのデバイスリストを返します。 |
getMicrophones | マイクのデバイスリストを返します。 |
getSpeakers | スピーカーのデバイスリストを返します。 |
createClient | 入退室、オーディオビデオストリーミングのリリースとサブスクリプションのため、TRTCのクライアントオブジェクトを作成します。 |
createStream | ローカルストリーミングStreamオブジェクトを作成します。ローカルストリーミングStreamオブジェクトはpublish()メソッドによってローカルオーディオビデオストリーミングをリリースします。 |
ログ出力レベルの設定、ログのアップロードを起動または停止を含むログの設定方法を提供します。
API | 説明 |
---|---|
setLogLevel | ログ出力レベルを設定します。 |
enableUploadLog | ログのアップロードを起動します。 |
disableUploadLog | ログのアップロードを停止します。 |
オーディオビデオ通話のクライアントオブジェクトClientはcreateClient()によって作成し、オーディオビデオセッションを表します。
API | 説明 |
---|---|
setProxyServer | プロキシサーバーを設定します。このメソッドは、nginx+coturnソリューションなど、企業が自分でプロキシサーバーをデプロイする場合に適用されます。 |
setTurnServer | TURNサーバーを設定します。このメソッドはsetProxyServer()と合わせて使用し、企業が自分でプロキシサーバーおよびTURN中継をデプロイする場合に適用されます。 |
join | オーディオビデオ通話ルームに参加し、入室によってオーディオビデオ通話セッションが始まります。ルームが存在しない場合、システムが自動的に新しいルームを作成します。 |
leave | 現在のオーディオビデオ通話ルームを退出し、オーディオビデオ通話セッションを終了します。 |
publish | ローカルのオーディオビデオストリーミングをリリースします。このメソッドはjoin()で入室後に呼び出す必要があり、1回のオーディオビデオセッションで1度だけローカルストリーミングをリリースすることができます。 |
unpublish | ローカルストリーミングのリリースを取り消します。 |
subscribe | リモートストリーミングをサブスクリプションします。 |
unsubscribe | リモートストリーミングのサブスクリプションを取り消します。 |
switchRole | ユーザーロールを切り替えます。‘live’でInteractive Live Video Broadcastingモードの時のみ有効になります。 |
on | クライアントオブジェクトイベントを監視します。 |
on | クライアントオブジェクトイベントの監視を取り消します。 |
getRemoteMutedState | 現在のルーム内にいるリモートユーザーのオーディオビデオのmute状態リストを取得します。 |
getTransportStats | 現在のネットワーク伝送状況統計データ表を取得します。 |
getLocalAudioStats | 現在リリース済みのローカルストリーミングのオーディオ統計データを取得します。このメソッドはpublish()後に呼び出す必要があります。 |
getLocalVideoStats | 現在リリース済みのローカルストリーミングのビデオ統計データを取得します。このメソッドはpublish()後に呼び出す必要があります。 |
getRemoteAudioStats | 現在のすべてのリモートストリーミングのオーディオ統計データを取得します。 |
getRemoteVideoStats | 現在のすべてのリモートストリーミングのビデオ統計データを取得します。 |
startPublishCDNStream | 現在のクライアントのオーディオビデオストリーミングのCDNへのリリースを開始します。 |
stopPublishCDNStream | 現在のクライアントのオーディオビデオストリーミングのCDNへのリリースを停止します。 |
startMixTranscode | ミクスストリーミングトランスコードを開始し、入室してプッシュした後にこのインターフェースを呼び出してください。 |
stopMixTranscode | ミクスストリーミングトランスコードを停止します。ローカルストリーミング(publish)が正常にリリースされ、ミクスストリーミングトランスコードstartMixTranscodeが正常に開始された後にこのインターフェースを呼び出してください。 |
enableAudioVolumeEvaluation | 音量のコールバックをオンまたはオフにします。 |
enableSmallStream | プッシュ端末でビッグスモールストリームモードをオンにします。 |
disableSmallStream | プッシュ端末でビッグスモールストリームモードをオフにします。 |
setSmallStreamProfile | スモールストリームのパラメータを設定します。 |
setRemoteVideoStreamType | 視聴端末でビッグスモールストリームの属性を切り替えます。リモートでスモールストリームをオンにする場合のみ正常に切り替えられます。 |
LocalStreamローカルオーディオビデオストリーミングは、createStreamで作成します。Streamのサブカテゴリーになります。
API | 説明 |
---|---|
initialize | ローカルのオーディオビデオストリーミングオブジェクトを初期化します。 |
setAudioProfile | オーディオProfileを設定します。このメソッドはinitialize()を呼び出す前に呼び出す必要があります。 |
setVideoProfile | ビデオProfileを設定します。このメソッドはinitialize()を呼び出す前に呼び出す必要があります。 |
setScreenProfile | 画面共有Profileを設定します。このメソッドはinitialize()を呼び出す前に呼び出す必要があります。 |
setVideoContentHint | ビデオコンテンツのヒントを設定します。主に、さまざまなシーンにおけるビデオコーデック品質の向上に用いられます。このメソッドはinitialize()の呼び出し完了後に呼び出す必要があります。 |
switchDevice | メディアの入力デバイスを切り替えます。 |
addTrack | オーディオまたはビデオのトラックを追加します。 |
removeTrack | ビデオトラックを削除します。 |
replaceTrack | オーディオまたはビデオのトラックを変更します。 |
play | このオーディオビデオストリーミングを再生します。 |
stop | オーディオビデオストリーミングの再生を停止します。 |
resume | オーディオビデオの再生を再開します。 |
close | オーディオビデオストリーミングを終了します。 |
muteAudio | オーディオトラックを無効にします。 |
muteVideo | ビデオトラックを無効にします。 |
unmuteAudio | オーディオトラックを有効にします。 |
unmuteVideo | ビデオトラックを有効にします。 |
getId | Streamの固有識別IDを取得します。 |
getUserId | このストリームが属するユーザーIDを取得します。 |
setAudioOutput | 音声出力デバイスを設定します。 |
getAudioLevel | 現在の音量を取得します。ローカルストリーミングまたはリモートストリーミングにオーディオデータがある場合のみ有効となります。 |
hasAudio | オーディオトラックが含まれているかどうか。 |
hasVideo | ビデオトラックが含まれているかどうか。 |
getAudioTrack | オーディオトラックを取得します。 |
getVideoTrack | ビデオトラックを取得します。 |
getVideoFrame | 現在のビデオフレームを取得します。 |
on | Streamイベントを監視します。 |
off | Streamイベントの監視を取り消します。 |
リモートオーディオビデオストリーミングは、Client.on('stream-added')イベントの監視によって取得します。これはStreamのサブカテゴリーになります。
API | 説明 |
---|---|
getType | リモートストリーミングのタイプを取得します。主に1つのリモートストリーミングがメインオーディオビデオストリーミングかサブビデオストリームかを判断することに用いられます。サブビデオストリームは通常、画面共有ストリームです。 |
play | このオーディオビデオストリーミングを再生します。 |
stop | オーディオビデオストリーミングの再生を停止します。 |
resume | オーディオビデオの再生を再開します。 |
close | オーディオビデオストリーミングを終了します。 |
muteAudio | オーディオトラックを無効にします。 |
muteVideo | ビデオトラックを無効にします。 |
unmuteAudio | オーディオトラックを有効にします。 |
unmuteVideo | ビデオトラックを有効にします。 |
getId | Streamの固有識別IDを取得します。 |
getUserId | このストリームが属するユーザーIDを取得します。 |
setAudioOutput | 音声出力デバイスを設定します。 |
setAudioVolume | 再生音量を設定します。 |
getAudioLevel | 現在の音量を取得します。ローカルストリーミングまたはリモートストリーミングにオーディオデータがある場合のみ有効となります。 |
hasAudio | オーディオトラックが含まれているかどうか。 |
hasVideo | ビデオトラックが含まれているかどうか。 |
getAudioTrack | オーディオトラックを取得します。 |
getVideoTrack | ビデオトラックを取得します。 |
getVideoFrame | 現在のビデオフレームを取得します。 |
on | Streamイベントを監視します。 |
off | Streamイベントの監視を取り消します。 |
RtcErrorエラーオブジェクト。
API | 説明 |
---|---|
getCode | エラーコードを取得します。 |
Clientがトリガするイベントリスト、すなわちclient.on('eventName')
イベントで監視しているイベント名称eventName
。
API | 説明 |
---|---|
stream-added | リモートストリーミング追加イベントであり、リモートユーザーがストリーミングをリリースした後にこの通知を受信します。 |
stream-removed | リモートストリーミング削除イベントであり、リモートユーザーがストリーミングのリリースを取り消した後にこの通知を受信します。 |
stream-updated | リモートストリーミング更新イベントであり、リモートユーザーがオーディオビデオトラックを追加、削除または切り替えた後にこの通知を受信します。 |
stream-subscribed | リモートストリーミングサブスクリプション成功イベントであり、subscribe()を正常に呼び出した後にこのイベントをトリガします。 |
connection-state-changed | ローカルのclientとTencent Cloudの接続状態変更イベント。 |
peer-join | リモートユーザー入室通知イベント。 |
peer-leave | リモートユーザー退室通知イベント。 |
mute-audio | リモートストリーミングオーディオ無効イベントであり、リモートユーザーがオーディオを無効にするときにこのイベントをトリガします。 |
mute-video | リモートストリーミングビデオ無効イベントであり、リモートユーザーがビデオを無効にするときにこのイベントをトリガします。 |
unmute-audio | リモートストリーミングオーディオ有効イベントであり、リモートユーザーがオーディオを有効にするときにこのイベントをトリガーします。 |
unmute-video | リモートストリーミングビデオ有効イベントであり、リモートユーザーがビデオを有効にするときにこのイベントをトリガします。 |
client-banned | ユーザーが強制退室されるイベントであり、強制退室の原因:
|
network-quality | ネットワーク品質統計データイベントであり、入室してから統計を開始し、2秒ごとに1回トリガし、アップリンク、ダウンリンクのネットワーク品質データを含みます。 |
audio-volume | 音量イベント。 enableAudioVolumeEvaluationインターフェースを呼び出して音量のコールバックをオンにした後、SDKは定期的にこのイベントをスローし、各userIdの音量を通知します。 |
error | エラーイベントであり、回復不可能なエラーが発生した後、このイベントがスローされます。エラーコードをご参照ください。 |
Streamがトリガするイベントリスト。
API | 説明 |
---|---|
player-state-changed | Audio/Video Player状態変化イベント。 |
screen-sharing-stopped | ローカル画面強要停止イベントであり、ローカルの画面共有ストリーミングのみに有効である。 |
connection-state-changed | Stream接続状態変更イベント。stream-added イベントのコールバックでこのイベントを監視し、stream-removed イベントのコールバックでこのイベントの監視を取り消してください。 |
error | エラーイベントであり、復元不可能なエラーが発生した後、このイベントがスローされます。エラーコードをご参照ください。 |
ご不明な点がございましたら、colleenyu@tencent.comにご連絡ください。
この記事はお役に立ちましたか?