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

no way to disable slip ENCODING #211

Open
jwetzell opened this issue Apr 5, 2024 · 8 comments
Open

no way to disable slip ENCODING #211

jwetzell opened this issue Apr 5, 2024 · 8 comments

Comments

@jwetzell
Copy link

jwetzell commented Apr 5, 2024

The useSLIP value disables or enables SLIP decoding only. Should it not also disable SLIP encoding?

@colinbdclark
Copy link
Owner

You might be right, yes. Out of curiosity, what is your use case where you need to disable SLIP encoding using one of the existing transports?

@jwetzell
Copy link
Author

jwetzell commented Apr 5, 2024

The situation where a 3rd party piece of software doesn't use/support SLIP so while I can receive OSC from that piece of software (by setting useSLIP to false) sending will still encode using SLIP.

@colinbdclark
Copy link
Owner

That's a bit vague, but ok. Which transport are you using? What's the third party software in this case?

@jwetzell
Copy link
Author

jwetzell commented Apr 5, 2024

I was testing using TCPSocketPort and a thrid party app called Show Cue Systems that I noticed happened to not use SLIP over TCP. I think in general if software is using stream based protocols (TCP, serial, etc.) they should use SLIP as recommended by OSC 1.1. My issue was just, in general, was it the intention that useSLIP, since it does exist in this library, only effect decoding.

@colinbdclark
Copy link
Owner

That helps, thanks. I've heard of a few others like this. As you say, the SLIP encoding should be better parameterized in osc.js to support these cases. Thanks for pointing this issue out. I can't quite tell from their documentation, but does Show Cue Systems support UDP instead? That might be a good workaround in the interim.

@jwetzell
Copy link
Author

jwetzell commented Apr 5, 2024

It doesn't even officially support OSC yet. I'm currently working off beta builds I get nightly from the developer. I'm also trying to nudge them to just support SLIP when using TCP. I'm not really worried about my integration with this particular piece of software (was just looking at adding it to an existing project that uses this osc library) and ran into this SLIP dilemma. In a pinch I would just drop back to regular TCP socket and hand craft/decode OSC packets in whatever way pleased this software.

@colinbdclark
Copy link
Owner

That makes sense. Easy to do with the lower-level osc.js API if you need to roll your own transport. Thanks for sharing all the background information, it's very interesting!

@jwetzell
Copy link
Author

jwetzell commented Apr 5, 2024

Not sure I've explored enough of osc.js API yet, but I'll take a look. The amount of bespoke OSC implementations that exist make it a hard thing to accommodate.

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