Skip to content

Stremio-Server

Stremio Server is a standalone instance of the component of the official Stremio client app which does the downloading (torrenting or HTTP streaming) and transcoding of your remote media.

Usually bundled with the desktop apps, Stremio Server can be useful to host remotely for improved transcoding performance (i.e., if your client can't transcode your media), or to consolidate all your Debrid downloads behind a VPN (providing a single source IP to the debrid provider).

What's the relationship to Official Stremio?

The ElfHosted Stremio Server subscription is simply the hosting of an un-modified1 instance of the publically available docker image, exactly as distributed by Stremio, and subject to the same terms and conditions as any other Stremio installations.

There's nothing proprietary to the solution, and the subscription price is for the hosting components of the service (CPU, RAM, bandwidth, etc), and not the Stremio app itself, nor the content consumed by the user.

Possible use-cases for Stremio-Server are:

  1. Ensuring all torrenting activity is routed over a VPN.
  2. Ensuring all Debrid activity comes from a single source IP, even if multiple clients at multiple locations are streaming simultaneously (only works in the web UI)
  3. Transcoding media which a client can't natively play (like an under-powered Android TV).

Not all Stremio clients support proxying/transcoding HTTP streams!

Your Stremio client may not support transcoding of HTTP / Debrid streams. See Client Compatibility for a list of known client support.

Get Elf Hosted Stremio-Server from $0.3/day ๐Ÿช„

Screenshot of Stremio-Server

How to access Stremio-Server

Your ElfHosted app dashboard will link you to either the Stremio web player (https://web.strem.io), or your own, ElfHosted instance of Stremio Web, with a URL path to pre-configure the client for your Stremio Server instance.

You can also manually add your Stremio Server to an existing Stremio client using the URL https://<username>-stremio-server-<secret-string>.elfhosted.com.

Why the secret string in the URL?

There's no way to authenticate a stremio client against a server - if you know the URL for a server instance, you can use it to download/transcode your media. This allows for the possibility of abuse if users' instances are on predictable URLs like https://<user>-stremio-server.elfhosted.com. To mitigate this risk, upon purchasing Stremio Server from the store, you'll be asked to enter a secret string. This string is appended to your URL, and should be kept private.

How to use Stremio Server

Navigate to Stremio Server from your app dashboard (https://<your username>.elfhosted.com) - the Stremio Web UI will automatically configure your streaming server.

Confirm the setup by navigating to SettingsStreaming, and configure per the screenshot below - set your transcoding profile to vaapi-renderD128.

Now play your media as normal - you may see a longer-than-usual delay when a stream starts - this is due to the server caching the content before streaming starts.

FAQ

How does it work?

Here's a rough diagram illustrating the process. The server will transcode any media, even if that "transcode" is simply the a "copy" of the original media (because the client is able to play the media without alteration)

flowchart TD
    A[Stremio Client #1] <-->|Get URL/Torrent| B(Stremio Server)
    A1[Stremio Client #2] <-->|Get URL/Torrent| B(Stremio Server)
    B <-->C["VPN (single IP)"]
    C <-->D[Torrent sources]
    C <-->E["HTTP Sources (Debrid, etc)"]    

Why do I need a VPN?

The Stremio Server is capable of downloading torrents, and interacting with your private media / debrid providers on your behalf (which may have source IP address limitations). To this end, you need to bring your own (BYO) VPN in order to use Stremio Server on ElfHosted. We support any VPN provider supported by gluetun, and provider-specific configuration is collected when you subscribe to the appropriate product from the store.

How do I know it's working?

Depending on your Stremio Client, if the Stremio Server fails, the client may play the media directly without the server.

You can use Kubernetes Dashboard to examine the pod logs, and confirm that a stream is correctly transcoding.

Stremio Server won't start without a connected VPN, so if troubleshooting, examine the gluetun container logs in the pod, and confirm that your VPN isn't erroring.

How many concurrent streams can I play?

Currently, the concurrency is limited to 2 transcodes, and 100Mbps total throughput. Following initial user testing / feedback, we may roll out further "plus" subscriptions with higher limits.

Client compatibility

Testing has shown that not all Stremio clients support transcoding HTTP (Debrid) streams via Stremio Server. In the case of these clients, the client will simply stream the content directly, without transcoding / proxying. The difference seems to be between v4 and v5 of the client, and as further information is discovered, it'll be added below:

Client Version Torrents Debrid Tested On
https://web.strem.io 5.0.0-beta8 โœ… โœ… 9 Apr 2024
ElfHosted Stremio Web 5.0.0-beta8 โœ… โœ… 9 Apr 2024
https://app.strem.io 4.4.167 โœ… โŒ 9 Apr 2024
OSX Desktop 4.4.168 โœ… โŒ 9 Apr 2024
nVidia Shield TBC (latest?) โœ… โŒ 9 Apr 2024

How do I get support for Stremio-Server?

  1. For general use of Stremio-Server, refer to the official site or to one of the links below.
  2. For specific support re your ElfHosted configuration / account, see the ElfHosted support options!

Stremio-Server resources


  1. Other than an entrypoint change to enforce waiting for a VPN to be established before running the server!