No announcement yet.

LiveOSC and Osculator clip names Please Help

  • Filter
  • Time
  • Show
Clear All
new posts

  • LiveOSC and Osculator clip names Please Help

    Ok hoping somebody can help me i am using ableton live 8.21 and liveosc script i have to problem sending osc from osculator to ableton but when i get a call back from ableton like /live/name/clip then underneath it 0 1 2 3. check out my screenshot i know. Can any one explain what the numbers mean and what i would need to do to forward the clipname text to a lable on touchosc template. I understand the event would be oscrouting its the values and parameters that are confusing me. any help much appreciated with a little know how or and example specifically for sending the clip names to the ipad.

  • #2
    Hey David,

    OSCulator was not really made to work easily with the LiveOSC API, but ifyou want to extract the name of a specific clip, you can use the /live/name/clip message.
    Here is the definition of the message according to the OSCAPI.txt doc file:

    /live/name/clip         (? i track, ?i clip, ? s name)          #Gets the name of clip                  ?Sets the name of clip
    You will need to extract the value of the first and the second parameters (track number and clip number) to finally access to the right avlue for the last parameter (clip name).
    To do this, you can use the 'Demux' (demultiplex) command.
    1. First of all, select the first argument of the /live/name/clip message, and press Control-D. This will prepare the message to listen for new values and display them in the list.
    2. Now, in Live trigger play/pause on your clip, in order to trigger an OSC message from Live. In OSCulator, the list should refresh with a list of numbers instead of the first agument. As you can see those new 'sub-messages' have only two arguments, meaning that the first one was consumed by the Demux operation.
    3. Repeat the previous steps for the second argument.
    4. The resulting argument is the string value for a specific track, and a specific clip row.

    Finally, you will need to OSC Route this value to your label, which is left as an exercise to the astute reader :-)



    • #3
      Thanks camille for your reply but i am still having trouble its not working i click on the first argument which was 0 then Control-D all arguments disappear 0,1,2,3 and /live/name/clip text changes color purple or something then i play the clip it doesn't do anything. am i doing something wrong? Really love osculator and would rather use this than livecontrol because although livecontrol is good you van not send or receive midi cc with it thats why i need to use osculator.


      • #4
        Almost got it just a little more help camille Please

        Ok so i think i got it Camille so how would i forward the clip name properly to touchosc template to /1/label1

        Here is a pic just to see if i followed your instructions properly. Thanks for your help so far


        • #5
          Hey David,

          You did exactly what I asked, and it seems I gave the wrong indications because I read the wrong documentation. As you can see the clip name is right at the second argument, which explains why it is displayed into the list.

          Could you just give me the address where you downloaded LiveOSC or attach the OSCAPI.txt? This way we'll have the same version, and I'll be able to give you more details, try on my own computer and send you an example.



          • #6
            Thanks For your help camille here is the link for the download page in right column live osc i am using its from the livecontrol website.


            looking forward to your feedback as i love osculator and its functionality.


            • #7
              Thanks, I'll have a look this evening, as I don't have access to a mac right now.
              I'll let you know how it goes.


              • #8
                Thanks Camille i look forward to hearing from you have a great day


                • #9
                  Hi David,

                  So Here is what I found :

                  The /live/clip/name message does not exactly has the same structure as documented, but the first three arguments are the same.
                  • First argument is the track as a number going from 0 to Tn (where 0 is the first track).
                  • Second argument is the clip row as a number going from 0 to Cn (again, 0 is the first row).
                  • Third argument is the clip name, this is what you want to send to a label.

                  As you want to extract from this message the clip name from 2 indexes, therefore you need to demux the first argument, which will give you an index based on the first argument's different values (0, 1, 2 ..., Tn), and then demux the second argument for each sub-message (which then becomes the first argument of a sub-message). Then, you will get access precisely to all the clip name in a sort of big table (see attached file, I did the work for 8 tracks and 8 clip rows).

                  I noticed that the /live/clip/name message was sent from Live only when the clip slots were changed, which makes sense indeed. In order to receive all the indexes combinations (track/clip row), I had to put several dummy clips, and move them from tracks to tracks.

                  Hint: To make it easier to edit in OSCulator and use Live at the same time I have enabled the "Keep window on Top" feature, or Command-T. This will keep OSCulator floating over Live, which is very handy I think.

                  The last step is to simply assign a OSC Routing message that wil forward the string value of the clip name to your label in TouchOSC. Here is how I would do:
                  • Open the Parameters Window, and go to the OSC tab
                  • Drag and Drop your TouchOSC layout file on the table at the bottom
                  • Remove all the routing that you think you won't use, or just keep the ones with the label if that's what you really want to control.
                  • Open the OSC route Editor on a label, and replace the <all args> token in the Arguments field with a arg[0]. The reason we do that is because the sub-message have still two arguments and we really want the first one only. Since this is a string value, we don't need to change the type so we just use arg[0].
                  • Repeat this process for all labels, optionally set a clear Memo on each routing to remember what it does.
                  • Close the Parameters window.
                  • Assign a routing you just configured to a combination of a track, and clip row, as demonstrated in the attached file.
                  Now, when the clips are changed in Live (added / removed) a message containing the name of the clip will be sent to a specific label in TouchOSC.

                  Attached Files
                  Last edited by camille; 11-11-2011, 12:01 PM.


                  • #10
                    THANKS!!!!!!! Worked Perfectly i Really Appreciate it SOOOOO MUCH!!!!!!

                    Have A GREAT Evening


                    • #11
                      Hi, Cam. I'm doing it and it works. But I have a problem. For example if I've 2 in the firts 2 slots of my track, and I change the position of the track for another track who has this slots empty the values doesen't reset, the values is still holding the names of previous clips... Can I fix it? Thanks!


                      • #12
                        Are you sure you have assigned to correct OSC Routings ?
                        Please pm me your file so I can have a look :-)

                        Can you tell me if that works some of the time of fails at random intervals ? This can happen when you are using a router in between your iPhone and computer.


                        • #13
                          It always works for me using a router... I tried to link iPhone and Mac directly with a "private" wlan... but I've the same result.

                          I think I've done it correctly. I use your example for doing it. I'm doing it with very simply toucOSC layout, only with 4 labels. It sends the values perfect... but doesn't update empty slots.

                          I'll try to explain it. This is the first Step:

                          Live Track 1: Clip 1, Empty Slot, Clip 3, Empty Slot
                          Live track 2: Empty Slot, Clip 2, Empty Slot, Clip 4
                          iPhone: Clip 1, (nothing), Clip 3; (nothing)

                          When I change the position of the tracks manually, for Live to send me the necessary order to change the names of the clips. Now then I've this:

                          Live Track 1: Empty Slot, Clip2, Empty Slot, Clip 4
                          Live Track 2: Clip 1, Empty Slot, Clip 3, Empty Slot
                          iPhone: Clip 1, Clip 2, Clip 3, Clip 4

                          Can you understand something?

                          I've seen when I change the position of the tracks live onli sends to OSCulator information about the clips that we add. In the above case clips 2 and 4 (on osculator 0 and 3)

                          Thanks you a lot!
                          Last edited by uuuhu; 02-25-2011, 09:01 PM.


                          • #14
                            You're right, but I don't really understand why this happens.
                            It seems LiveOSC doesn't clear out the name of the clip that are not anymore used.
                            I have found a workaround, but I'm not a super fan of this : you can insert an empty MIDI clip by pressing Command-E in the clip. That will clear out the clip name and the send the appropriate OSC messgae…


                            • #15

                              I obviously don't have enough knowledge to do this, because I don't understand the vocabulary.

                              For example:
                              Drop your TouchOSC layout on the table at the bottom


                              I got it to work. Scene names are numbers. Is there a way to get scene names - Letters - just like the clips? Thanks
                              Last edited by lapieuvre; 11-10-2011, 05:04 PM.