Isadora hangs tryin to open a large patch


  • Tech Staff

    I have a project I am working on that until today had 2 scenes.
    1st is the main menu, the second is one choice from the menu.
    Today I added my other 9 choices to the menu.
    Duplicated the 2nd choice (audio analysis, video to DMX convertion, timeline triggering) 9 times, and links the main menu buttons, as well as; changes a source file and minor control panel labeling in each of the 9 new choice scenes (each one uses its own .mov audio file)
    Everything seemed to be going very well. Menu worked, each scene played its audio, and output DMX as expected.
    I saved the file twice, once right after the changes, and again with a new version number (for the next phase of work).
    Saving took 10+ mins each time.. and my Isadora file is now over 100mb.
    I shut down (machine needed a reboot for no Isadora reasons.)
    After restarting Isadora will open the pre duplication file (~25 mb), although it does become non responding for a minute or three.
    But I am unable to open the new multi-scene patch, Isadora become non responding, and seems to slowly add a few kb to its memory usage forever (I have let it run over 1/2 hour), CPU usage is up and down on multiple cores.. I have nothing else running.

    What are my options? Is there a way to get izzy to load a huge patch, without hanging? The same patch was running great when already open.


  • Tech Staff

    OK, it opens.. takes a very long time... so
    I am restructuring. Teaching my self some best practices in the process.



  • Hi dusx, here is a suggestion

    Open a empty patch and pause the engine, then open your patch and break it down into smaller patches to track the culprit.

    fubbi

  • Tech Staff

    I know you haven't mentioned it but have you got: 

    1) Have lots of video thumbnails loading too? As in video bins, etc
    2) Lots of cool and fancy GUI in a control panel (I know what your like! haha)
    3) Does each menu (is this a scene?) have individual control panels or are they all linked?

  • Tech Staff

    Thanks fubbi, Skulpture for the replies.
    I have got past the problem now, however; it was odd.
    I am working in f24 and f24 could not reopen the file.
    Luckily, f33 was able to open the file, and since file formats between the 2 are the same, I was able to work in f33 to remove the 'engine' from each scene (each scene was a duplicate of a work first scene) and drop it into a new scene that I launch in the background. Luckily I had built it rather module already, and each major component was wireless (only used broadcast + listen to communicate with other components) so pulling out 'engine' blocks was very easy.
    I had only 1 unit that I had to add a broadcast + listen too so that I could transfer the audio track to play to the engine.
    There was some timing problems at first since the engine takes a moment to load. A new actor 'scene active' might be nice to allow a sort of call back from background scenes so you know when they are responding.
    In anycase this got the file from 103mb down to 33mb, and it runs great now.

    to answer Skultures questions, no video at all, I am generating it within the patch and it is only 60px X 80px to keep cpu overhead to nothing. Some GUI, but nothing crazy.. far less than my mixer ;) but yes each scene has its own control panel... this part still I could thin down if I think of a good way to pass the track name to the gui so it can be displayed (maybe add as text on a video?)

    This project has confirmed some best practices for me in regards to programming in Isadora with an eye toward OO.
    I think that a new tutorial might come out of this.. teaching some advanced Object oriented programming strategies for Isadora.


  • Tech Staff

    f33? Didn't know there was a f33 - do you mean f32?


  • Tech Staff

    No, for windows it jumped to f33. You mac peeps are lingering behind ;p


Log in to reply
 

Looks like your connection to TroikaTronix Community Forum was lost, please wait while we try to reconnect.