Enhancement Suggestions

Gilrock

Full time elf
Joined
Jan 4, 2013
Messages
445
Location
Tucson, AZ
A couple suggestions from using xLights. As I'm building up effects on the Nutcracker tab I like to hit Save and then switch to the Preview tab and look at the whole house. When I pause the sequence somewhere that I'd like to modify it would be great if when I click back over to the Nutcracker tab it was already highlighting the row that matches where I was in the sequence.

The other issue is if I pause the sequence in the Preview window and then click the Nutcracker tab and then click back to the Preview tab it resets the sequence back to the beginning. It makes it hard to work my way through a sequence if I keep having to advance back to where I was in the song.

For random effects it would be nice to be able to refine which rows are affected like "Selected Row -> Forward" and "Selected Rows Only".

I'm interested in becoming part of the development team if you want to contact me and discuss how I could start getting involved.
 
Better flipping back and forth between the two tabs is on my todo list as it's really bugging me. With the super fast saves we have now, flipping back and forth is much more possible. I haven't decided if when I flip from Nutcracker to Preview if it should stay where it left off or move to the start of whatever was the hilighted row. I kind of like the latter option. Hadn't thought about the Preview -> Nutcracker page flip, but that certainly makes a lot of sense as well.


The code is all at GitHub:


https://github.com/smeighan/xLights


with README's for the various platforms.
 
The ui is going to be different in xlights 4. There is no grid. Each model is drawn horizontally. U have 80 models there will be 80 rows of a very thin rectangle. It is like 5-10 pixels high. There will be a few more rows for timing. When u have an audacity timing file, it creates a row. One row could be your main timing, another beat marks, another the timing of a single instrument. When u select one of these timing rows, it extends down gray vertical lines across your 80 models. There is a panel with small icons, one for each nutcracker effect. Drag the icon and drop on a model, starting and ending times use the gray timing marks. The ui looks like a video editor, instead of video tracks we have model tracks, timing track, audio tracks. Audio file is drawn with a waveform (think how audacity draws it). U can zoom in and out. Every window is dock able, floatable, sizable. Windows can be dragged to 2nd monitor. The preview tab will be gone. It will just be another window.

Everything I described is done now in the alpha 4.0 prototype, notice nothing actually works. This means we are about 20% done. It is a prototype to test the ui. Dave did the work, I gave design feedback. Dave and I stopped working the code since neither of us had a show until yesterday. After we get sequences, props, movies all finished for this years show , we will return to 4.0. I have not seen the actual code as Dave has not been ready to check in the initial branch. When he does so, we will share with the dev team and solicit input from the user community for ui improvements. For example, what shortcut keystrokes should we implement. Ctl-o, ctl-s, standard windows stuff. Should we also implement ctl-1 to zoom in, ctl-3 to zoom out like audacity?

Look for the alpha prototype ( no xlights functionality, just a functioning ui) in January.

So I am saying that 3.6.xx xlight ui changes may not be high priority since 3.6 is going to be frozen when we move to 4.0
 
Do not want to come across as negative but it sounds a bit like Vixen 3.
 
damona said:
Do not want to come across as negative but it sounds a bit like Vixen 3.


not negative at all. A video editor type of interface for xlights was discussed among the developers in early 2013, it just took two years until dave pitts came along to make it a reality.


Vixen 3 and xlights have totally different architectures internally.


Matt Brown designed ours, it is very fast and very small.


Here is an example.
Make a vert matrix 200 strings of 200 rgb lights. That is 120,000 channels.


xlights can update effects on that model in real time at 20fps. Slide the sliders, the effect changes.


xlights is a 32 bit app, single threaded. While running an effect on this matrix it uses less than half of a single cpu and under 150 megs of ram. If 500,000 channels it uses 190 megs of ram. The frame rate drops to 4fps while creating effects (the real time tab), playback of 500,000 channels is at 20 fps.


Another difference in our xlights 4.0 is there will be a grid that allows you to edit any channel, any value. Think like a Vixen 2 grid. You can stay at the model level, like Nutcracker or go to the channel level.


I have said that the best UI i have seen is Vixen 3.
We want a UI like it but on top of our core engine.


so pick the sequencer that works for you. We are developing xlights first for ourselves and then for others who use it.


here is a picture of 400x400 matrix or 480,000 channels generating a bars effect.


xlights_cpu.PNG
 
Vixen 4 ???? Vixen 3 GUI and Xlights/Nutcracker Core ????

Vixen 3 Guys have spent a lot of time on the GUI both the scheduler and preview, they more recently spent time speeding up the core. https://github.com/sall/vixen/blob/master/Release%20Notes.txt

I suspect once you add a GUI like Vixen 3 the size will blow out.

Did your test vixen 3 endup near 900MB in size. It started at around 400MB.
 
current xlights binary is 3.3mbytes. The GUI code (which is mostly done) is 6.5mbytes.
Therefore xLights 4.0 should be around 10-15 mbytes in size. It needs a 24 mbyte wxwidgets libray. So we are expecting the final xlights 4 to be around the 30-40 mbytes (including the library).




Now if you are talking about the amount of memory used during rendering, we are not changing the nutcracker engine, just a new GUI. We will see when we finish coding it all up in january/february.


we have a different architecture. As dave mentioned because we use wxwidgets we produce native windows, mac and linux versions. That will continue to be true in xLights 4.0
 
FYI Vixen 3 is written in C# & .NET which has been ported to many platforms. http://www.mono-project.com/docs/about-mono/ This thread reminded me to put an enhancement request in for it.

I like X-Lights/NutCracker effects, looking forward to seeing what you guys can do.

I will suggest you place the effects in a Library (.DDL/.so).

Cheers
Damon.
 
Yeah I listened in on Teamspeak for the last online conference about xLights so I heard about the new version coming out. You said that night that the newer code wouldn't be out on GitHub till later so I think I'll wait till that comes out before I start looking into it. I have some features I'd like to see incorporated and I'm willing to put them in.
 
Back
Top