SonoBus
SonoBus是一款易于使用的应用程序,可通过互联网或本地网络在设备之间进行高质量、低延迟的点对点音频流传输。
只需选择一个独特的群组名称(可选密码),即可立即将多人连接在一起,用于制作音乐、远程会话、播客等。轻松录制每个人的音频,并向整个群组播放任何音频内容。
可将多个用户连接在一起,在群组中相互发送和接收音频,并对延迟、质量和整体混音进行精细控制。包括可选的输入压缩、噪声门和均衡器效果,以及主混响。所有设置都是动态的,网络统计数据清晰可见。
可作为独立应用程序在macOS、Windows、iOS和Linux上运行,也可作为音频插件(AU、VST)在macOS和Windows上运行。可在桌面或DAW中使用,也可在移动设备上使用。
易于设置和使用,但仍提供音频发烧友想要看到的所有细节。音频质量可以立即调整,从完全未压缩的PCM(16、24或32位)到使用低延迟Opus编解码器的各种压缩比特率(每通道16-256 kbps),您可以对群组中连接的任何用户独立进行此操作。
[图片]
重要提示
SonoBus不使用任何回声消除或自动降噪,以保持最高的音频质量。因此,如果您有实时麦克风信号,您需要使用耳机以防止回声和/或反馈。
为获得最佳效果并实现最低延迟,请尽可能使用有线以太网将计算机连接到路由器。虽然它可以与WiFi一起使用,但增加的网络抖动和数据包丢失将要求您使用更大的安全缓冲区来保持高质量的音频信号,这会导致更高的延迟。
SonoBus目前不使用任何数据通信加密,因此虽然不太可能被拦截,但请注意这一点。所有音频都是在用户之间直接点对点发送的,连接服务器仅用于让群组中的用户相互找到对方。
安装
Windows和Mac
macOS和Windows的二进制版本可在sonobus.net或GitHub上本仓库的发布版本中获得。
Linux
Debian系Linux发行版和Snap包都有可用的软件包。请参阅sonobus.net/linux.html上的安装说明。
或者如果您愿意,也可以按照下面的构建说明自行构建。
构建
本项目的原始GitHub仓库位于github.com/sonosaurus/sonobus。
要在macOS和Windows上从源代码构建,所有依赖项都是此GIT仓库的一部分,包括预构建的Opus库。 现在在macOS、Windows和Linux平台上构建使用CMake 3.15或更高版本,详见下文。
在macOS上
确保您安装了CMake >= 3.15和XCode。然后运行:
./setupcmake.sh
./buildcmake.sh
构建完成后,生成的应用程序和插件将位于build/SonoBus_artefacts/Release
下。如果您更喜欢查看Xcode项目,请使用./setupcmakexcode.sh
,并使用在buildXcode/SonoBus.xcodeproj
生成的Xcode项目。
在Windows上
您需要安装CMake >= 3.15和Visual Studio 2017。如果您想使用下面的脚本,还需要安装Cygwin,但如果您愿意,也可以以其他方式使用CMake。
./setupcmakewin.sh
./buildcmake.sh
构建完成后,生成的应用程序和插件将位于build/SonoBus_artefacts/Release
下。在cmake设置步骤之后,MSVC项目/解决方案也可以在build/SonoBus_artefacts中找到。
在Linux上
在终端中要做的第一件事是进入Linux目录:
cd linux
然后阅读BUILDING.md文件以获取进一步的说明。
许可证和第三方软件
SonoBus由Jesse Chappell编写,根据GPLv3许可,完整的许可证文本在LICENSE文件中。一些依赖项有自己的更宽松的许可证。
它使用JUCE 6(在公共分支上稍作修改)和AOO(Audio over OSC)构建,后者也使用Opus编解码器。我使用非常方便的工具git-subrepo
将这些软件库的分支的源代码包含在本仓库中。
我在GitHub上的分支通过git-subrepo
在本仓库中引用:
https://github.com/essej/JUCE 在sono6good分支中。
https://github.com/essej/aoo.git 在sono分支中。
如果您想运行自己的连接服务器而不是使用默认的aoo.sonobus.net,可以构建无头aooserver代码:
独立的SonoBus应用程序还在内部提供了一个连接服务器,您可以连接到10999端口,或从互联网路由器将TCP/UDP 10999端口转发到运行它的机器。
致谢
感谢所有参与测试的人,特别是为AOO库贡献的Christof Ressi。
软件开发贡献:
- 设计和实现Soundboard功能:
- Sten Wessel
- Hannah Schellekens
文档贡献:
- Michael Eskin
- Tony Becker
翻译贡献:
- RelationLife (Taewook Yang)