The Local Environment

The local environment provides a way to develop and test your application without requiring a full production (cloud) deployment. By using the service configuration we provide to run next to your game, you will be using the same services you would in a production environment.

The key differences between the local-only version and the production version are:

  • No scalability support.
  • No support for direct hardware-encoding.
  • The services are launched in an unsecure environment.

Note

You need to be connected to a live-streaming service to check latency between your game and the client view, as well as test your web code with the live-streaming viewer of the chosen service.

See The Cloud Environment for information about setting up your project to work with a streaming service.

Additional Required Services

The Genvid Services rely upon additional software for some specific tasks. For the default setup, we utilize the following:

Consul

Consul is used for storing configuration inside its key-value store, as well as registering, monitoring discovering the different services available.

Vault

Vault is used to secure, store and tightly control access to tokens, passwords, certificates, API keys, and other secrets.

Nomad

Nomad is a scheduler. It helps to install, start and monitor different applications, on Linux and on Windows.

The SDK also includes a web interface for monitoring and managing your cluster.

We chose Consul, Vault, and Nomad for the default Genvid configuration due to low dependency on their infrastructures. While the default configuration depends on those services, we keep the application’s dependency on them as minimal as possible so you can replace them easily with your preferred services.

The genvid-sdk tool sets up all the services you need to use the Genvid SDK with your application. You’ll use it for both local and cloud environments.