Skip to content
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

FoxDot cannot connect to a remote SuperCollider #242

Open
alejandrosame opened this issue Jun 14, 2021 · 3 comments
Open

FoxDot cannot connect to a remote SuperCollider #242

alejandrosame opened this issue Jun 14, 2021 · 3 comments

Comments

@alejandrosame
Copy link

I would like to be able to run SuperCollider from a separate machine and connect my FoxDot client to it. This would free resources in the client machine to do other tasks (for example, running recording software or VJ software) while still being able to use the editor from it (the server running SuperCollider could be a headless server).

I already spent some time seeing what was preventing me from achieving this, as the pieces seemed to be almost there but it seemed clear that this use case wasn't the focus (and that's ok, ofc!). Here's a list of the problems I found:

  1. When changing the address from 'localhost' to any remote IP, the user gets a socket.gaierror: [Errno -2] Name or service not known.
  2. When trying to execute a sample, the server receives an absolute path where the sample is found in the client machine, failing to load the proper sample.
  3. Also, some synthdefs are loaded at startup from an absolute path that doesn't correspond to the server installation.
  4. The FoxDot quark doesn't listen to remote connections, only local ones.

I already have some working fixes that I'll push as PR soon, but wanted to write this issue as documentation since the solution I found affects two repositories (this one and FoxDotQuark).

@alejandrosame
Copy link
Author

alejandrosame commented Jun 14, 2021

In order to test the changes, the machine acting as a server has to be run with FoxDot.startRemote inside SClang or SCide, and in another terminal we need to run FoxDot module to load synthdefs and send the proper sample prefixes. For example, in Linux this can be achieved with timeout 10s python -m FoxDot --pipe.

@Qirky
Copy link
Owner

Qirky commented Jun 23, 2021

I've merged the Quark changes and the others look good in the PR (w/ small change) but I'll need to test it out a bit

@alejandrosame
Copy link
Author

Great! I already made the change inside this repo. Let me know anything else I might need to do. I don't have a Windows nor OSX machine, so although the changes should be portable, I couldn't test them on those systems.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants