由于新冠疫情封锁,我和朋友无法聚在一起演奏音乐。
使用 Discord、Skype、Zoom 等最流行的服务时,我们会遇到超过半秒的延迟,这使得一起播放任何类型的音乐完全不可能。
我非常肯定有一种方法可以将延迟降至 100 毫秒以下,甚至可能降至 70 毫秒以下,但坦率地说,我经历了一场噩梦,我所做的任何搜索都给我有关流视频的信息,而不仅仅是音频。
我有一台 Windows PC,但如果绝对必要,我可能会使用 Raspberry Pi。我朋友有一台 Mac。
我曾尝试使用 ffmpeg 制作 rtp 或 udp 流,然后在另一台设备上捕获它。但是,无论选择哪种方式,这都会有 600 多毫秒的延迟。即使使用 127.0.0.1 进行本地流,延迟仍然存在。我觉得这是由于 ffmpeg 的 dshow 捕获而不是任何实际的网络延迟造成的。
为此,有没有相对简单的方法可以做到这一点?我想要的只是我们两人之间一个简单的双向立体声音频连接,延迟足够低,以便能够实时一起玩。我无法想象在当今时代这是不可能的。
谢谢
答案1
尝试点对点减少前往服务器并返回的延迟,但问题仍然是互联网存在可变的延迟……一个数据包可能通过本地 ISP 路由,而另一个数据包可能经过四五个跨越全球大部分地区的跳转。VPN 造成了这种延迟和不确定性更糟糕。耳朵可以分辨出几十毫秒的延迟。当然,你可以一起练习,并尝试不同的服务(关闭视频以减少带宽),但不要期待很好的结果。