-
Notifications
You must be signed in to change notification settings - Fork 150
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
[feature] Add OSC Support #446
Comments
Yes, so much yes! |
We'd love a PR for OSC support :) |
A PR will come once all the tasks are completed OR we would move the second task into a different issue and I will make a PR and we will do the other task in a later PR |
Point 1 of 2 is now done! For point 2, idk who to do it... so I hope someone else could help me out |
I updated the OSC Device in #464 Added a way to use custom path, added All_To_One send type (sends one big array with all the RGB data to the path) |
This issue has been automatically marked as stale because it has not had recent activity. It will be closed in a week if no further activity occurs. Thank you for your contributions. |
I'm interested in sending OSC messages to LEDfx to control it from a lighting desk or QLab. Maybe mapping incoming OSC messages to the existing REST API calls makes sense? I can take a shot at a PR if that approach is reasonable. |
This is a generic OSC->REST implementation: https://github.com/ohglobal/OSC-REST as a rough example - I think a more application-specific OSC vocabulary is probably more desirable. |
The OSC to REST mapping seems to be pretty simple - any OSC path without an argument is equivalent to a GET on that path, a path with an argument is a PUT/POST on that path. The only odd case is delete, but that could be handled with /path//delete. I'll put together a PR and push it for review. |
We welcome any contribution, sure we can work our way to good for everyone! |
This issue has been automatically marked as stale because it has not had recent activity. It will be closed in a week if no further activity occurs. Thank you for your contributions. |
/fresh |
I have a rough implementation of OSC server-side support using TCP and SLIP. It also could use UDP but I need TCP for my application so I can guarantee the commands are received by the server. If both are desirable we could listen on one port for UDP and another port for TCP. I overlaid the OSC vocabulary on top of the REST API schema and translate all incoming OSC messages into the corresponding REST API call, and return the result of the REST API call back to the OSC client. That allows OSC REST GET messages like "/api/info", "/api/config", etc to reply back to the OSC client process. I have also verified that PUT actions work, for example
will activate a scene called I think it would be better to extend the vocabulary to look something like:
or
but my current goal was to reuse as much code as possible to get something working and tested. The TCP server implementation is based on some work that has not been merged into python-osc yet, so I'm going to see if my OSC-specific changes can get merged there first, and then I'll look at pushing the LedFx-specific changes here. |
Is your feature request related to a problem? Please describe.
I would like to be able to use LedFx with my OSC Server which I also use for QLC+
Describe the solution you'd like
I would like that an OSC package like python-osc will be added into LedFx and a way to add an OSC Server as 'device'
Feature Progress
P.s. all the things that are checked off here are located at my fork
Discord thread
The text was updated successfully, but these errors were encountered: