CLAUDE.md 1.9 KB

VolcRTC 模块

模块概述

VolcRTC 模块是火山引擎 RTC SDK 的封装模块,提供高品质的实时音视频通信功能,支持多种应用场景。

主要功能

1. 音视频通话

  • 实时通话: 低延迟音视频通话
  • 多人会议: 多人实时会议功能
  • 音频通话: 纯音频通话模式
  • 视频通话: 高清视频通话功能

2. 媒体控制

  • 音频控制: 麦克风开关和音量控制
  • 视频控制: 摄像头开关和参数调节
  • 屏幕共享: 屏幕内容实时分享
  • 媒体流管理: 发布和订阅媒体流

3. 高级功能

  • 空间音频: 3D空间音频效果
  • AI降噪: 智能背景噪音消除
  • 超分辨率: 视频超分辨率增强
  • 智能美颜: AI驱动的美颜功能

核心接口

class VolcRtcEngine {
    fun joinRoom(token: String, roomId: String, userInfo: UserInfo)
    fun leaveRoom()
    fun publishStream(mediaStreamInfo: MediaStreamInfo)
    fun unpublishStream(mediaType: MediaStreamType)
    fun subscribeStream(userId: String, mediaStreamInfo: MediaStreamInfo)
    fun unsubscribeStream(userId: String, mediaType: MediaStreamType)
}

使用方式

// 创建引擎实例
val rtcEngine = RTCVideo.createRTCVideo(context, appId, rtcVideoEventHandler, null, null)

// 加入房间
val userInfo = UserInfo(userId, null)
val roomConfig = RTCRoomConfig(ChannelProfile.CHANNEL_PROFILE_CHAT_ROOM, true, true, true)
rtcEngine.joinRoom(token, roomId, userInfo, roomConfig)

// 开启本地视频采集
rtcEngine.startVideoCapture()

// 设置本地视频视图
val localCanvas = VideoCanvas()
localCanvas.renderView = localVideoView
localCanvas.renderMode = VideoCanvas.RENDER_MODE_HIDDEN
rtcEngine.setLocalVideoCanvas(StreamIndex.STREAM_INDEX_MAIN, localCanvas)

构建配置

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