GithubHelp home page GithubHelp logo

Comments (8)

MayaPosch avatar MayaPosch commented on May 24, 2024 1

Reproduced the issue, will have a look at it.

from nymphcast.

MayaPosch avatar MayaPosch commented on May 24, 2024 1

It would definitely be an issue whenever using the client on the same system as a remote that's part of a group, yes.

I'm still looking at an elegant solution for this that covers all cases. Incidentally it's also a potential issue with the NymphCast MediaServer when it runs on the same system as a remote, though that should be an uncommon issue outside of testing. Still, good to tackle that one at the same time :)

from nymphcast.

MayaPosch avatar MayaPosch commented on May 24, 2024

Interesting symptoms so far: it works with the slave remote in a local VM (bridged networking), but I get the error when the slave remote is on dedicated hardware (Raspberry Pi Zero W). Since everything in this failing configuration uses WiFi, I'm leaning towards a time-out issue, but will keep investigating.

from nymphcast.

PureTryOut avatar PureTryOut commented on May 24, 2024

I'm also doing it over Wi-Fi so that seems plausible 🤔

from nymphcast.

MayaPosch avatar MayaPosch commented on May 24, 2024

The problem appears to be the auto-detected IP addresses in the list of slave remotes that get handed to the master remote. I had the multi-room playback working just fine earlier on the aforementioned Raspberry Pi Zero W, in sync with the master remote on the Win10 laptop, all via WiFi.

Looking at the previous non-working playback attempt on these devices, here the Win10 laptop's IP was the VirtualBox virtual IP address (host-only network), while the Raspberry Pi Zero W's IP was that of the WiFi network.Obviously, if the Win10 laptop is the master in this scenario, it can use the RPi0W as slave, but vice versa does not work, since the VBox host-only network is not accessible from the RPi0W.

Theoretically, this is a scenario that should not occur when e.g. running the Player on another system on the (WiFi) network, but which can be problematic when running the Player on the same system as one of the group remotes. A possible solution here would be to keep track of the different IPs per server remote, and match them up per network range when put into a group. Though that may backfire in other fun ways.

This may take some thought :)

from nymphcast.

PureTryOut avatar PureTryOut commented on May 24, 2024

Ah. I am indeed running the player/client on the same machine as one of the remotes. I did notice it showed 127.0.0.1 as it's IP but did not realize that would be a problem. Makes sense though, the remotes ofc have to communicate with each other to make sure the playback is synced and what not.

I suppose it's a bit of an edge case, but then again I'm guessing it'll be relatively common.

from nymphcast.

MayaPosch avatar MayaPosch commented on May 24, 2024

I have implemented a change in the Group dialogue. This should keep a local remote (hostname == local hostname) always as the first item in the first position of the list, and thus as the master remote.

Currently it only checks for this when creating a new group or when adding a new remote to a group, which seems sufficient to me, but feel free to think of further use cases :)

from nymphcast.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.