製品概要
製品の利点
応用シナリオ




sudo gem install cocoapods
pod init
platform :ios, '8.0'target 'App' do# RTC Engine 簡易版(推奨)# インストールパッケージのサイズ増加が最小限です。Real-Time Communication(RTC)(RTC Engine)とライブプレーヤー(TXLivePlayer)の二つの機能のみをサポートしています。pod 'TXLiteAVSDK_TRTC', :podspec => 'https://liteav.sdk.qcloud.com/pod/liteavsdkspec/TXLiteAVSDK_TRTC.podspec'# LiteAVSDK フル機能版# RTC(RTC Engine)、ライブプレーヤー(TXLivePlayer)、RTMPプッシュ(TXLivePusher)、オンデマンドプレーヤー(TXVodPlayer)、ショートビデオ録画・編集(UGSV)など、多数の機能を含みます。pod 'TXLiteAVSDK_Professional', :podspec => 'https://liteav.sdk.qcloud.com/pod/liteavsdkspec/TXLiteAVSDK_Professional.podspec'end
pod install
pod update
pod setuppod repo updaterm ~/Library/Caches/CocoaPods/search_index.json
Privacy - Microphone Usage Description, 同時にマイク使用目的のプロンプト文を入力Privacy - Camera Usage Description,そしてカメラ使用目的のプロンプト文を入力



// RTC Engine SDKインスタンスを作成(シングルトンパターン)self.trtcCloud = [TRTCCloud sharedInstance];// イベントリスナーを設定self.trtcCloud.delegate = self;// SDKからの各種イベント通知(例:エラーコード、警告コード、オーディオ・ビデオの状態パラメータなど)- (void)onError:(TXLiteAVError)errCode errMsg:(nullable NSString *)errMsg extInfo:(nullable NSDictionary *)extInfo {NSLog(@"%d: %@", errCode, errMsg);}- (void)onWarning:(TXLiteAVWarning)warningCode warningMsg:(nullable NSString *)warningMsg extInfo:(nullable NSDictionary *)extInfo {NSLog(@"%d: %@", warningCode, warningMsg);}// イベントリスナーを削除self.trtcCloud.delegate = nil;// RTC Engine SDK インスタンスの破棄(シングルトンパターン)[TRTCCloud destroySharedIntance];
rtmp://intl-rtmp.rtc.qq.com/push/ルーム番号?sdkappid=アプリケーション&userid=ユーザー名&usersig=署名
rtmp://intl-rtmp.rtc.qq.com/push/hello-string-room?sdkappid=140**66&userid=rtmp2&usersig=eJw1jdERBZ8qKGRj8Yp-wVbvmGMVZqS7w-mMDQL

roomIdと文字列型のstrRoomIdの二種類があります。二種類のルームは相互接続されません。ルーム番号のタイプを統一することをお勧めします。TRTC_APP_SCENE_VIDEOCALLを使用することをお勧めします。これにより遅延が低減されます。
- (void)enterRoomByAudienceWithUserId:(NSString *)userId roomId:(NSString *)roomId {TRTCParams *params = [[TRTCParams alloc] init];// 文字列ルーム番号を例としますparams.strRoomId = roomId;params.userId = userId;// 業務バックエンドから取得したUserSigparams.userSig = @"userSig";// お客様のSDKAppIDに置き換えてくださいparams.sdkAppId = 0;// オーディエンスロールを指定params.role = TRTCRoleAudience;// インタラクティブライブストリーミングシーンでルームに入室[self.trtcCloud enterRoom:params appScene:TRTCAppSceneVideoCall];}// 入室結果イベントのコールバック- (void)onEnterRoom:(NSInteger)result {if (result > 0) {// result は入室にかかった時間(ミリ秒)を表しますNSLog(@"Enter room succeed!");} else {// result は入室失敗時のエラーコードを表しますNSLog(@"Enter room failed!");}}
- (void)onUserAudioAvailable:(NSString *)userId available:(BOOL)available {// あるリモートユーザーが自身のオーディオを公開/キャンセルしました// 自動サブスクリプションモードでは、何も操作する必要はなく、SDKが自動的にリモートユーザーのオーディオを再生します}- (void)onUserVideoAvailable:(NSString *)userId available:(BOOL)available {// あるリモートユーザーがメインストリームのビデオ画面を公開/キャンセルしましたif (available) {// リモートユーザーのビデオストリームをサブスクライブし、ビデオレンダリングコントロールをバインドします[self.trtcCloud startRemoteView:userId streamType:TRTCVideoStreamTypeBig view:self.remoteView];} else {// リモートユーザーのビデオストリームのサブスクリプションを停止し、レンダリングコントロールを解放します[self.trtcCloud stopRemoteView:userId streamType:TRTCVideoStreamTypeBig];}}
- (void)setupRemoteRenderParams {TRTCRenderParams *params = [[TRTCRenderParams alloc] init];// 画面ミラーリングモードparams.mirrorType = TRTCVideoMirrorTypeAuto;// 画面フィルモードparams.fillMode = TRTCVideoFillMode_Fill;// 画面回転角度params.rotation = TRTCVideoRotation_0;// リモート画面のレンダリングモードを設定[self.trtcCloud setRemoteRenderParams:@"userId" streamType:TRTCVideoStreamTypeBig params:params];}
- (void)exitRoom {[self.trtcCloud stopLocalAudio];[self.trtcCloud stopLocalPreview];[self.trtcCloud exitRoom];}// 退室イベントのコールバック- (void)onExitRoom:(NSInteger)reason {if (reason == 0) {NSLog(@" exitRoom を能動的に呼び出して退室");} else if (reason == 1) {NSLog(@"サーバーによって現在のルームから退出させられました");} else if (reason == 2) {NSLog(@"現在のルーム全体が解散されました");}}
onExitRoomコールバック通知をお客様に送信します。enterRoomを再度呼び出すか、他のオーディオ・ビデオSDKに切り替える場合は、onExitRoomコールバックが発生するまで待ってから関連操作を実行してください。そうしないと、カメラやマイクデバイスが強制的に占有されるなどの異常な問題が発生する可能性があります。列挙 | 値 | 説明 |
ERR_TRTC_INVALID_USER_SIG | -3320 | 入室パラメータ userSig が正しくありません。 TRTCParams.userSig が空でないか確認してください。 |
ERR_TRTC_USER_SIG_CHECK_FAILED | -100018 | UserSig の検証に失敗しました。パラメータ TRTCParams.userSig が正しく入力されているか、または有効期限が切れていないか確認してください。 |
列挙 | 値 | 説明 |
ERR_TRTC_CONNECT_SERVER_TIMEOUT | -3308 | 入室リクエストがタイムアウトしました。ネットワーク接続が切断されているか、VPNが有効になっているか確認してください。4Gに切り替えてテストすることもできます。 |
ERR_TRTC_INVALID_SDK_APPID | -3317 | 入室パラメータ sdkAppId が正しくありません。 TRTCParams.sdkAppId が空でないか確認してください |
ERR_TRTC_INVALID_ROOM_ID | -3318 | 入室パラメータ roomId が正しくありません。 TRTCParams.roomId または TRTCParams.strRoomId が空でないか確認してください。roomId と strRoomId は混在して使用できませんのでご注意ください。 |
ERR_TRTC_INVALID_USER_ID | -3319 | 入室パラメータ userId は が正しくありません。 TRTCParams.userId が空でないか確認してください。 |
ERR_TRTC_ENTER_ROOM_REFUSED | -3340 | 入室リクエストが拒否されました。 enterRoom を連続して呼び出して同じIdのルームに入ろうとしていないか確認してください。 |
列挙 | 値 | 説明 |
ERR_CAMERA_START_FAIL | -1301 | カメラの起動に失敗しました。例:WindowsまたはMacデバイスではカメラの設定プログラム(ドライバー)に異常がある場合があります。デバイスを無効化して再有効化する、またはマシンを再起動する、または設定プログラムを更新してください。 |
ERR_MIC_START_FAIL | -1302 | マイクの起動に失敗しました。例:WindowsまたはMacデバイスでは、マイクの設定プログラム(ドライバー)に異常がある場合があります。デバイスを無効化して再有効化する、またはマシンを再起動する、または設定プログラムを更新してください。 |
ERR_CAMERA_NOT_AUTHORIZED | -1314 | カメラデバイスが未承認です。通常はモバイルデバイスで発生し、権限がユーザーによって拒否された可能性があります。 |
ERR_MIC_NOT_AUTHORIZED | -1317 | マイクデバイスが未承認です。通常はモバイルデバイスで発生し、権限がユーザーによって拒否された可能性があります。 |
ERR_CAMERA_OCCUPY | -1316 | カメラ現在使用中です。他のカメラの使用を試みてください。 |
ERR_MIC_OCCUPY | -1319 | マイクが使用中です。例えば、モバイルデバイスが通話中の場合、マイク起動に失敗します。 |

フィードバック