如何在 iPhone 上实现音频流 <50 毫秒的延迟
Posted
技术标签:
【中文标题】如何在 iPhone 上实现音频流 <50 毫秒的延迟【英文标题】:How to imlement Audio Streaming <50 millisecond latency on iPhone 【发布时间】:2011-09-17 14:25:47 【问题描述】:我需要在 iPhone 上实现延迟低于 50 毫秒的音频流。
关于如何让它发挥作用的任何想法?
我碰到了: http://cocoawithlove.com/2009/06/revisiting-old-post-streaming-and.html
但知道延迟会非常低对我来说非常重要。
谢谢
【问题讨论】:
一个繁忙的服务器本身可能会有这么多的延迟。如果它通过六个互联网路由器和无线协议连接到您的手机,事情只会变得更糟。 AV 流媒体通常使用大量缓冲来允许客户端不间断地发出输出。如果你绝对需要 延迟从哪里到哪里?延迟通常是两个可测试可观察事件之间的时间度量。你打算如何衡量这个? 【参考方案1】:最大程度减少接收端延迟的一种方法是使用具有非常短缓冲区的 RemoteIO 音频单元,并从原始 PCM 音频或解码器提供的音频格式需要极低的计算复杂度进行解码,以及小包。
您几乎需要完全控制整个网络源和路径,包括手动挑选所有设备,因为任何路由器或接入点都可以通过抖动数据包或优先处理其他流量等来完全破坏延迟。
您可能希望将 UDP 用于 IP 协议,并根据您的网络设备和音频缓冲区大小调整数据包大小。
【讨论】:
以上是关于如何在 iPhone 上实现音频流 <50 毫秒的延迟的主要内容,如果未能解决你的问题,请参考以下文章
使用Multipeer Connectivity(Swift 2)从发件人的目标iPhone中部分接收音频文件