Create an Account
No Items
Documentation Navigation

General Settings

OptionDescription
Start at bootShould StreamShuttle be started automatically when the computer is started.
On Linux you will probably need to enable "automatic login" for the user account that is running StreamShuttle in order for it actually start.
Prevent SleepPrevents the computer from sleeping while StreamShuttle is running

Hub Settings

Used to configure the hubs running on this PC.

By default both the Temp Event Root and Temp DB are set to be use memory. However if there is a crash or the computer is shut down unexpectedly you will lose any events that haven't completed. You can ensure no data is lost by unchecking "Use Memory" for the Temp Event Root. (You also specify a specific place to persist any Temp Data. Ideally a different disk than the Storage Root) You will also need to make sure the Temp DB is persisted to disk, by unchecking "In Memory" or by making sure "Snapshot" is checked.

Leaving the Temp DB in memory while also enabling "Snapshotting" will be the most performant. Otherwise you may run into performance issues if storing the Temp DB directly to disk, especially if the disk is not an SSD or fast enough. (With snapshotting enabled most drives wlll be sufficient for storing the temp data, even slower external USB style drives)

The events will be recovered the next time StreamShuttle is restarted.

OptionDescription
Hub NameName used to identify the hub
EnabledToggles whether or not this hub should be started when StreamShuttle starts
Storage RootThis is the directory where media events and all hub related data is stored.
Temp Event RootDirectory where temporary event data is stored or Use Memory
Temp DB - in memoryShould we store the Temp Event DB in memory?
Temp DB - snapshotShould we snapshot the in memory db?
Run global GPU detectorShould we run a global GPU detector at this hub?
Should only enable after ensuring device based GPU detection works as expected.

* Most changes require the hub services to be restarted. Changing the "Storage Root" without first copying the existing data to new location will result in data loss.

Certificate Options

Utilizing a valid certificate is required to ensure the App can be fully utilized on mobile devices (enables installation as a PWA and Enables push notifications)

A certificate is automatically created when StreamShuttle started for the first time. This certificate is used to ensure traffic from any device to the services are secured. This certificate will need to be manually installed on any devices where the app is used (if you want to be able to utilize without pesky "insecure / self signed certificate" warnings). These warnings are there to alert you that this certificate comes from an "untrusted" source. Which is true since we just generated it and we didn't utilize one of the "trusted authorities" to-do so. Installing the certificate on the device lets the device know that this certificate should in fact be trusted.

OptionDescription
Install Certificateinstall the certificate on this device. Enables viewing StreamShuttle without certificate warnings (on this device)
Regenerate CertificateRegenerates the certificate utilizing all the domains from the latest configuration. You will need to re-generate the certificate if any of the domains used to access the StreamShuttle services change (ex. you update the VPN server address, or the device local IP changes (enable device static mapping if possible)). Regenerating also means you will need to re-install the certificate on any devices that access StreamShuttle
Open Certificate DirectoryOpens the directory where the certificate and private key are stored.
Download CertificateDownload the certificate which can be install on devices that will have access to StreamShuttle. (The certificate can also be downloaded in the "Dashboard" area from within the Web UI)

Service Actions

Used to view logs and manage application services.

OptionDescription
Show Recent LogsOpens a window to view the latest entries from the api and hub logs
"Open logs directory" - opens file browser at directory where all logs are stored
Stop ServicesStops api, hub and ui services
Restart ServicesEnsures api, hub and ui services are stopped then started

DDNS Configuration

DDNS short for Dynamic DNS is a service that can be utilized to ensure you always know what your home IP address is. Most ISP's (Internet Service Providers) do not provide Static IP address to their customers. This means that your home IP address could change at any time. Although this doesn't usually happen that often; If you have a power outage or there is maintenance in your area, you might end up with a new IP when service is restored. This service works by updating a DNS server with you're new IP address. This ensures you can always reach your home network without having to deal with this scenario of your IP changing. (which normally would require having to update the new IP address in configurations on all devices). Instead of using the IP address to access your network you instead use a DDNS address which always knows your latest IP address.

* Ideally would enable before VPN

Enable DDNS

  • Toggles whether or not we should utilize the DDNS service.

VPN Configuration

The following section allows you to quickly setup and manage a secure VPN. Allowing you to access StreamShuttle from anywhere securely.

Enable VPN

  • Toggles whether or not we should manage the VPN

External / Public IP Configuration

This area is used to configure the IP or host name used to connect to the VPN when you are away from home

OptionDescription
External IPIP address used when connecting from outside of the local network.
External AddressAddress clients will use when when connecting from outside of local network. If utilizing the DDNS service this will automatically be updated to utilize your provided address.
Attempt To get External IPTry to get the Public IP first by querying local router, else by using external lookup services
Save external AddressUsed to store a "manually" entered external VPN address. This is the address client will use to connect to the VPN

VPN Server Settings

This area is used to configure the address space the VPN uses for clients and which port we should use to connect to the VPN.

OptionDescription
Base AddressWhich address space should we use when assigning address to clients.
PortWhich port should clients use when connecting to the VPN server.
Update VPN SettingsRegenerates all the VPN server and client configurations.

VPN Server Actions

This area is used to control the VPN service and generate VPN server keys.

OptionDescription
Generate VPN Server KeysWill regenerate the servers private key. This will also update all client configurations
Start VPNStarts the WireGuard "StreamShuttle Tunnel" service
Stop VPNStops the WireGuard "StreamShuttle Tunnel" service
Update Configuration and Restart VPNRegenerates the VPN server configuration and restarts the "StreamShuttle Tunnel" service

UPnP Configuration

The UPnP configuration is used try and automatically open the port for the VPN. By checking "Attempt to open port for VPN", StreamShuttle will try to open the port via UPnP / NAT-PMP. If this does not work you will see a "FAILED" message. In this case you will need to manually forward the port in your router.
If this happens its usually pretty easy to find instructions for opening the port manually by searching for your routers model number and "open port" or "port forward" on any search engine.

OptionDescription
PortThis is the port we will attempt to forward.(Same as "VPN Server Settings -> Port")
Attempt to open port for VPNIf toggled, we will try to open the port for the VPN service using UPnP / NAT-PMP

VPN Clients

VPN clients section is used to create and manage configurations that will be used to connect to the VPN server and in turn StreamShuttle.

Depending on what changes are made below you will need to restart the VPN server before the changes are reflected. For example when adding a new client they will not be able to connect until the VPN is restarted. If a restart is required, a banner should appear which lets you know you should "Update Configuration and Restart VPN"

OptionDescription
Add New VPN ClientAdds a new VPN client entry
Client NameDescriptive name used to identify this VPN client configuration. ex. John Smith's Iphone
Client AddressThe automatically generated VPN client address that has been assigned to this configuration.
Delete ClientRemoves the client configuration meaning they will no longer be able to connect to the VPN. (VPN server restart required after removal)
Save ConfigUpdates the configuration with the updated "Client Name"
Download ConfigDownload the VPN Client configuration file which can be used to install the configuration on the clients device.
Show Config QR CodeInstead of having to transfer the configuration to a users device. You can instead import the configuration by scanning the QR Code.