iPhone 音乐串流

tan*_*cik 1 audio streaming objective-c core-audio ios

我正在尝试通过蓝牙将音乐从一台 iOS 设备发送到另一台。我一直在使用来构建数据包,就像 Ray Wenderlich 的 SNAP 教程中那样,但我在接收电话上重建数据包信息时遇到了麻烦。我尝试过使用https://github.com/abbood/iphoneAudioSyncer但我认为它对于我的需求来说太复杂了(因为我不需要同步播放)。解决丢失/乱序数据包等问题的最简单的缓冲区方法是什么?我已经阅读了很多 CoreAudio 的内容,但它非常密集,所以我非常感谢解决过此类问题的人的帮助。

abb*_*ood 5

当您谈论丢失/乱序数据包时..您正在谈论丢包隐藏的主题..这是一个非常密集的主题(我的意思是如果您认为核心音频很密集..等到您深入了解PLC) 。

简而言之,有很多方法可以处理数据包丢失..但最简单的方法(我建议您这样做)是用静默替换丢失的数据包(同样适用于乱序数据包..如果数据包丢失的顺序..只是丢弃它)。

话虽这么说.. 您正在处理流式传输给您的音频(即通过蓝牙/wifi 网络发送).. 这意味着几乎 100% 的时间您收到的是压缩音频(即可变比特率音频 VBR) )..如果您只是尝试用静默替换丢失的 VBR 数据包..您会遇到这个问题。您要么必须以与您正在处理的 VBR 音频相同的压缩格式插入静音数据包,要么必须将 VBR 压缩音频转换为非压缩音频(无损 PCM),然后插入零来代替丢失的数据包。