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

Feature Request: Artnet Input Plugin #132

Open
freaknils opened this issue Jun 9, 2021 · 7 comments
Open

Feature Request: Artnet Input Plugin #132

freaknils opened this issue Jun 9, 2021 · 7 comments

Comments

@freaknils
Copy link

It would be really nice to have an Artnet Input Plugin to control the display using Artnet.

Maybe the OLA libartnet could be used to implement https://github.com/OpenLightingProject/libartnet.

Thanks!

@vifino
Copy link
Member

vifino commented Jun 9, 2021

Hey, we have an issue for this already: #19
I wanted to implement artnet or sACN support in sled for a long time, never got around to it.
Now that there is another issue about this, I'm actually gonna do it.

@freaknils
Copy link
Author

Ahh very nice! I am not really good at C but if you need support, please let me know!

@vifino
Copy link
Member

vifino commented Jun 10, 2021

Mostly more specifics about how you'd want the artnet support to look like:

Does a plugin that runs in the background and when there is artnet input switch over to the pixels sent to it sound good to you?

Do you want just pixel control or control of the effects displayed?
I would suggest just pixel control for now, because it is the easiest.
Since a DMX channel contains 512 values, each pixel would be 3 (or 4) bytes. That means ~170 pixels per universe.
A simple 32x32 matrix would take up 6 universes. 64x64 would take up 24.
My 256x256 matrix would take up an entire 384 universes(!!!).

The easiest is probably starting at universe X value 0, going up until the necessary many values are there for every pixel.
Does this sound good to you?

@freaknils
Copy link
Author

This should be a solution. I think first of all controlling each pixel by 3 channels should be enough.

But probably it should be easier to use only one universe for a row, if there do not fit more than 1 row inside of the universe. For example:
You have a matrix of 32x32, there are 96 channels per row needed, so you can fit 5 rows (480 channels) in one universe.

That's the way QLC+ or other tools work like.

@vifino
Copy link
Member

vifino commented Jun 10, 2021

Ah, so you mean to only stuff complete rows into a single universe, not partial ones.
What should happen if a single row has more than 170 pixels? How should pixels be split with a 512x512 matrix? You'd need 1536 universes for the whole matrix, each row being 3 (or 4) universes.

@freaknils
Copy link
Author

freaknils commented Jun 11, 2021

Ah, so you mean to only stuff complete rows into a single universe, not partial ones.

Yey, seems to me more practical.

What should happen if a single row has more than 170 pixels? How should pixels be split with a 512x512 matrix? You'd need 1536 universes for the whole matrix, each row being 3 (or 4) universes.

This could be a problem, but I think this size of matrices are very rare. What do you think?

@freaknils
Copy link
Author

@vifino is there already a presentabel version of your Artnet controller?

Thanks!

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