ここでは主に、キャスターが自分のオーディオビデオストリーミングを公開する方法についてご説明します。いわゆる「公開」とは、マイクとカメラをオンにして、自分の音声やビデオをルーム内にいる他のユーザーに聞かせたり、見せたりすることです。
ドキュメントSDKのプロジェクトへのインポートを参照し、SDKのインポートと設定を完了してください。
startLocalPreviewインターフェースを呼び出すと、カメラのプレビューを開くことができます。このとき、SDKはシステムにカメラの使用権限を申請し、ユーザーは承認を受けることでカメラのキャプチャ処理を開始することができます。
ローカル画面のレンダリングパラメータを設定したい場合は、setLocalRenderParamsインターフェースを呼び出して、ローカルプレビューのレンダリングパラメータを設定することで行えます。プレビューを有効にしてからプレビューのパラメータを設定すると画面が飛んでしまうことを防ぐため、プレビューのパラメータを設定する必要がある場合は、プレビューを有効にする前にこのコマンドを呼び出すことをお勧めします。
// ローカル画面のプレビューモードの設定:左右のイメージを有効にし、画面をフィルモードに設定します
import TRTCCloud, {
TRTCRenderParams, TRTCVideoRotation,
TRTCVideoFillMode, TRTCVideoMirrorType
} from 'trtc-electron-sdk';
const param = new TRTCRenderParams(
TRTCVideoRotation.TRTCVideoRotation0,
TRTCVideoFillMode.TRTCVideoFillMode_Fill,
TRTCVideoMirrorType.TRTCVideoMirrorType_Auto
);
const rtcCloud = new TRTCCloud();
rtcCloud.setLocalRenderParams(param);
const cameraVideoDom = document.querySelector('.camera-dom');
rtcCloud.startLocalPreview(cameraVideoDom);
startLocalAudioを呼び出すことによって、マイクのキャプチャを有効にすることができます。このインターフェースでは、quality
パラメータを介してキャプチャモードを決定する必要があります。このパラメータの名前はqualityですが、品質が高いほど良いというわけではなく、ビジネスシナリオによって選択すべき最適なパラメータがあります(このパラメータのより正確な意味はsceneです)。
import { TRTCAudioQuality } from 'trtc-electron-sdk';
// マイクキャプチャをオンにして、現在のシナリオを音声モード(高いノイズ抑制能力と脆弱なネットワーク耐性)に設定します
rtcCloud.startLocalAudio(TRTCAudioQuality.TRTCAudioQualitySpeech);
// マイクキャプチャをオンにして、現在のシナリオを音楽モード(高忠実度のキャプチャ、低音質損失、プロ用サウンドカードとの使用を推奨)に設定します
rtcCloud.startLocalAudio(TRTCAudioQuality.TRTCAudioQualityMusic);
ドキュメント入室をご参照のうえ、現在のユーザーをTRTCルームに入室させます。SDKはルームにいる他のユーザーに対し自分のオーディオストリームの公開を開始します。
注意:もちろん、入室(enterRoom)後にカメラプレビューやマイクキャプチャを開始することもできますが、ライブストリーミングシナリオでは、まずキャスターにマイクテストや美顔のエフェクト調整の時間を与える必要があるので、入室前にカメラとマイクを先に開始することがより一般的な方法です。
import { TRTCParams, TRTCRoleType, TRTCAppScene } from 'trtc-electron-sdk';
// TRTC入室パラメータを組み立てる場合、TRTCParamsの各フィールドをご自分のパラメータに置き換えてください
// Please replace each field in TRTCParams with your own parameters
const param = new TRTCParams();
params.sdkAppId = 1400000123; // Please replace with your own SDKAppID
params.userId = "denny"; // Please replace with your own userid
params.roomId = 123321; // Please replace with your own room number
params.userSig = "xxx"; // Please replace with your own userSig
params.role = TRTCRoleType.TRTCRoleAnchor;
// シナリオが「オンラインライブストリーミング」の場合、ユースケースをTRTC_APP_SCENE_LIVEに設定してください
// If your application scenario is a video call between several people, please use "TRTC_APP_SCENE_LIVE"
rtcCloud.enterRoom(param, TRTCAppScene.TRTCAppSceneLIVE);
この記事はお役に立ちましたか?