Closed sammysmallman closed 6 years ago
Yes, definitely! An sACN backend would probably share a lot of architecture with the existing ArtNet backend, so it might not even be that hard!
If you'd like to try your hand at it:
To start a new backend, you'd have to
backend-name.h
and backend-name.c
makefile
for it to be builtint init()
in the new backendThis would give you a basic backend entry point, from which you can register the backend with the core using the mm_backend_register
function. This function takes a structure as argument which contains pointers to the other functionality provided by a backend.
I'm currently busy with exam preparation until Thursday, but after that I might be able to sneak in some hours of implementing this :)
Thanks for the suggestion!
I'm also very interested in this. Might poke at it over the weekend.
Do you know of any Open-Source sACN producers/consumers to test an implementation against?
The only platform supporting this in production which is available to me would be the GrandMA2 series (and that'll have to wait a few days), though I'd quite like to have my ArtNet Visualizer martrix support sACN, too, so that could be a self-fulfilling prophecy :D
The only open source one I'm aware of is OLA. I've not played enough with it to ever make it work though. https://github.com/OpenLightingProject/ola/tree/master/libs/acn
Just remembered that the MAdot2 series grant one Universe without having MA hardware connected, and the OnPC seems to support sACN, too (at least according to their docs) - might try with that.
Edit: Hm, according to their docs you need hardware, though I distinctly remember from somewhere that it does do one Universe without.
Test with sACN Viewer: http://docsteer.github.io/sacnview/
Sent from my iPhone
On 24 Feb 2018, at 04:15, cbdev notifications@github.com wrote:
Just remembered that the MAdot2 series grant one Universe without having MA hardware connected, and the OnPC seems to support sACN, too (at least according to their docs) - might try with that
— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub, or mute the thread.
I just pushed a partial sACN backend implementation, currently only supporting input via sACN. The mapping syntax is the same as the ArtNet backend, documentation will be updated when output is implemented.
Tests with sACNView seem to work :)
I'll give this a try with eos tomorrow, my current project would be much better off with sACN instead of artnet.
Output support is now implemented, still missing are
Limitations:
Thanks for this. I gave sACN support a try today and it seemed to work fairly well out of the box. I noticed that it used universe where artnet used uni, which was not immediately clear in the configs (or maybe you've updated artnet as well).
I did notice more glitches/dropped messages today than I did when testing with artnet last week. I have not dug into the details enough to see if it's midimonster dropping messages or if its something else in my network thats changed, just an observation.
Everything except keep-alive frames is now implemented, marking this backend as complete for now.
Keep-alive frames are on the TODO list.
With be5df1c4e639ca6a7cd70a3122039a1de4588e28, keepalive frames are implemented
Would it be possible that this could support Streaming ACN - E1.31?