Author Topic: Render All on Button Bar vs. Render on Save Setting  (Read 2253 times)

Offline Gary

  • Full Member
  • ***
  • Posts: 105
    • View Profile
    • www.diamondcrescent.com
Render All on Button Bar vs. Render on Save Setting
« on: September 16, 2016, 01:56:40 AM »
What's the difference between Render All on the button bar vs. the Render on Save option in the Settings menu?

I keep the Render on Save option turned off in the interest of being able to save my work often without the penalty of a long wait time to create a FSEQ file, so you'd think that the Render All button beside the Save/Save As button would create a FSEQ file, but it doesn't seem to make one. However, if there's something wonky happening with my effects, it does "clean" them up, though.
www.diamondcrescent.com

Offline dkulp

  • Supporting Member
  • Hero Member
  • *
  • Posts: 812
    • View Profile
Re: Render All on Button Bar vs. Render on Save Setting
« Reply #1 on: September 16, 2016, 06:33:19 AM »
What's the difference between Render All on the button bar vs. the Render on Save option in the Settings menu?

I keep the Render on Save option turned off in the interest of being able to save my work often without the penalty of a long wait time to create a FSEQ file, so you'd think that the Render All button beside the Save/Save As button would create a FSEQ file, but it doesn't seem to make one. However, if there's something wonky happening with my effects, it does "clean" them up, though.

Save/SaveAs will always write the XML as well as write the current data in the internal buffer into the fseq file.   The render button just renders all the data into the internal buffer.   The RenderAllOnSave setting will cause the save routine to call the rendering between the two steps above.

Daniel Kulp
Framingham, MA

Offline Gilrock

  • Supporting Member
  • Hero Member
  • *
  • Posts: 6946
    • View Profile
Re: Render All on Button Bar vs. Render on Save Setting
« Reply #2 on: September 16, 2016, 07:54:14 AM »
If you want to work that way you just have to remember to hit the Save button after you do a Render All.  We don't want Render All to force a file update we only want files to update when the user commands it with a Save.

Offline Gary

  • Full Member
  • ***
  • Posts: 105
    • View Profile
    • www.diamondcrescent.com
Re: Render All on Button Bar vs. Render on Save Setting
« Reply #3 on: September 16, 2016, 10:06:06 PM »
Where is the internal buffer? That is: does it create a file somewhere (nothing in the Documents folder that I've seen), or does it somehow read the FSEQ file if there is one and load into RAM to get the "complicated" effects ready to go when you first open up xLights and an XML file? I've noticed that sometimes when I open a sequence XML file and I try playing it, I just get darkness; I have to click on various effects to render them so I can view them as I go, or press the Render All button and wait for it to finish.  At other times, I can open up an XML file and it plays in all its glory right away.

I haven't really investigated exactly why this is happening, but I have been renaming my XML files and deleting some FSEQ files for various reasons, so that's why I figure the FSEQ files have something with the "internal buffer" as you call it. Is is related?
www.diamondcrescent.com

Offline Gary

  • Full Member
  • ***
  • Posts: 105
    • View Profile
    • www.diamondcrescent.com
Re: Render All on Button Bar vs. Render on Save Setting
« Reply #4 on: November 15, 2016, 09:28:06 PM »
The render button just renders all the data into the internal buffer.

I'm bringing this thread back to life because I realized that I didn't get an answer on where the internal buffer is, how long it's stored, how/when it's retrieved, etc.. Sometimes when I open up a sequence with an effect on my entire house, part of the house remains dark when I first play it. If I click on in the grid, it shows in the preview, and after it repeats a few times, it "rebuilds". I have another example where if I open up one of my sequences and play it, the preview is completely blank. I need to click on the effects for them to rebuild. This has never happened before on this sequence.

Enquiring minds want to know.  :)
www.diamondcrescent.com

Offline dkulp

  • Supporting Member
  • Hero Member
  • *
  • Posts: 812
    • View Profile
Re: Render All on Button Bar vs. Render on Save Setting
« Reply #5 on: November 16, 2016, 06:37:01 AM »

The internal buffer is just a large byte array of the raw data for each channel for each frame.   It's completely "in memory" and thus has no effect on what's on the disk.  It is "perfectly sized" based on the the number of frames of the sequence and the number of channels.

When an XML sequence is opened, one of three things happens:

1) If there is no fseq file present matching the XML, the internal buffer is created as above.  It's completely initialized to blank data.

2) If there is an fseq file present, but it doesn't match the right "size", then a new buffer is created with blank data.   If you change the length of a sequence (shorten), change the timing (50ms->25ms), or change the number of channels (added outputs, etc....), then this would be triggered. 

3) If the fseq is present and all the right params match, the internal buffer is loaded with the contents.

If you are loading a sequence and getting blank data in the preview, you've likely hit #1 or #2.   Simple solution is to just re-render and re-save.   That should create a new fseq with up-to-date information and rendered data.


Daniel Kulp
Framingham, MA

Offline Gary

  • Full Member
  • ***
  • Posts: 105
    • View Profile
    • www.diamondcrescent.com
Re: Render All on Button Bar vs. Render on Save Setting
« Reply #6 on: November 16, 2016, 08:05:38 AM »
If you are loading a sequence and getting blank data in the preview, you've likely hit #1 or #2.   Simple solution is to just re-render and re-save.   That should create a new fseq with up-to-date information and rendered data.

That's a bit of a head-scratcher as I've recently re-created all the FSEQ files for my sequences, so they are in the same directory as my XML files and I didn't change the length/timing/channls of my sequences since.  ??? I suppose that adding or removing my DLA USB DMX Dongle to/from the Setup tab would make a difference?
www.diamondcrescent.com

Offline sean

  • Administrator
  • Hero Member
  • *****
  • Posts: 1727
    • View Profile
    • Xlights and Nutcracker Forum
Re: Render All on Button Bar vs. Render on Save Setting
« Reply #7 on: November 16, 2016, 08:41:21 AM »
the fseq size is the number of channels shown in SETUP x # of frames. No relation to number of models.
You define 10000 channels but only sequence 10 of them. fseq is still 10000x#frames.

You can just delete all the fseq files and resave your sequences if you are seeing issues.
Sean
Littleton, CO
Latest releases http://nutcracker123.com/nutcracker/releases
xLights/Nutcracker Forum http://nutcracker123.com/forum/index.php
Fbook [url=https://www.facebook.com/groups/62