-
Notifications
You must be signed in to change notification settings - Fork 7
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Running Stremio Service.exe and accessing it via LAN for multi-device streaming #39
Comments
Just use your local ip address to access it, if it is locally(LAN) then it should work without problem, if it is not working moste likely something on your side is blocking this |
Thank you, Tomas. I'll give it a try and I'll be back soon! |
@TRtomasz nope, he'd need to enable https by connecting the desktop client to the service first, as stremio web does not have this setting yet and it won't work through LAN without HTTPS enabled |
Jaruba, how could I do that? Can you give me a step-by-step guide? I would like to use this method to link devices like the iPhone to use Stremio Web! |
So... there's no way to use this web app via LAN? That's sad . For https I get this error in docker container:
This is probably because CGNAT, but I couldn't test otherwise. Anyway I would like to just acess via LAN normally. This occours in QT Stremio app for Linux and Flatpak too. None of them work for LAN, only the 127.0.0.1 address. Is this a security measure? If so, how could I disable this feature in the code? |
It will be possible for sure, we will return to Stremio Service development after we solve the new bugs created during the redesign release. |
@rodhfr I think HTTPS is not functional, there doesn't appear to be a documented way to load a cert. I got it to work by proxying the HTTP using NGINX to add HTTPS support. Docker is not required but does make it easier.
|
@stonegray Does this method work for use on devices such as iPhone via web browser? |
Yep, works fine on my iPhone over both LAN and cellular. |
@stonegray incredible, I'm going to take an old notebook and set up an nginx server for this purpose. Can you help me if I need it? |
Keep in mind that the server sometimes transcodes video in software so it works in the iOS browser, so you may need a reasonably beefy CPU unless you have an Nvidia GPU, which appears to be the only hardware acceleration that stremio-server has enabled. (although the bundled ffmpeg supports qsv for vp9, hevc and more...) I'm reluctant to provide any support and definitely not any contributions to this project as the core logic is not open source, and the devs seem uninterested in contributions. See #49 |
@stonegray, I understand, thanks anyway, it helped a lot! |
@jaruba, Do you think that at some point in the future it will be possible to do what @stonegray proposed in an easier way? or even some other solution to watch via IOS devices |
Fuck it. Run the stremio-server docker container and login to it with Run the following in a new folder called "ssl" to make a self signed ssl cert, make sure to put "*" as the FQDN otherwise it won't work.
Then patch. the server.js with the following: --- server.js 2023-12-05 18:20:52.775001047 +0000
+++ server.js 2023-12-05 18:28:37.677115234 +0000
@@ -36048,7 +36048,18 @@
appPath: appPath,
apiEndpoint: apiCertifficateEndpoint
});
- var sserver = https.createServer(app);
+ try {
+ var fs = require('fs');
+ var https = require('https');
+ _cr = {
+ key: fs.readFileSync('./ssl/server.key', 'utf8'),
+ cert: fs.readFileSync('./ssl/server.crt', 'utf8')
+ };
+ } catch (e) {
+ console.error("Failed to load SSL cert:", e);
+ _cr = { };
+ }
+ var sserver = https.createServer(_cr, app);
if (sserver.listen(12470), sserver.on("listening", (function() {
console.log("EngineFS HTTPS endpoint at https://local.strem.io:12470");
})), sserver.on("error", (function(err) {
@@ -85771,4 +85782,4 @@
exec(opener + ' "' + escape(target) + '"', callback);
};
}).call(this, "/");
-} ]);
\ No newline at end of file
+} ]); That fixes the server and it works as expected. Just open |
@stonegray, Friend, thank you very much, your knowledge must be recognized and used as a contribution to the project without a doubt! |
@Willyanlz conseguiu fazer funcionar? estou com o mesmo problema |
Thanks @stonegray for the patch. Got me thinking. If one doesn't want to mess with the contents of a docker image, it's possible to do it similarly without touching the stremio image. Make a docker-compose.yml
In the same folder run Then create a default.conf file looking like this:
Run EDIT: one issue is that I couldn't get it to work through iOS app, chrome browser only, where I cannot see subtitles. Maybe someone has an idea how to fix that? Or I guess I could just buy a really cheap domain and put a letsencrypt "correctly" on it. I'm not used to writing such messages, so pardon me for my lazy formatting. |
How can I patch server.js file here? |
When you start the service, it will create a folder called
then it works like a champ. We don't need to patch the |
tried it your way, accessed via https, accepted the cert and i still have the issue with the
|
I would like to run the Stremio Service.exe on my computer and access it via LAN from other devices using Stremio Web, like my iPhone. Is there any way to do this?
The text was updated successfully, but these errors were encountered: