Advanced sequencer gets really grumpy with advanced sequences

Issue #1343 open
3ric Johanson created an issue

Hi there,

I am shooting HDR astro – it’s an experimental new type of stacking. As part of this, I end up shooting lots of different timed exposures.

With the regular sequencer, it seems to handle this just fine. However, the advanced sequencer – is doing something to keep it really, really distracted for long periods of time. Takes 5 to 25 minutes to open the advanced sequencer tab. This becomes true when changing back to the imaging tab and back to the sequencer tab, or when scrolling down the list of shots.

There isn’t much in the logs, but I’ve attached the trace log with the only hardware connected as a simulated filter wheel.

I’ve attached a test profile – it takes ~13 minutes to load in the advanced sequencer. With trace enabled, not much is showing up.

Comments (6)

  1. Stefan B repo owner

    Hey,

    I’m assuming you are transforming the sequence from simple to advanced with the button on the simple sequence page.
    Just tried this out and it is taking a long while indeed. Main problem is that transforming the sequence to an advanced sequence is having all targets expanded, so it would be the same as having all tabs open at once in the simple sequencer. I can change the transformation to leave the panels collapsed, which will speed up the transformation by a lot and you only have a short loading time when you open one of the targets to render all the elements.

    Another option is to look into various plugins, where you most likely can solve this task more elegantly. Sequence Powerups with its variables and arithmetic comes to my mind, which look like they could solve this problem.

  2. 3ric Johanson reporter

    Yes, I’m transforming it from simple to advanced – I have code which writes out simple sequence xml files – I don’t see an easy way to make advanced sequences - -the format isn’t for mortal humans. :)

    It would be lovely if nina could be faster - happy to test it out if when you make that change.

    I’ll look into sequence powerups – I effectively have a list of exposures, such as below:

    double[] sequence1 = [1.0, 1.018, 1.037, 1.056, 1.076, 1.096, 1.116, 1.1360000000000001, 1.157, 1.179, 1.201, 1.223, 1.245, 1.268, 1.292, 1.315, 1.34, 1.364, 1.3900000000000001, 1.415, 1.441, 1.468, 1.495, 1.5230000000000001, 1.551, 1.579, 1.608, 1.6380000000000001, 1.668, 1.699, 1.73, 1.762, 1.795, 1.828, 1.862, 1.8960000000000001, 1.931, 1.967, 2.003, 2.04, 2.077, 2.116, 2.1550000000000002, 2.195, 2.235, 2.2760000000000002, 2.318, 2.361, 2.4050000000000002, 2.449, 2.494, 2.54, 2.587, 2.6350000000000002, 2.6830000000000003, 2.733, 2.783, 2.834, 2.887, 2.94, 2.994, 3.0500000000000003, 3.106, 3.1630000000000003, 3.221, 3.281, 3.341, 3.403, 3.466, 3.5300000000000002, 3.595, 3.661, 3.729, 3.797, 3.867, 3.939, 4.011, 4.085, 4.1610000000000005, 4.238, 4.316, 4.3950000000000005, 4.476, 4.559, 4.643, 4.729, 4.816, 4.905, 4.995, 5.087, 5.181, 5.277, 5.3740000000000006, 5.473, 5.574, 5.6770000000000005, 5.782, 5.888, 5.997, 6.1080000000000005, 6.22, 6.335, 6.452, 6.571, 6.692, 6.816, 6.941, 7.069, 7.2, 7.333, 7.468, 7.606, 7.746, 7.889, 8.034, 8.183, 8.334, 8.487, 8.644, 8.803, 8.966, 9.131, 9.299, 9.471, 9.646, 9.824, 10.005, 10.189, 10.377, 10.569, 10.764, 10.962, 11.164, 11.370000000000001, 11.58, 11.794, 12.011000000000001, 12.233, 12.459, 12.688, 12.922, 13.161, 13.404, 13.651, 13.903, 14.159, 14.42, 14.686, 14.957, 15.233, 15.514000000000001, 15.8, 16.092, 16.389, 16.691, 16.999, 17.312, 17.632, 17.957, 18.288, 18.626, 18.969, 19.319, 19.675, 20.038, 20.408, 20.784, 21.168, 21.558, 21.956, 22.361, 22.773, 23.193, 23.621000000000002, 24.057000000000002, 24.501, 24.953, 25.413, 25.882, 26.359, 26.846, 27.341, 27.845, 28.359, 28.882, 29.415, 29.957, 30.51, 31.073, 31.646, 32.229, 32.824, 33.429, 34.046, 34.674, 35.314, 35.965, 36.629, 37.304, 37.992, 38.693, 39.407000000000004, 40.134, 40.874, 41.628, 42.396, 43.178000000000004, 43.975, 44.786, 45.612, 46.453, 47.31, 48.183, 49.072, 49.977000000000004, 50.899, 51.838, 52.794000000000004, 53.768, 54.76, 55.77, 56.798, 57.846000000000004, 58.913000000000004, 60.0];
    double[] sequence2 = [50.0, 50.146, 50.293, 50.44, 50.588, 50.735, 50.884, 51.033, 51.182, 51.332, 51.482, 51.632, 51.783, 51.935, 52.087, 52.239000000000004, 52.392, 52.545, 52.699, 52.853, 53.007, 53.162, 53.318, 53.474000000000004, 53.63, 53.787, 53.944, 54.102000000000004, 54.26, 54.419000000000004, 54.578, 54.738, 54.898, 55.059000000000005, 55.22, 55.381, 55.543, 55.705, 55.868, 56.032000000000004, 56.196, 56.36, 56.525, 56.69, 56.856, 57.022, 57.189, 57.356, 57.524, 57.692, 57.861000000000004, 58.03, 58.2, 58.370000000000005, 58.541000000000004, 58.712, 58.884, 59.056000000000004, 59.229, 59.402, 59.576, 59.75, 59.925000000000004, 60.1];
    double[] sequence3 = [1.0, 1.058, 1.119, 1.183, 1.252, 1.324, 1.4000000000000001, 1.481, 1.566, 1.657, 1.752, 1.853, 1.96, 2.073, 2.193, 2.319, 2.453, 2.595, 2.744, 0.001, 2.903, 3.0700000000000003, 3.247, 0.002, 3.435, 3.633, 3.842, 0.004, 4.064, 4.298, 4.546, 0.008, 4.809, 5.086, 5.38, 0.016, 5.69, 6.018, 6.365, 0.032, 6.7330000000000005, 7.121, 7.532, 0.064, 7.966, 8.426, 8.912, 0.128, 9.426, 9.97, 10.545, 0.256, 11.153, 11.797, 12.477, 0.512, 13.197000000000001, 13.958, 14.764000000000001, 15.615, 16.516000000000002, 17.469, 18.477, 19.543, 20.67, 21.863, 23.124, 24.458000000000002, 25.869, 27.361, 28.94, 30.609, 32.375, 34.243, 36.218, 38.308, 40.518, 42.855000000000004, 45.327, 47.942, 50.708, 53.633, 56.727000000000004, 60.0];
    double[] sequence4 = [50.0, 50.462, 50.928000000000004, 51.399, 51.874, 52.354, 52.837, 53.326, 53.819, 54.316, 54.818, 55.324, 55.836, 56.352000000000004, 56.873000000000005, 57.398, 57.929, 58.464, 59.004, 59.550000000000004, 60.1];
    double[] sequence5 = [1.0, 1.018, 1.037, 1.056, 1.076, 1.096, 1.116, 1.1360000000000001, 1.157, 1.179, 1.201, 1.223, 1.245, 1.268, 1.292, 1.315, 1.34, 1.364, 1.3900000000000001, 1.415, 1.441, 1.468, 1.495, 1.5230000000000001, 1.551, 1.579, 1.608, 1.6380000000000001, 1.668, 1.699, 1.73, 1.762, 1.795, 1.828, 1.862, 1.8960000000000001, 1.931, 1.967, 2.003, 2.04, 2.077, 2.116, 2.1550000000000002, 2.195, 2.235, 2.2760000000000002, 2.318, 2.361, 2.4050000000000002, 2.449, 2.494, 2.54, 2.587, 2.6350000000000002, 2.6830000000000003, 2.733, 2.783, 2.834, 2.887, 2.94, 2.994, 3.0500000000000003, 3.106, 3.1630000000000003, 3.221, 3.281, 3.341, 3.403, 3.466, 3.5300000000000002, 3.595, 3.661, 3.729, 3.797, 3.867, 3.939, 4.011, 4.085, 4.1610000000000005, 4.238, 4.316, 4.3950000000000005, 4.476, 4.559, 4.643, 4.729, 4.816, 4.905, 4.995, 5.087, 5.181, 5.277, 5.3740000000000006, 5.473, 5.574, 5.6770000000000005, 5.782, 5.888, 5.997, 0.001, 6.1080000000000005, 6.22, 6.335, 6.452, 6.571, 0.002, 6.692, 6.816, 6.941, 7.069, 7.2, 0.004, 7.333, 7.468, 7.606, 7.746, 7.889, 0.008, 8.034, 8.183, 8.334, 8.487, 8.644, 0.016, 8.803, 8.966, 9.131, 9.299, 9.471, 0.032, 9.646, 9.824, 10.005, 10.189, 10.377, 0.064, 10.569, 10.764, 10.962, 11.164, 11.370000000000001, 0.128, 11.58, 11.794, 12.011000000000001, 12.233, 12.459, 0.256, 12.688, 12.922, 13.161, 13.404, 13.651, 0.512, 13.903, 14.159, 14.42, 14.686, 14.957, 15.233, 15.514000000000001, 15.8, 16.092, 16.389, 16.691, 16.999, 17.312, 17.632, 17.957, 18.288, 18.626, 18.969, 19.319, 19.675, 20.038, 20.408, 20.784, 21.168, 21.558, 21.956, 22.361, 22.773, 23.193, 23.621000000000002, 24.057000000000002, 24.501, 24.953, 25.413, 25.882, 26.359, 26.846, 27.341, 27.845, 28.359, 28.882, 29.415, 29.957, 30.51, 31.073, 31.646, 32.229, 32.824, 33.429, 34.046, 34.674, 35.314, 35.965, 36.629, 37.304, 37.992, 38.693, 39.407000000000004, 40.134, 40.874, 41.628, 42.396, 43.178000000000004, 43.975, 44.786, 45.612, 46.453, 47.31, 48.183, 49.072, 49.977000000000004, 50.899, 51.838, 52.794000000000004, 53.768, 54.76, 55.77, 56.798, 57.846000000000004, 58.913000000000004, 60.0];
    

    .. Which I blast into a sequence with various filters.

    I looked at the sequence powerups – but I didn’t see a way to make it work. I’ll ask on the discord.

  3. 3ric Johanson reporter

    Ok, your tip was really key.

    I took one of the advanced sequences I had saved out – and manually changed all of the "IsExpanded": true to false outside of nina, and it could open it in seconds! Wooo.

    I think your proposed fix would work well, but for now, I have a workaround by saving it out and then reopening it.

    Thank you!

  4. 3ric Johanson reporter

    @Martin Junius - Thanks, this looks like a much more thought out version of what I banged out in c sharp. The problem I’m having is that the sequences I’m generating are breaking the advanced sequencer due to how long and complex they are. I suspect your code could reproduce this same problem – I have about 2000 (unique) exposures in a simple sequence and I’m trying to migrate into an advanced sequence.

  5. Log in to comment