Skip to content

Download SDK

The ViveSound SDK contains the client libraries, API specifications, examples, and tools you use to control ViveEngine or build plugins.

In this step you will clone the SDK repository, install the required dependencies, and build vive-ctl, the command-line client tool.

What is in the SDK

The SDK is an open source, Apache-licensed repository on GitHub:

Clone the repository once, then build only the parts you need:

Component Use it when you need to
API specifications Generate clients or inspect the raw interfaces. See Control RPC and Native plugin interface.
.NET libraries Control ViveEngine from .NET apps with ViveSound.Sdk.Ctl. See .NET client library.
Go libraries Control ViveEngine from Go with vsctl and vsapi libraries. See Go client library and Go client API definitions.
Command-line tools Use vive-ctl to inspect and configure a local engine from a terminal. See Client tool.
Examples Try small apps and plugins before wiring ViveEngine into your product. See Examples.

Prerequisites

Install the tools for the SDK parts you want to build:

Tool Required for Install instructions
Git Cloning the SDK Install Git
Go 1.23 or later Building vive-ctl and Go libraries Install Go
.NET 10 or later Building the .NET GUI demo Install .NET
Xcode 26 or later Building the GUI demo on macOS Install Xcode

Tip

You only need Git and Go for the command-line path. Install .NET and Xcode if you want to build the GUI demo too.

Clone the SDK

Clone the SDK into any directory you use for source code:

git clone https://github.com/vivesound/sdk.git
cd sdk

The directory name is not special. If you prefer another location, clone it there and run the later commands from that SDK directory.

Build vive-ctl

The vive-ctl source code is in go/cmd/vive-ctl.

From the SDK directory, run:

go install ./go/cmd/vive-ctl

Go installs the binary into GOPATH/bin. On most systems, that is:

  • macOS: $HOME/go/bin
  • Windows: %USERPROFILE%\go\bin

Add that directory to your PATH so you can run vive-ctl from any terminal.

export PATH="$PATH:$(go env GOPATH)/bin"

To keep it after reopening your shell, add the same line to your shell profile, such as ~/.zshrc or ~/.bashrc.

$env:Path += ";$(go env GOPATH)\bin"

To keep it for future terminals, add expansion of $(go env GOPATH)\bin to your user Path environment variable.

Check that the tool runs:

vive-ctl --version

If the command is not found, close and reopen your terminal, then check that GOPATH/bin is on PATH.

Optional: build the GUI demo

The SDK includes a cross-platform .NET GUI demo in examples/dotnet-app. Build it if you want a small desktop app to inspect before writing your own integration.

If you're on macOS, ensure that Xcode is configured properly:

sudo xcode-select -s /Applications/Xcode.app

Install the .NET MAUI workload (all operating systems):

dotnet workload install maui

See the .NET MAUI installation guide if the workload install needs platform-specific setup.

Then restore dependencies and build the app:

cd examples/dotnet-app
dotnet restore
dotnet publish -f net10.0-windows10.0.19041.0 -c Release

The built app is under:

bin/Release/net10.0-windows10.0.19041.0/win10-*/publish/
dotnet publish -f net10.0-maccatalyst -c Release

The built app is under:

bin/Release/net10.0-maccatalyst/maccatalyst-*/publish/

Note

The exact output folder can include a runtime identifier, such as win10-x64 or maccatalyst-x64. If you do not see the folder shown above, check the build output for the final publish path.

Next step

Now that you have the SDK and vive-ctl, try talking to a local engine: