我正在尝试通过蓝牙将音乐从一个iOS设备发送到另一个设备。我一直在使用this构建数据包,就像Ray Wenderlich的SNAP教程中那样,但我在接收手机上重建数据包信息时遇到了麻烦。我试过使用https://github.com/abbood/iphoneAudioSyncer,但我认为它对我的需求来说太复杂了(因为我不需要同步播放)。解决数据包丢失/失序等问题的最简单的缓冲区方法是什么?我已经阅读了很多CoreAudio的东西,但它是非常密集的,所以我很感激有人谁解决了这类问题的帮助。
发布于 2013-03-19 14:41:26
当您谈到丢失/无序数据包时..你说的是Packet Loss Concealment的话题..这是一个非常密集的主题(我的意思是如果你认为核心音频是密集的.等你深入到PLC)。
简而言之,有许多方法可以处理丢包问题。但最简单的方法(我建议您这样做)是用静默替换丢失的数据包(无序数据包也是如此。如果数据包出现故障..只需丢弃它)。
话虽如此..您正在处理流式传输给您的音频(即通过蓝牙/wifi网络发送的音频)。这意味着在几乎100%的时间里,你得到的是压缩音频(即可变比特率音频VBR)。如果您只是尝试用静默替换丢失的VBR数据包..你会遇到this问题。您要么必须以与您正在处理的VBR音频相同的压缩格式插入静音数据包,要么您必须将您的VBR压缩音频转换为非压缩音频(无损PCM),然后在丢失的数据包的位置插入零。
https://stackoverflow.com/questions/15491872
复制相似问题