CLAUDE.md 2.4 KB

TRTC 模块

模块概述

TRTC 模块是腾讯云 RTC SDK 的封装模块,提供高质量的音视频通话、直播、互动连麦等实时通信功能。

主要功能

1. 实时通话

  • 语音通话: 高清语音通话功能
  • 视频通话: 高清视频通话功能
  • 多人会议: 支持多人音视频会议
  • 通话录制: 通话过程录制功能

2. 直播互动

  • 推拉流: 直播推流和拉流功能
  • 连麦互动: 观众与主播连麦互动
  • CDN推流: 推流到CDN进行分发
  • 云端混流: 多路流混合输出

3. 音视频处理

  • 美颜滤镜: 实时美颜和滤镜效果
  • 背景虚化: 人像分割和背景替换
  • 音效处理: 变声、混响等音效
  • 画面调节: 亮度、对比度等调节

4. 质量控制

  • 网络自适应: 根据网络自动调节质量
  • 弱网优化: 弱网环境下的优化策略
  • 质量监控: 通话质量实时监控
  • 统计上报: 详细的质量统计数据

核心接口

class TRtcEngine {
    fun enterRoom(params: TRTCParams, appScene: Int)
    fun exitRoom()
    fun startLocalPreview(frontCamera: Boolean, view: TXCloudVideoView)
    fun stopLocalPreview()
    fun startLocalAudio()
    fun stopLocalAudio()
    fun startRemoteView(userId: String, view: TXCloudVideoView)
    fun stopRemoteView(userId: String)
}

使用方式

// 初始化SDK
val trtcEngine = TRTCCloud.sharedInstance(context)
trtcEngine.setListener(trtcListener)

// 进入房间
val params = TRTCParams().apply {
    sdkAppId = SDK_APP_ID
    userId = "user123"
    userSig = getUserSig()
    roomId = 12345
}
trtcEngine.enterRoom(params, TRTC_APP_SCENE_VIDEOCALL)

// 开启本地预览
trtcEngine.startLocalPreview(true, localVideoView)
trtcEngine.startLocalAudio()

// 开启远端视频
trtcEngine.startRemoteView(remoteUserId, remoteVideoView)

事件监听

private val trtcListener = object : TRTCCloudListener() {
    override fun onEnterRoom(result: Long) {
        if (result > 0) {
            // 进房成功
        } else {
            // 进房失败
        }
    }
    
    override fun onRemoteUserEnterRoom(userId: String) {
        // 远端用户进房
    }
    
    override fun onRemoteUserLeaveRoom(userId: String, reason: Int) {
        // 远端用户离房
    }
}

构建配置

implementation "com.wenext.android:frame-trtc:6.0.0"