OSC Inception

128 views
Skip to first unread message

Alexander (Mailing List) Taylor

unread,
Apr 15, 2022, 3:04:08 PM4/15/22
to ql...@googlegroups.com
Hi All,

I’m trying to use a network cues to mark out timing for an audio track.  I started by trying to nest OSC messages in several layers, which simply didn’t work.  The subject was funny though, so I kept it!  Here’s what I’m trying to do:

- I created a Group cue (set to Fire All) triggered by the “M” key.
- Play the audio cue, named “target”.
- Press the “M” key whenever I want to make a new cue.
- A new network cue is created with the pre-wait time set to the current elapsed file time of the “target” cue.

What I tried first:

Network Cue - OSC Message
/cue/#/new network #/cue/target/uniqueID##/preWait #/cue/target/currentFileTime#

QLab didn’t like the nested OSC commands, so I split it out.  According to the docs, the newly created cue should be selected.  Since there’s no way to store the uniqueID without some more OSC inception, that is the way I went.

My next attempt:

Group - "M for Marker"
Network Cue - OSC Message
/new network #/cue/target/uniqueID#
Network Cue - OSC Message
/cue/selected/preWait #/cue/target/currentFileTime#
Note: does this address need to start with /workspace/id?  The docs imply that, but this seems to work.

Where I stand:
When I press the “M” key the network cue is added immediately after the “target” cue, but the preWait time is never updated.  I’ve put various debugging cues here and there, proving the uniqueID of the cues is set, the value of the currentFileTime is set, but the preWait time will not update.  It seems like the /cue/selected/preWait is where the hangup is.  Can that not be addressed directly?  I’m able to get the Unique ID of the cue, but if I send "/cue/3BBED40F-25D2-48D4-88B5-1C421184C3F6/preWait 12” I still don’t get the cue updating.  Any suggestions?

Thanks,
Alexander

The Right-To-Know Law provides that most e-mail communications to or from School District employees regarding the business of the School District are government records available to the public upon request. Therefore, this e-mail communication may be subject to public disclosure.

micpool

unread,
Apr 15, 2022, 4:10:28 PM4/15/22
to QLab
There is a tool already built into QLab to do this, record cue sequence on the tools menu.
It’s a slightly different workflow though. 

If that doesn’t suit your needs, scripts may be a better option than network cues with OSC queries.

tell front workspace
make type “network”
set audiocue to first item of (active cues as list)
set thewaiter to (action elapsed of audiocue)
set currentcue to last item of (selected as list)
set q number of currentcue to “”
set pre wait of currentcue to thewaiter
set patch of currentcue to 2
set osc message type of currentcue to custom
set custom message of currentcue to “/go” –Your OSC Goes here
end tell

Mic

Alexander (Mailing List) Taylor

unread,
Apr 15, 2022, 4:55:41 PM4/15/22
to ql...@googlegroups.com
Oh, that’s great!

Thanks for the scripting, I really appreciate it.

I am curious as to what the root issue with the OSC is though.  I think it should work, but it clearly doesn’t.

Thanks again,
Alexander


On Apr 15, 2022, at 4:10 PM, micpool <m...@micpool.com> wrote:

Caution - This email is from outside ORCSD. Do not click links or open attachments unless you recognize the sender and know the content is safe.
--
Contact support anytime: sup...@figure53.com
Follow QLab on Twitter: https://twitter.com/QLabApp
User Group Code of Conduct: https://qlab.app/code-of-conduct/
---
You received this message because you are subscribed to the Google Groups "QLab" group.
To unsubscribe from this group and stop receiving emails from it, send an email to qlab+uns...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/qlab/16cf6897-39f4-4aab-b7e7-37ce74cae598n%40googlegroups.com.

Sam Kusnetz

unread,
Apr 15, 2022, 5:18:44 PM4/15/22
to ql...@googlegroups.com

On Apr 15, 2022 at 4:55:29 PM, Alexander (Mailing List) Taylor <ataylo...@orcsd.org> wrote:
I am curious as to what the root issue with the OSC is though.  I think it should work, but it clearly doesn’t.

Hi Alexander

I’m not sure why it’s not working for you… I just recreated your method and it seems to work fine, although of course since the new Network cues are always created directly after the Audio cue, my several “markers” are in reverse order.

Screen shot attached.



To make absolutely sure that the new cue was done being created before I tried to set its pre-wait, I put a pre-wait of 0.01 seconds on the second Network cue inside the “marker” Group.

In regard to your first post, you are correct that nesting OSC queries is not supported.

This is a cool idea!

Best
Sam

Sam Kusnetz (he/him) | Figure 53

micpool

unread,
Apr 16, 2022, 4:22:19 AM4/16/22
to QLab
I’m still not clear why you need to create all the cues directly  after the audio cue you are timing. If you just use /new network then each time you hit the M cue the cue will be created after the previous one. To get the first cue in the right place you just need to start the audio with the ‘V’ key. 

To answer this specific point:
I’m able to get the Unique ID of the cue, but if I send "/cue/3BBED40F-25D2-48D4-88B5-1C421184C3F6/preWait 12” I still don’t get the cue updating. Any suggestions?

That’s because a cue’s number and its cueID are not interchangeable, you are asking to set the prewait of a cue numbered with that string, which of course doesn’t exist. If you want to address the cue ID, you must use cue_id, instead of cue in the address

/cue_id/3BBED40F-25D2-48D4-88B5-1C421184C3F6/preWait 12” 

The huge advantage of using the script method is that it is universally applicable, i.e you can start any audio cue with the v preview key and hit your M trigger and a cue with a pre wait referencing that audio cue will be created.

OSC has no way of defining individual active cues based on their list position or q type which scripting handles with ease.

Mic

On Friday, April 15, 2022 at 8:04:08 PM UTC+1 ataylo...@orcsd.org wrote:

Alexander (Mailing List) Taylor

unread,
Apr 18, 2022, 12:44:51 PM4/18/22
to ql...@googlegroups.com
Thanks for the reply.  Turns out it was a typo on my part!  It’s all working now as it should.

I suppose I could get fancy and store the UID of the new cue in a note field, so I could reference that and have everything in order.  Hmm, thanks for the idea!

Alexander


On Apr 15, 2022, at 5:18 PM, Sam Kusnetz <s...@figure53.com> wrote:

Caution - This email is from outside ORCSD. Do not click links or open attachments unless you recognize the sender and know the content is safe.
On Apr 15, 2022 at 4:55:29 PM, Alexander (Mailing List) Taylor <ataylo...@orcsd.org> wrote:
I am curious as to what the root issue with the OSC is though.  I think it should work, but it clearly doesn’t.

Hi Alexander

I’m not sure why it’s not working for you… I just recreated your method and it seems to work fine, although of course since the new Network cues are always created directly after the Audio cue, my several “markers” are in reverse order.

Screen shot attached.


<Screen Shot 2022-04-15 at 5.16.11 PM.png>
To make absolutely sure that the new cue was done being created before I tried to set its pre-wait, I put a pre-wait of 0.01 seconds on the second Network cue inside the “marker” Group.

In regard to your first post, you are correct that nesting OSC queries is not supported.

This is a cool idea!

Best
Sam

Sam Kusnetz (he/him) | Figure 53

--
Contact support anytime: sup...@figure53.com
Follow QLab on Twitter: https://twitter.com/QLabApp
User Group Code of Conduct: https://qlab.app/code-of-conduct/
---
You received this message because you are subscribed to the Google Groups "QLab" group.
To unsubscribe from this group and stop receiving emails from it, send an email to qlab+uns...@googlegroups.com.

Alexander (Mailing List) Taylor

unread,
Apr 18, 2022, 1:10:24 PM4/18/22
to ql...@googlegroups.com
Here’s a screenshot of a working version.  This takes the auto-incremented Cue Number and insterts it into the OSC string, for an EOS  console in this case.  Note the “i” cue is to initialize the location to start at.  This should be run (using it’s hotkey) whenever you want to put the markers immediately after the target cue.  After that, play your file, and press “m” to insert a marker whenever you’d like.

Alexander

Alexander (Mailing List) Taylor

unread,
Apr 18, 2022, 1:11:35 PM4/18/22
to ql...@googlegroups.com
Oh, that makes sense.  The cue_id was the part I was missing.  Thanks!

Alexander


On Apr 16, 2022, at 4:22 AM, micpool <m...@micpool.com> wrote:

Caution - This email is from outside ORCSD. Do not click links or open attachments unless you recognize the sender and know the content is safe.
--
Contact support anytime: sup...@figure53.com
Follow QLab on Twitter: https://twitter.com/QLabApp
User Group Code of Conduct: https://qlab.app/code-of-conduct/
---
You received this message because you are subscribed to the Google Groups "QLab" group.
To unsubscribe from this group and stop receiving emails from it, send an email to qlab+uns...@googlegroups.com.

gui

unread,
Jun 24, 2022, 4:48:26 AM6/24/22
to QLab
Hello Alexander,
Is it possible for you to post your workspace because i do the same as you but it doesn't work. No time added to the Prewait of my news cues.
Thank you

Alexander (Mailing List) Taylor

unread,
Jun 24, 2022, 7:43:58 AM6/24/22
to ql...@googlegroups.com
Hello,

Here’s the requested workspace.

Note you need to replace the Audio file.  Strike the “I” key to initialize the uniqueID of the target cue, then strike “m” while playing the file to add a network cue at the current time of the target cue.

You will have to play around with patch for the network cues that are created, but you should be able to edit all those at once.

Alexander



Sequence cueing on hotkeys.qlab4

gui

unread,
Jun 24, 2022, 8:06:14 AM6/24/22
to QLab
Hi,
Ohhhh thanks. I understand my mistake; I forgot to put a cue name to my audiofile. We have to name it "target".
Thanks
Best
Reply all
Reply to author
Forward
0 new messages