pushScreenAudioFrame method
@detail api
@author liyi.000
@brief 使用自定义采集方式,采集屏幕共享时的屏幕音频时,将音频帧推送至 RTC SDK 处进行编码等处理。
@param audioFrame 音频数据帧,参见 ByteRTCAudioFrame{@link #ByteRTCAudioFrame}
- 音频采样格式为 S16。音频缓冲区内的数据格式必须为 PCM 数据,其容量大小应该为 samples × frame.channel × 2。
- 必须指定具体的采样率和声道数,不支持设置为自动。
@return 方法调用结果
- 0: 设置成功。
- < 0: 设置失败。查看 ByteRTCReturnStatus{@link #ByteRTCReturnStatus} 获得更多错误说明。
@note
- 调用此接口推送屏幕共享时的自定义采集的音频数据前,必须调用 setScreenAudioSourceType:{@link #ByteRTCEngine#setScreenAudioSourceType} 开启屏幕音频自定义采集。
- 你应每隔 10 毫秒,调用一次此方法推送一次自定义采集的音频帧。一次推送的音频帧中应包含 frame.sample_rate / 100 个音频采样点。比如,假如采样率为 48000Hz,则每次应该推送 480 个采样点。
- 调用此接口将自定义采集的音频帧推送到 RTC SDK 后,你必须调用 publishScreenAudio: 将采集到的屏幕音频推送到远端。在调用 publishScreenAudio: 前,推送到 RTC SDK 的音频帧信息会丢失。
@order 9
Implementation
FutureOr<int> pushScreenAudioFrame(ByteRTCAudioFrame audioFrame) async {
return await nativeCall('pushScreenAudioFrame:', [audioFrame]);
}