首页 > 解决方案 > 将 Agora AudioFrame 转换为 Unity AudioClip

问题描述

我想从 Agora 获取音频的原始数据,并将其流式传输到 Unity AudioSource

使用AudioRawDataManager.onPlaybackAudioFrameBeforeMixing回调,我可以获取 AudioFrame 表单中的原始数据,但我无法找到将 AudioFrame 转换为 Unity AudioClip类的简单方法。

有没有人有经验?

提前致谢。

标签: unity3dagora.io

解决方案


您只需将 AudioFrame 中的原始数据字节分配到您拥有的 audioclip 对象中。请参阅 AudioClip 的 SetData()。

粗略的步骤:

  1. 创建受限队列
  2. 回调缓冲区被发送到受限队列
  3. 从队列中分配填充的缓冲区以生成 AudioClip。
  4. AudioSource 播放 AudioClip

该队列的长度是用户选择的缓冲音频的长度。


推荐阅读