rtcEngine$onFirstRemoteAudioFrame$info method

FutureOr<void> rtcEngine$onFirstRemoteAudioFrame$info(
  1. dynamic engine,
  2. dynamic streamId,
  3. dynamic info
)
override

@detail callback @author wangjunzheng @brief 订阅端接收并解码远端音频流首帧时,收到此回调。包含以下情况:
1. 发布端发布音频,包含首次发布和取消后再次发布。
2. 发布端关闭音频采集后,再次打开采集。使用外部源时,停止推流后再次推流。
3. 发布端发布音频后,订阅端取消订阅音频后,又再次订阅音频。 @param engine ByteRTCEngine 对象 @param streamId 远端流 ID。 @param info 远端流信息,参看 ByteRTCStreamInfo{@link #ByteRTCStreamInfo}。 @note - 用户刚收到房间内每一路音频流时,都会收到该回调。 - 摄像头流、屏幕流,内部采集、外部源、自动订阅和手动订阅的音频流,都符合上述策略。

Implementation

FutureOr<void> rtcEngine$onFirstRemoteAudioFrame$info(
    dynamic engine, dynamic streamId, dynamic info) async {
  if ($instance == null || $instance is! IRTCEngineEventHandler) {
    return;
  }
  return ($instance as IRTCEngineEventHandler).onFirstRemoteAudioFrame?.call(
      streamId.toString(),
      packObject(
          info,
          () => StreamInfo.fromMap(StreamInfo.deepPackedMapValues(
              StreamInfo.mapMemberToConstructorParams(info)))));
}