跳到主要内容

流处理

本地音频流处理

SDK 提供本地音频流发送前的上报回调。您可以将上报的音频数据进行变声、录音等处理。注册监听 RCRTCEngine.getInstance().getDefaultAudioStream().setRecordAudioDataListener 获取本地 PCM 音频流数据。

参数说明

参数类型说明
ListenerIRCRTCAudioDataListener本地音频 PCM 数据采集回调

回调参数

回调参数回调类型说明
rtcAudioFrameRCRTCAudioFrame音频 PCM 数据对象

示例代码

Java
RCRTCEngine.getInstance().getDefaultAudioStream().setRecordAudioDataListener(new IRCRTCAudioDataListener() {
@Override
public byte[] onAudioFrame(RCRTCAudioFrame rcrtcAudioFrame) {
// 回调线程:AudioRecordJavaThread
return rcrtcAudioFrame.getBytes();
}
});

远端音频流处理

SDK 提供远端音频流接收后的上报能力。您可以使用上报的音频数据进行变声、录音等处理。注册监听 RCRTCRoom.setRemoteAudioDataListener 获取远端 PCM 音频流数据。

参数说明

参数类型说明
ListenerIRCRTCAudioDataListener远端音频数据回调

回调参数

回调参数回调类型说明
rtcAudioFrameRCRTCAudioFrame音频 PCM 数据对象

示例代码

Java
// room 为 joinRoom 成功后获得的房间对象
room.setRemoteAudioDataListener(new IRCRTCAudioDataListener() {
@Override
public byte[] onAudioFrame(RCRTCAudioFrame rcrtcAudioFrame) {
return rcrtcAudioFrame.getBytes();
}
});