{"id":13431172,"url":"https://github.com/sonosaurus/sonobus","last_synced_at":"2025-05-15T14:05:04.046Z","repository":{"id":37025997,"uuid":"283667621","full_name":"sonosaurus/sonobus","owner":"sonosaurus","description":"Source code for SonoBus, a real-time network audio streaming collaboration tool.","archived":false,"fork":false,"pushed_at":"2025-04-09T18:30:55.000Z","size":106642,"stargazers_count":1698,"open_issues_count":174,"forks_count":128,"subscribers_count":33,"default_branch":"main","last_synced_at":"2025-04-15T03:54:40.660Z","etag":null,"topics":["aax","audio","audiounit","linux","low-latency","macos","music","network","peer-to-peer","plugin","podcasting","vst","windows"],"latest_commit_sha":null,"homepage":"https://sonobus.net","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/sonosaurus.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2020-07-30T04:17:14.000Z","updated_at":"2025-04-13T05:05:00.000Z","dependencies_parsed_at":"2025-04-15T04:04:46.836Z","dependency_job_id":null,"html_url":"https://github.com/sonosaurus/sonobus","commit_stats":null,"previous_names":[],"tags_count":54,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sonosaurus%2Fsonobus","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sonosaurus%2Fsonobus/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sonosaurus%2Fsonobus/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sonosaurus%2Fsonobus/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sonosaurus","download_url":"https://codeload.github.com/sonosaurus/sonobus/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254355334,"owners_count":22057354,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["aax","audio","audiounit","linux","low-latency","macos","music","network","peer-to-peer","plugin","podcasting","vst","windows"],"created_at":"2024-07-31T02:01:01.055Z","updated_at":"2025-05-15T14:04:59.035Z","avatar_url":"https://github.com/sonosaurus.png","language":"C++","funding_links":[],"categories":["C++","Multimedia","Networking"],"sub_categories":["Media Servers"],"readme":"\n# SonoBus\n\nSonoBus is an easy to use application for streaming high-quality, low-latency peer-to-peer audio between devices over the internet or a local network.\n\nSimply choose a unique group name (with optional password), and instantly connect multiple people together to make music, remote sessions, podcasts, etc. Easily record the audio from everyone, as well as playback any audio content to the whole group.\n\nConnects multiple users together to send and receive audio among all in a group, with fine-grained control over latency, quality and overall mix. Includes optional input compression, noise gate, and EQ effects, along with a master reverb. All settings are dynamic, network statistics are clearly visible.\n\nWorks as a standalone application on macOS, Windows, iOS, and Linux, and as an audio plugin (AU, VST) on macOS and Windows. Use it on your desktop or in your DAW, or on your mobile device.\n\nEasy to setup and use, yet still provides all the details that audio nerds want to see. Audio quality can be instantly adjusted from full uncompressed PCM (16, 24, or 32 bit) or with various compressed bitrates (16-256 kbps per channel) using the low-latency Opus codec, and you can do this independently for any of the users you are connected with in a group.\n\n\n\u003cimg src=\"https://sonobus.net/assets/images/sonobus_screenshot.png\" width=\"871\" /\u003e\n\n**IMPORTANT TIPS**\n\nSonoBus does not use any echo cancellation, or automatic noise\nreduction in order to maintain the highest audio quality. As a result, if you have a live microphone signal you will need to also use headphones to prevent echos and/or feedback.\n\nFor best results, and to achieve the lowest latencies, connect your computer with wired ethernet to your router if you can. Although it will work with WiFi, the added network jitter and packet loss will require you to use a bigger safety buffer to maintain a quality audio signal, which results in higher latencies.\n\nSonoBus does NOT currently use any encryption for the data\ncommunication, so while it is unlikely that it will be\nintercepted, please keep that in mind. All audio is sent directly between users peer-to-peer, the connection server is only used so that the users in a group can find each other.\n\n\n\n# Installing\n\n## Windows and Mac\nThere are binary releases for macOS and Windows available at [sonobus.net](https://sonobus.net) or in the releases of this repository on GitHub.\n\n## Linux\n\nThere are packages available for Debian-based Linux distributions as well as a Snap package. See installation instructions at [sonobus.net/linux.html](https://sonobus.net/linux.html).\n\nOr if you prefer, you can build it yourself following the [build instructions](#on-linux) below.\n\n# Building\n\nThe original GitHub repository for this project is at\n[github.com/sonosaurus/sonobus](https://github.com/sonosaurus/sonobus).\n\nTo build from source on macOS and Windows, all of the dependencies are a part of this GIT repository, including prebuilt Opus libraries. \nThe build now uses [CMake](https://cmake.org) 3.15 or above on macOS, Windows, and Linux platforms, see\ndetails below.\n\n### On macOS\n\nMake sure you have [CMake](https://cmake.org) \u003e= 3.15 and XCode. Then run:\n```\n./setupcmake.sh\n./buildcmake.sh\n``` \nThe resulting application and plugins will end up under `build/SonoBus_artefacts/Release`\nwhen the build completes. If you would rather have an Xcode project to look\nat, use `./setupcmakexcode.sh` instead and use the Xcode project that gets\nproduced at `buildXcode/SonoBus.xcodeproj`.\n\n### On Windows\n\nYou will need [CMake](https://cmake.org) \u003e= 3.15, and  Visual Studio 2017\ninstalled. You'll also need Cygwin installed if you want to use the scripts\nbelow, but you can also use CMake in other ways if you prefer.\n\n```\n./setupcmakewin.sh\n./buildcmake.sh\n``` \nThe resulting application and plugins will end up under `build/SonoBus_artefacts/Release`\nwhen the build completes. The MSVC project/solution can be found in\nbuild/SonoBus_artefacts as well after the cmake setup step.\n\n\n### On Linux\n\nThe first thing to do in a terminal is go to the Linux directory:\n\n    cd linux\n\nAnd read the [BUILDING.md](linux/BUILDING.md) file for\nfurther instructions.\n\n\n# License and 3rd Party Software\n\nSonoBus was written by Jesse Chappell, and it is licensed under the GPLv3, the full license text is in the LICENSE file. Some of the dependencies have their own more permissive licenses.\n\nIt is built using JUCE 6 (slightly modified on a public fork), and AOO (Audio over OSC), which also uses the Opus codec. I'm using the very handy tool `git-subrepo` to include the source code for my forks of those software libraries in this repository.\n\n\nMy github forks of these that are referenced via `git-subrepo` in this repository are:\n\n\u003e https://github.com/essej/JUCE  in the sono6good branch.\n\n\u003e https://github.com/essej/aoo.git   in the sono branch.\n\n\nIf you want to run your own connection server instead of using the default\none at aoo.sonobus.net, you can build the headless aooserver code at\n\n\u003e https://github.com/essej/aooserver\n\nThe standalone SonoBus application also provides a connection server internally,\nwhich you can connect to on port 10999, or port forward TCP/UDP 10999 from your internet\nrouter to the machine you are running it on.\n\n\n# Thanks\n\nThanks for everyone involved in testing, especially to Christof Ressi for\nthe AOO library.\n\n### Software development credits:\n\n- For designing and implementing the Soundboard feature:\n    - Sten Wessel\n    - Hannah Schellekens\n\n### Documentation credits:\n - Michael Eskin\n - Tony Becker\n\n### Translation credits:\n - RelationLife (Taewook Yang)\n \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsonosaurus%2Fsonobus","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsonosaurus%2Fsonobus","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsonosaurus%2Fsonobus/lists"}