Jump to content

Changing layer conditions with String Cues


Vollmers

Recommended Posts

Hi

 

I'm trying to create a show, where it is possible to enable/disable layer conditions from a string cue. What I have done so far is this:

I made a string output, which in this case is set to TCP - 127.0.0.1 ( localhost ) and to port 3040, which should be the production machine.

I now created an aux timline, which on TC 1.0 send this syntax: public var LayerCond:1$0D - and here I want to enable layer 1. 

I'm not shure if it's possible to use this syntax here, and since it's not working, I'm sure something is wrong  ;) Normally I would expect it to be a boolean syntax of some kind.

Have anyone tried to do this before??  :blink: 

 

Cheers Christian

Link to comment
Share on other sites

  • Moderator

What is TC 1.0?

 

To send the command you want from a WATCHOUT string cue,

you can not use a variable name, you would need to hard code the condition value.

 

To enable ONLY layer 1, all other layers disabled, you would enter

    enableLayerCond 1$0D

in the string cue dialog.

Link to comment
Share on other sites

Thanks for being available during Christmas.

 

And sorry, to many years in the television industry  ;) TC means timcode, and I only mentioned it, to make it clear that I didn't trigger the command cue, on zero in timeline.

After posting my question, I realized that using variables was not possible. I've changed the string now, but get an error saying "Failed delivering data".

Is it possible to program everything in advance on a production machine, and exucute the strings, to see if it works? As i wrote, I've configured my string output to: 127.0.0.1:3039

to make it run as localhost. And then, of course, change the ip and port, when I import the show to my studie setup. 

 

Best regards Christian

Link to comment
Share on other sites

  • Moderator

Thanks for being available during Christmas.

 

And sorry, to many years in the television industry  ;) TC means timcode, and I only mentioned it, to make it clear that I didn't trigger the command cue, on zero in timeline.

After posting my question, I realized that using variables was not possible. I've changed the string now, but get an error saying "Failed delivering data".

Is it possible to program everything in advance on a production machine, and exucute the strings, to see if it works? As i wrote, I've configured my string output to: 127.0.0.1:3039

to make it run as localhost. And then, of course, change the ip and port, when I import the show to my studie setup. 

 

Best regards Christian

 

Got it on the timecode abbreviation.

 

I have done the 'WATCHOUT talking to WATCHOUT IP control' myself, so I know it will work - with either production or display.

 

Yes it is possible to pogram to port 3040 and change the port to 3039 just before removing production.

You need to use port 3040 when running production and port 3039 when running cluster.

I suspect your error is from using port 3039 when running production, that is expected.

Note production does not need the authenticate command, cluster does need the authenticate command,

so the cue strings are not exactly the same for either.

 

When I do it, I put in two string output devices, one for production and one for cluster mode,

with duplicate cues, one to each one of them.

One of the two will always error with the 'failed delivering data' message.

I sometimes put them on conditional layers to avoid that error,

but since you are using conditional layers in this case, that might add to confusion.

It could still be done, but managing it that way requires a bit more attention to detail.  ;)

Link to comment
Share on other sites

  • 1 year later...

Hi we are having a little trouble with this.  We are able to set layer conditions successfully for all cases except one:  When we try to turn off all layer conditions.  We have tried sending 0 as the parameter to enableLayerCond, but the result is no change in the layer conditions state.  For now, we are sending a parameter like 32 to turn on an unused layer condition and force the used conditions to off.  Is there a parameter to send that will clear all layer conditions?

Link to comment
Share on other sites

  • 2 weeks later...
  • Moderator

Hi we are having a little trouble with this.  We are able to set layer conditions successfully for all cases except one:  When we try to turn off all layer conditions.  We have tried sending 0 as the parameter to enableLayerCond, but the result is no change in the layer conditions state.  For now, we are sending a parameter like 32 to turn on an unused layer condition and force the used conditions to off.  Is there a parameter to send that will clear all layer conditions?

 

See this misunderstanding all the time.

 

enableLayerCond 0 is NOT all layers off.

 

enableLayerCond 0 is reset to default layer conditions.

 

What are the conditional layer defaults?

User defined.

Any layer checked in File-Preferences-Conditions

are defined as default ON when the file is loaded

or default ON after receiving an enableLayerCond 0.

i.e. while the checkboxes found in

 File-Preferences-Conditions are useful for

testing conditional layers during production,

that is not their primary purpose.

The primary purpose is to define default ON conditional layers.

 

BTW Your workaround is perfectly valid.

 

So, to accomplish what you expect,

clear all checkboxes under File-Preferences-Conditions,

save the file and update display servers.

 

WO6-File-Preferences-Conditions_none.png
 
It sure would not hurt if Dataton added the word Default to the title
Enabled Layer Conditions i.e.
 Default Enabled Layer Conditions

 

 

 

At its simplest form, a show with multiple language sound tracks,

conditional layers provide a controlled method for default layer(s),

allowing the show to load and run with a sound track

 instead of appering broken and silent.

with no external specific selection of a conditional layer.

 

For example, default language on layer condition 1

save with layer condition 1 enabled in preferences.

WO6-File-Preferences-Conditions_1.png

Link to comment
Share on other sites

  • 2 years later...
On 8/21/2016 at 3:58 PM, jfk said:

 

See this misunderstanding all the time.

enableLayerCond 0 is NOT all layers off.

enableLayerCond 0 is reset to default layer conditions.

 

Would you mind documenting this. I've just been having the same issues and not understanding why sometimes "enableLayerCond 0" would do what I wanted (set all conditions to off) and sometimes not (after I'd changed the enabled layers in the preferences). It seems that if you see this misunderstanding all the time, it would be good if the info could make it into the manual.

For anyone else looking to set all conditional layers to off, use

enableLayerCond 1073741824

1073741824 is 2^30, which will turn all layers off.

 

Thanks.

Link to comment
Share on other sites

  • Moderator
6 hours ago, nickelalloy said:

 

Would you mind documenting this.

Pretty sure that is what I did in the post above.

6 hours ago, nickelalloy said:

 

I've just been having the same issues and not understanding why sometimes "enableLayerCond 0" would do what I wanted (set all conditions to off) and sometimes not (after I'd changed the enabled layers in the preferences). It seems that if you see this misunderstanding all the time, it would be good if the info could make it into the manual.

I completely agree. but I have no influence over what goes into the User Guide.

A good example of that is the sample commands in the User Guide. In the v3 and earlier User Guides, the sample commands were all flawed. Anytime there was a double quote used, the older user guide incorrectly showed them as "smart quotes" (the tilted ones) which are WRONG. I repeatedly complained about this and it was fixed in the v4 and v5 User Guides. Then staff changed, someone new unwittingly turned smart quotes back on, and they are all wrong (again) in the v6 User Guide. facepalm.gif

That is why I use this forum as a repository for tips that are missing from the User Guide. ;) 

6 hours ago, nickelalloy said:

For anyone else looking to set all conditional layers to off, use


enableLayerCond 1073741824

1073741824 is 2^30, which will turn all layers off.

Thanks.

Was not aware of that trick, thanks for the tip. I will have to wait a few weeks until I return to my office to play with that.

Link to comment
Share on other sites

  • 2 weeks later...
  • Member
On 8/29/2018 at 3:03 PM, nickelalloy said:

1073741824 is 2^30, which will turn all layers off.

That's interesting and potentially very useful, but I wonder if it's intended behaviour, or whether overflowing the expected maximum value just happens to result in all conditions being set to disabled. I wonder, because I'm working on a little utility to make managing layer conditions easier for me and, shortly after trying 1073741824 instead of 0 to turn all conditions off, my Watchout production machine became unresponsive to further enableLayerCond commands and eventually crashed WatchMaker altogether. It could just be a coincidence or another bug in my app of course...

Link to comment
Share on other sites

After reading this I threw together a little UI in Touch Designer to toggle layer conditions via UDP. I've found that 1073741823 enables all conditions, 1073741824 disables all, and as stated above, 0 just goes to the default. I don't think it's overflowing the expected max amount because an error is thrown if you exceed a certain number.  I did not experience any crashes throughout my testing either.

Here's the github page -

https://github.com/franklin113/Touch-Designer

Keep in mind, this was merely a test to learn more about this and didn't do much real testing once I got it working. 

I'm very excited to check out your app once it's released, Mat. 

Link to comment
Share on other sites

That seems correct. There are only 30 conditions, internally mapped to bits in a 32 bit word if I recall correctly, where 1073741824 dec corresonds 0x40000000 hex, which is all low 30 bits zero. Nifty trick to turn all conditions OFF, rather than reverting to the setting in Preferences (which a zero here would do). Another, somewhat less cryptic, option would of course be to leave the Preference settings all turned OFF and then setting to 0 would indeed turn them all off. But if you want to keep both options, your "hack" seems valid.

Mike – http://pixilab.se

Link to comment
Share on other sites

  • 3 weeks later...
  • Member

I'll take Mike's word for it that it's OK to force all conditions to zero - although I've also added a switch for it, just in case the default behaviour is useful in some circumstances. And, after a busier couple of weeks than planned, I found time to Mac/Windows builds of my helper app, which can be downloaded from my website:

https://matkeane.com/project/watchout-conditional-layers-utility.

The readme file in the zip has some instructions but, basically, conditional layers can be switched through the UI, or via UDP/OSC commands. The UI controls can be disabled if only network control is required. In addition to switching individual conditions, they can be assigned (in the UI) to groups and presets for more flexible recall and switching.

Link to comment
Share on other sites

  • 1 year later...
On 10/9/2018 at 3:13 PM, matkeane said:

I'll take Mike's word for it that it's OK to force all conditions to zero - although I've also added a switch for it, just in case the default behaviour is useful in some circumstances. And, after a busier couple of weeks than planned, I found time to Mac/Windows builds of my helper app, which can be downloaded from my website:

https://matkeane.com/project/watchout-conditional-layers-utility.

The readme file in the zip has some instructions but, basically, conditional layers can be switched through the UI, or via UDP/OSC commands. The UI controls can be disabled if only network control is required. In addition to switching individual conditions, they can be assigned (in the UI) to groups and presets for more flexible recall and switching.

Very Helpful   - Many thanks for this👍

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...