diff --git a/DMX-2.0/OSCServer.cs b/DMX-2.0/OSCServer.cs index 951f82f..7f74fc2 100644 --- a/DMX-2.0/OSCServer.cs +++ b/DMX-2.0/OSCServer.cs @@ -468,6 +468,17 @@ namespace DMX2 break; } } + if (seq is SequenceurSon) { + SequenceurSon seqs = seq as SequenceurSon; + switch(toks[2]){ + case "master": + int arg = msg.Args[0].GetInt(); + if (arg<0) arg=0; + if (arg>100)arg=100; + seqs.Volume = (uint)arg; + break; + } + } } void ProcessMessageUniv (OSCMessage msg, string[] toks) @@ -531,37 +542,51 @@ namespace DMX2 byte[] buff = msg.Encode (); udpCli.Send (buff, buff.Length, ep); - var id = Conduite.Courante.SequenceurMaitre.IndexLigneEnCours-1; + var id = Conduite.Courante.SequenceurMaitre.IndexLigneEnCours - 1; + msg = new OSCMessage ("/masterseq/prevstep"); if (id >= 0) { - msg = new OSCMessage("/masterseq/prevstep"); - msg.AddString( - string.Format("{0}. {1}", id+1, - Conduite.Courante.SequenceurMaitre.Lignes[id].Nom ) + msg.AddString ( + string.Format ("{0}. {1}", id + 1, + Conduite.Courante.SequenceurMaitre.Lignes [id].Nom) ); - buff = msg.Encode(); - udpCli.Send (buff, buff.Length, ep); - } - id = Conduite.Courante.SequenceurMaitre.IndexLigneaSuivre; - if (id == -1) id = Conduite.Courante.SequenceurMaitre.IndexLigneEnCours+1; - if (id >= 0 && id < Conduite.Courante.SequenceurMaitre.Lignes.Count) { - msg = new OSCMessage("/masterseq/nextstep"); - msg.AddString( - string.Format("{0}. {1}", id+1, - Conduite.Courante.SequenceurMaitre.Lignes[id].Nom) - ); - buff = msg.Encode(); - udpCli.Send (buff, buff.Length, ep); + } else { + msg.AddString ("---"); } + buff = msg.Encode (); + udpCli.Send (buff, buff.Length, ep); + id = Conduite.Courante.SequenceurMaitre.IndexLigneEnCours; + string auto = string.Empty; + msg = new OSCMessage ("/masterseq/curstep"); if (id >= 0) { - msg = new OSCMessage("/masterseq/curstep"); - msg.AddString( - string.Format("{0}. {1}", id+1, - Conduite.Courante.SequenceurMaitre.Lignes[id].Nom) + msg.AddString ( + string.Format ("{0}. {1}", id + 1, + Conduite.Courante.SequenceurMaitre.Lignes [id].Nom) ); - buff = msg.Encode(); - udpCli.Send (buff, buff.Length, ep); + if(Conduite.Courante.SequenceurMaitre.Lignes[id].Duree!= TimeSpan.Zero) + auto = string.Format(" (AUTO {0})",Conduite.Courante.SequenceurMaitre.Lignes[id].Duree.TotalMilliseconds/100); + } else { + msg.AddString ("---"); } + buff = msg.Encode(); + udpCli.Send (buff, buff.Length, ep); + + + id = Conduite.Courante.SequenceurMaitre.IndexLigneaSuivre; + if (id == -1) + id = Conduite.Courante.SequenceurMaitre.IndexLigneEnCours + 1; + msg = new OSCMessage ("/masterseq/nextstep"); + if (id >= 0 && id < Conduite.Courante.SequenceurMaitre.Lignes.Count) { + msg.AddString ( + string.Format ("{0}. {1}{2}", id + 1, + Conduite.Courante.SequenceurMaitre.Lignes [id].Nom,auto) + ); + } else { + msg.AddString ("---"); + } + buff = msg.Encode (); + udpCli.Send (buff, buff.Length, ep); + msg = new OSCMessage("/masterseq/time"); msg.AddFloat(((float) Conduite.Courante.SequenceurMaitre.TimeStamp.TotalMilliseconds/1000 )); buff = msg.Encode(); diff --git a/loupiottes.js b/loupiottes.js index e344f26..9477e49 100644 --- a/loupiottes.js +++ b/loupiottes.js @@ -379,6 +379,97 @@ pages = [ "bounds": [0,0,.14,.1], "value": "Pages :", }, + +{ + "name":"master", + "address":"/master", + "type":"Slider", + "min" : -10, + "max" : 110, + "isVertical" : true, + "x":.15, "y": 0, + "width":.08, "height":.9, + "startingValue":100, + "color":"#FF3300" +}, + +{ + "name":"seqm1", + "address":"/seq/1/master", + "type":"Slider", + "min" : -10, + "max" : 110, + "bounds":[.3,.05,.65,.1], + "startingValue":100, + "color":"#FFEE00" +}, + +{ + "name":"seqm2", + "address":"/seq/2/master", + "type":"Slider", + "min" : -10, + "max" : 110, + "bounds":[.3,.20,.65,.1], + "startingValue":100, + "color":"#FFEE00" +}, + +{ + "name":"seqm3", + "address":"/seq/3/master", + "type":"Slider", + "min" : -10, + "max" : 110, + "bounds":[.3,.35,.65,.1], + "startingValue":100, + "color":"#FFEE00" +}, + +{ + "name":"seqm4", + "address":"/seq/4/master", + "type":"Slider", + "min" : -10, + "max" : 110, + "bounds":[.3,.50,.65,.1], + "startingValue":100, + "color":"#FFEE00" +}, + +{ + "name":"seqm5", + "address":"/seq/5/master", + "type":"Slider", + "min" : -10, + "max" : 110, + "bounds":[.3,.65,.65,.1], + "startingValue":100, + "color":"#FFEE00" +}, + +{"name": "lblm1", "type": "Label", + "bounds":[.3,.05,.65,.1], + "value": "Sequenceur 1", +}, +{"name": "lblm1", "type": "Label", + "bounds":[.3,.20,.65,.1], + "value": "Sequenceur 2", +}, +{"name": "lblm1", "type": "Label", + "bounds":[.3,.35,.65,.1], + "value": "Sequenceur 3", +}, +{"name": "lblm1", "type": "Label", + "bounds":[.3,.50,.65,.1], + "value": "Sequenceur 4", +}, +{"name": "lblm1", "type": "Label", + "bounds":[.3,.65,.65,.1], + "value": "Sequenceur 5", +}, + + ] ];