Change multiple projector values within and across scenes

  • Hi all,

    I'm not sure if this is a completely dumb question, or not, so forgive me.
    Also, I have not yet upgraded, so I'm still using Izzy 1.0.
    Basically, I have a patch that uses A LOT of quad distort projectors and the show is touring to a bunch of different sites that will require different focuses, but with limited ability to change the projector I'm going to have to refocus the projectors in Isadora.  The way it's built (probably not the best way) there are 8 different possible projectors and the videos I'm using bounce back and forth between them, meaning that those 8 projectors get reused both within the same scene and across scenes.  Is there a way to change the values of Projector 1 (x1, x2, y1, y2, etc) and have it change the corresponding values in all of the other Projector 1s; and then do the same thing for Projectors 2-8?  If not, it's going to take me hours to focus for each of my performances at each different site.
    Any help?
    MBP 10.9.5, 2.4 ghz Intel Core i5; 8 GM 1600 MHz DDR3
  • Tech Staff

    The only way to allow for these types of cross scene updates is to use 'user actors'. If you have put your projectors inside user actors that are reused in each scene you can update (projector 1) and use the update all feature of user actors to update all other matching Instances. In your case it sounds like the ideal setup might have 8 different user actors, each with a projector and used in eacherrypy scene (although all could be in a single user actor just as easily). Not sure this is any help to you.. but it may be best to rebuild in this manner once to save time at each venue.

  • Hello,

    There is two other way to do it…
    – send video via broadcaster/listener to an unique scene activated in background, you make the setting there and all your movie player sending video to the same projector inside this scene, voilà.
    – more sophisticated and powerful, one scene for setting with all the quad parameters recorded via data array to an external file. Then each scene, when you enter it, load the same quad parameters via data array. You can have different presets, voici.
  • Tech Staff

    Given the needs of your project -- you need to change a lot of values, but only ONCE at each site during tech, and not during the actual performance -- I'd simply opt for eight user actors as well. Simple for you to track, and if individual scenes are manipulating other properties (such as playing different videos or you are doing fade up/fade down with the intensity property) you'll still be able to manipulate those via user inputs.

  • Beta Platinum

    I have read all the above ideas and they will all work.

    I hate to say it but but the easiest way and most easily implemented idea is to carry on what your doing (don't hate me!).
    One other additional method could be to use a iPad or tablet with Touch OSC linked to all corners, then you can move everything in place quite quickly and then fine tune it with the mouse and keyboard. This will still require a fair amount of setting up though.... so its catch 22 (as they say).
  • Tech Staff


    Those are both options for sure.. however best suited to the needs of real-time manipulation.
    Personally I consider it 'best practice' to wrap projectors in User actors from day 1, and build up in this manner.

  • @Dusx

    I opt for data array because i often make creation but doesn't go on tour. With the demo software and data array, the technician can record the setting to an external file and recall it, you cannot do it with user actor.
  • Tech Staff


    In that case I can see the external being helpful.... although I would personally use a JSON file loaded into the javascript actor. Mostly because JSON allows you to use descriptive names for the object variables.
    ( to include a file in the Javascript actor... use 
      as the first line.. it will be parsed as Javascript, so you can set variables in this file as you like. )

  • @DusX i would love to see a couple of js patches

    somehow it is not so easy to get an idea what can be done and how
    so if you are happy to share some of the magic i think not only me will appreciate it :)
    thanks in advance
  • Tech Staff

    I will put a tutorial on this together...

    Its very flexible.
  • Tech Staff

    OK, I have written a little tutorial on loading external variables via Javascript..

    I didn't get into the more advanced JSON options, but that's really just a matter of learning more about Javascript.
    The method outlined is a good starting point, that is easy to use.
    I haven't proofed it very well.. so please if you find issues/typos etc.. let me know and I'll clean it up.

  • @dusx

    I am very interested by your tutorial, but my version (2.0.5) of Isadora doesn't accept "include".
    I joint the screen captures.

    4622fe-capture-decran-2015-08-03-a-09.49.28.png 0169a1-capture-decran-2015-08-03-a-09.49.43.png

  • Tech Staff

    I setup the tutorial in the same version. The error you are getting is due to the data file being empty. You will need to ensure the file exists and that it at least contains a comment. //comment format I will read thru my steps and see if I haven't covered that issue.

  • @DusX brilliant, thank you

    it's working very well,
    now we just have to learn java script

  • @Dusx

    Thank you, now I can close the javascript actor. I think you have to change the order in your tutorial, first the "data.js" file creation, then the javascript actor creation.
    I have 2 other problems:
    – the text I output from Isadora doesn't support non-english letters, aka accent etc. Unfortunately, I am french, so I need it… :-), how to correct that? (I have the same problem with quartz composer, 
    – the second problem is: how to record quad setting from Isadora to data.js file? With data-array it's easy, I don't know how to do with javascript. Do you have a solution?
    Thank you for your help.
    Jacques Hoepffner
  • Tech Staff

    Your right... I need to fix the order.. so or about that, I will update it ASAP. Re- international text. This is a know limitation of isadora currently. Unicoie support is planned for a future release. Re- saving the data to file is not currently possible. I have made a request to address this, and am confident a solution will be coming. But for now that data file must be manually entered.

  • @Dusx

    – It's so long time I ask to Mark for unicode, I hope it because it would change many thing concerning (between other) subtitling.
    – without saving data, it's not so interesting, but I stay tuned and I wait for a good javascript in Isadora tutorial, I will translate it in French after.
    Thanks a lot for your lights.
    I prepare a little patch with data array recording, first scene is for setting, with zero and 2 different setting recordable in separate file, scene 2 use the setting 2, scene 3 use setting 3.
    You can use a demo licence and still record the new settings without reporting them, easier and errorless…
    Hope the sample is clear.
    Jacques Hoepffner

  • Hi all,

    Firstly, thanks so much to everybody for the very helpful advice.
    As a theatre director that dabbles in my own projection design, my learning curve has been reallly slow. Basically every time I make a show, I learn something new about Isadora, usually in the crucible of tech, which is always fun...but I only really make a big show once a year, so... Anyway, I never taught myself how to make User Actors and, presto chango, my Isadora life is vastly improved!  Thanks for pointing me in the right direction!!
    A lot of what you shared is beyond my abilities, to be honest, but I am now encountering what I consider a VERY STRANGE problem that i wanted to see if anybody has encountered.  I rebuilt the show with new User Actors and everything is great!...but now, for some reason I cannot understand, my patch doesn't always work when I show stages...but sometimes it does...
    Actually, I can run the patch in Show Stages and it'll work great and then the next time I run it, it won't work at all...and then I'll disconnect from my external monitor and it shows up immediately working in Preview...and then the next time I run it in Preview it won't work and then I click Show Stages and it works there.  What is happening?!
    I'm actually IN THE MIDDLE OF MY TOUR/RUN so this is kind of crucial to figure out asap.  It's just that it doesn't appear to be an issue with the patch because it fires some of the time...and I tried it with two different computer connection setups (one Mac/DVI to ext monitor; one Mac/VGA to projector) with the same result. 
    Can anybody give me any ideas what I can do to fix this...?
    Thanks in advance!


    The issue seems to be in a jump from one scene to the next.  One scene -- a relatively straight forward patch -- will not fade.  No matter what I set the count to it jumps and then it won't trigger the next scene.  So I put a 1 second black scene as a pass through between the two and now the second scene will fire, but the first scene still will not fade.  That makes NO sense to me.  The other strange thing is that in the original scenario when the second scene doesn't get properly fired it causes all the other scenes to stop working...but if I toggle between Preview and Show Stages everything is working as normal.  It feels buggy but I don't have time to remake it.  
    Any thoughts greatly appreciated.
  • Beta Platinum

    The only thing I can suggest is posting the patch so we can have a look at it.