pushExternalAudioFrame method
@detail api
@brief 推送用于混音的 PCM 音频帧数据
@param audioFrame 音频帧,详见 AudioFrame{@link #AudioFrame}。
- 音频采样格式必须为 S16。音频缓冲区内的数据格式必须为 PCM,其容量大小应该为 audioFrame.samples × audioFrame.channel × 2。
- 必须指定具体的采样率和声道数,不支持设置为自动。
@return
- 0: 成功
- < 0: 失败
@note
- 调用该方法前,须通过 openWithCustomSource{@link #IMediaPlayer#openWithCustomSource} 启动外部音频流混音。
- 使用参考建议:首次推送数据,请在应用侧先缓存一定数据(如 200 毫秒),然后一次性推送过去;此后的推送操作定时 10 毫秒一次,并且每次的音频数据量为 10 毫秒数据量。
- 如果要暂停播放,暂停推送即可。
Implementation
FutureOr<int> pushExternalAudioFrame(AudioFrame audioFrame) async {
return await nativeCall('pushExternalAudioFrame', [audioFrame]);
}