Gorup Speed OSC control is incorrect

Post your questions here and we'll all try to help.
Post Reply
cat
Posts: 206
Joined: Fri Oct 08, 2004 11:03

Gorup Speed OSC control is incorrect

Post by cat »

I've had issues with the group playback speed getting set incorrect, totally due to my user error, in the heat of a set. So I thought i would reset it to 1 on deck change, is a a normalized float, 0-10 according to the osc editor, however if I send 0.1 it is set to 0.21829, 0.5 it is is 3.16228, 1 it is 10. Can OSC no handle none normalised floats? But any way, this seems very wrong to me...

Code: Select all

{
	"connections": [
		{
			"from": [
				3,
				"output"
			],
			"to": [
				6,
				"parameter1"
			]
		},
		{
			"from": [
				6,
				"osc"
			],
			"to": [
				4,
				"input"
			]
		}
	],
	"inputOrder": {
		"groups": {},
		"roots": [
			{
				"node": 3
			}
		]
	},
	"meta": {
		"author": "",
		"category": null,
		"deploymentTarget": {
			"branch": "",
			"name": "Wire",
			"version": {
				"major": 7,
				"minor": 23,
				"patch": 0
			}
		},
		"description": "",
		"displayName": "",
		"identifier": "491cfc34-9f6d-4bd9-b3de-0a1c74287c38",
		"licenseFile": "",
		"licenseName": "",
		"mail": "",
		"note": {
			"text": "",
			"textColorIndex": 1,
			"textSizeMultiplier": 3
		},
		"originalTarget": {
			"branch": "",
			"name": "Wire",
			"version": {
				"major": 7,
				"minor": 24,
				"patch": 3
			}
		},
		"quality": 32856,
		"resolution": {
			"height": 1080,
			"width": 1920
		},
		"saveTarget": {
			"branch": "",
			"name": "Wire",
			"version": {
				"major": 7,
				"minor": 24,
				"patch": 3
			}
		},
		"thumbnail": "",
		"url": "",
		"vendor": ""
	},
	"nextNodeId": 9,
	"nodes": {
		"3": {
			"attributes": {
				"flow": {
					"type": "flow",
					"value": "signal"
				},
				"has-max": {
					"type": "bool",
					"value": true
				},
				"has-min": {
					"type": "bool",
					"value": true
				},
				"instances": {
					"type": "integer",
					"value": 1
				},
				"max": {
					"type": "float",
					"value": 10
				},
				"min": {
					"type": "float",
					"value": 0
				},
				"options-count": {
					"type": "integer",
					"value": 0
				},
				"unit": {
					"type": "integer",
					"value": 0
				},
				"widget": {
					"type": "integer",
					"value": 0
				}
			},
			"bounds": {
				"height": 82,
				"width": 130,
				"x": 521.33380126953125,
				"y": 316.17803955078125
			},
			"class": {
				"id": "77697265-D235-4A6A-B661-02ABE55C72FF",
				"version": 4
			},
			"clock": "video",
			"color": "ffff6a00",
			"constants": {
				"input": {
					"type": "float",
					"value": 1
				}
			},
			"hidden": [
				"flow",
				"has-max",
				"has-min",
				"instances",
				"max",
				"min",
				"options-count",
				"unit",
				"widget"
			],
			"name": "Param 3",
			"thumbnail_visible": true
		},
		"4": {
			"attributes": {
				"instances": {
					"type": "integer",
					"value": 1
				}
			},
			"bounds": {
				"height": 85,
				"width": 132,
				"x": 1021.73101806640625,
				"y": 395.8043212890625
			},
			"class": {
				"id": "77697265-5b59-4fd5-b374-c7ca941ce21e",
				"version": 1
			},
			"clock": "video",
			"color": "ffff6a00",
			"constants": {
				"input": {
					"type": "osc",
					"value": null
				}
			},
			"hidden": [
				"instances"
			],
			"name": "OSC Out",
			"thumbnail_visible": true
		},
		"6": {
			"attributes": {
				"instances": {
					"type": "integer",
					"value": 1
				},
				"parameter-number": {
					"type": "integer",
					"value": 1
				},
				"parameter-type1": {
					"type": "type",
					"value": "float"
				}
			},
			"bounds": {
				"height": 105.6219940185546875,
				"width": 195,
				"x": 777.8111572265625,
				"y": 251.513641357421875
			},
			"class": {
				"id": "77697265-8B96-4D66-BF59-C726226F8F9C",
				"version": 2
			},
			"clock": "video",
			"color": "ffff6a00",
			"constants": {
				"address": {
					"type": "string",
					"value": "\/composition\/groups\/1\/speed"
				},
				"parameter1": {
					"type": "float",
					"value": 0
				},
				"write": {
					"type": "trigger",
					"value": null
				}
			},
			"hidden": [
				"instances",
				"parameter-number",
				"parameter-type1"
			],
			"name": "Write OSC",
			"thumbnail_visible": true
		}
	},
	"ui": {
		"camera": {
			"x": 396.83416748046875,
			"y": 53.93317413330078125,
			"zoom": 1.36716127395629883
		},
		"selection": [
			"6",
			"3",
			"4"
		]
	}
}

cat
Posts: 206
Joined: Fri Oct 08, 2004 11:03

Re: Group Speed OSC control is incorrect

Post by cat »

cat wrote: Mon Mar 09, 2026 16:46 I've had issues with the group playback speed getting set incorrect, totally due to my user error, in the heat of a set. So I thought i would reset it to 1 on deck change, is a a normalized float, 0-10 according to the osc editor, however if I send 0.1 it is set to 0.21829, 0.5 it is is 3.16228, 1 it is 10. Can OSC no handle none normalised floats? But any way, this seems very wrong to me...

Code: Select all

{
	"connections": [
		{
			"from": [
				3,
				"output"
			],
			"to": [
				6,
				"parameter1"
			]
		},
		{
			"from": [
				6,
				"osc"
			],
			"to": [
				4,
				"input"
			]
		}
	],
	"inputOrder": {
		"groups": {},
		"roots": [
			{
				"node": 3
			}
		]
	},
	"meta": {
		"author": "",
		"category": null,
		"deploymentTarget": {
			"branch": "",
			"name": "Wire",
			"version": {
				"major": 7,
				"minor": 23,
				"patch": 0
			}
		},
		"description": "",
		"displayName": "",
		"identifier": "491cfc34-9f6d-4bd9-b3de-0a1c74287c38",
		"licenseFile": "",
		"licenseName": "",
		"mail": "",
		"note": {
			"text": "",
			"textColorIndex": 1,
			"textSizeMultiplier": 3
		},
		"originalTarget": {
			"branch": "",
			"name": "Wire",
			"version": {
				"major": 7,
				"minor": 24,
				"patch": 3
			}
		},
		"quality": 32856,
		"resolution": {
			"height": 1080,
			"width": 1920
		},
		"saveTarget": {
			"branch": "",
			"name": "Wire",
			"version": {
				"major": 7,
				"minor": 24,
				"patch": 3
			}
		},
		"thumbnail": "",
		"url": "",
		"vendor": ""
	},
	"nextNodeId": 9,
	"nodes": {
		"3": {
			"attributes": {
				"flow": {
					"type": "flow",
					"value": "signal"
				},
				"has-max": {
					"type": "bool",
					"value": true
				},
				"has-min": {
					"type": "bool",
					"value": true
				},
				"instances": {
					"type": "integer",
					"value": 1
				},
				"max": {
					"type": "float",
					"value": 10
				},
				"min": {
					"type": "float",
					"value": 0
				},
				"options-count": {
					"type": "integer",
					"value": 0
				},
				"unit": {
					"type": "integer",
					"value": 0
				},
				"widget": {
					"type": "integer",
					"value": 0
				}
			},
			"bounds": {
				"height": 82,
				"width": 130,
				"x": 521.33380126953125,
				"y": 316.17803955078125
			},
			"class": {
				"id": "77697265-D235-4A6A-B661-02ABE55C72FF",
				"version": 4
			},
			"clock": "video",
			"color": "ffff6a00",
			"constants": {
				"input": {
					"type": "float",
					"value": 1
				}
			},
			"hidden": [
				"flow",
				"has-max",
				"has-min",
				"instances",
				"max",
				"min",
				"options-count",
				"unit",
				"widget"
			],
			"name": "Param 3",
			"thumbnail_visible": true
		},
		"4": {
			"attributes": {
				"instances": {
					"type": "integer",
					"value": 1
				}
			},
			"bounds": {
				"height": 85,
				"width": 132,
				"x": 1021.73101806640625,
				"y": 395.8043212890625
			},
			"class": {
				"id": "77697265-5b59-4fd5-b374-c7ca941ce21e",
				"version": 1
			},
			"clock": "video",
			"color": "ffff6a00",
			"constants": {
				"input": {
					"type": "osc",
					"value": null
				}
			},
			"hidden": [
				"instances"
			],
			"name": "OSC Out",
			"thumbnail_visible": true
		},
		"6": {
			"attributes": {
				"instances": {
					"type": "integer",
					"value": 1
				},
				"parameter-number": {
					"type": "integer",
					"value": 1
				},
				"parameter-type1": {
					"type": "type",
					"value": "float"
				}
			},
			"bounds": {
				"height": 105.6219940185546875,
				"width": 195,
				"x": 777.8111572265625,
				"y": 251.513641357421875
			},
			"class": {
				"id": "77697265-8B96-4D66-BF59-C726226F8F9C",
				"version": 2
			},
			"clock": "video",
			"color": "ffff6a00",
			"constants": {
				"address": {
					"type": "string",
					"value": "\/composition\/groups\/1\/speed"
				},
				"parameter1": {
					"type": "float",
					"value": 0
				},
				"write": {
					"type": "trigger",
					"value": null
				}
			},
			"hidden": [
				"instances",
				"parameter-number",
				"parameter-type1"
			],
			"name": "Write OSC",
			"thumbnail_visible": true
		}
	},
	"ui": {
		"camera": {
			"x": 396.83416748046875,
			"y": 53.93317413330078125,
			"zoom": 1.36716127395629883
		},
		"selection": [
			"6",
			"3",
			"4"
		]
	}
}

Zoltán
Team Resolume
Posts: 7800
Joined: Thu Jan 09, 2014 13:08
Location: Székesfehérvár, Hungary

Re: Gorup Speed OSC control is incorrect

Post by Zoltán »

Resolume can receive OSC in absolute mode by sending to arguments, "a" and the value as float https://resolume.com/support/en/osc?hig ... ute-values

Unfortunately Wire can't send messages with two arguments currently.

You can try to send integer 1 though, that should also work to set speed to 1.
Software developer, Sound Engineer,
Control Your show with ”Enter” - multiple Resolume servers at once - SMPTE/MTC column launch
try for free: http://programs.palffyzoltan.hu

Christoph
Posts: 222
Joined: Wed Jun 02, 2010 09:58

Re: Gorup Speed OSC control is incorrect

Post by Christoph »

The speed slider has a curve on it to feel more natural. Speed 1 is in fact an OSC float 0.25.

This is the math behind if you want to build this yourself:

If your slider value is x from 0 to 1, then speed = (x * 4) ^ log4(10) = (x * 4) ^ 1.6609640474437
Where ^ is power

This is how this could look in Wire:
Screenshot 2026-03-10 094817.png
And here the same as a Wire patch snippet that you can paste in Wire:

--begin-wire-patch--
1602.3ocyXssiaaCD8WYgd1xKIkHonep9xZf.jzTfTz7P1EExRz1rQVzUhZs2rv+V8Gn+XcnjuHeS1d2VflWhL2yLjbNmYFR9pSjNMUFYT5zbmNe6UmwY5YvGjVN5By7BCx4oVNFMLjWKGUZ0HqZsEn+w.osbVtGF5wXXmzYryOq38.h1.bKNxZb6A6D6BbKmEYJibObdmD27vrvYRiLa+4F9K57ns.46l3mV+4myhkYNcd0YRltXNDWecUKmLs1TEhS0wRmNnUfSc.+GZQFVXlpAab5OMSkazymd2G+6+ZThSKmnPibhN6EmNoEIIsbhkySzuLSlZ90vrIRi07QYgoQSAyA7ovhF95qpLI7qmkY4.4ZAMK7OrSArfmoRseQ7raRi0PzpUVOmGkolaJwacUrJedR3K+bkGgATwvzpFqraOGLhw8iEQt9LhmquOR5NRfhb8F6wGKhDnw9AfMIpHYZtbnJYsSVOvNuNKTk.eEsYq+SYxbcRwLY6HHhC6HMvWvFvHWZprv9UechN6CowxkNcvUC8E0OjepHwnlmTtD8fMkNSMQkFl7tCVz8CV+YQXhx.rhGIfBB2p0rYs4SkpISgYCiB.s5BUrArCKHHvx7vmk+auZLSKlMJsJNBlVjY+XwhEsOHT9rLMtTm4.FkBgreFDieH1oSPqRcoUr5fJUjFSlZTgoZnwI5EkTvKysqvxeBdKLov9SI3Vi0iSCycmEtrFxQZcxNjlrB4FXpzKASklaffS0JXMPUJjM.b6VrXaVzdSIr3BM0.Xi46OaGfvBPWJ6ycizEolllOK3hT0Ew.b9ZF97n.Xif4KNutjIfrSv3gr0R6P7gw.oluOCLIJILuzBEvaNbNSvILp6.hG00uKqqaOFC6hHc68.k1mSFNrtXxuzC5nuC19LjOqskXroR13x3XTDFyKGpL3aplnxBbmOBa2HSUwPwAn.2FwwFsvN5tNiVQZUDygQ+0A3swvm1lY7k4RYrSM49u+rJWMJYmlAer18pkQaK36lBtupD90g2hBWCd4+sK+nJdcZ5FphVq.QYuyNA7f1BgOhKnAh.eONcC82Vv4BDkv8riddwPPOAy0e.i41aHU3Bp.FgvFFLTzutXfznXX7XVHBcnXHLNFJpTOXlCQ6zI01uOdOTsYtNWYY0GuOWl.GwPFGknl+38FnfW9bcl4w62AYjbZ3yJcQFftjiWsW+2FScq5mWK3CU72iqr8M2WhVWGdDqeLwtS.9U6bc2m+R+FEgj2bAT6YLrYMtwJnCed0wxZVEt0jJPWPCtAuJ8lmBvjqbJJqWbC9uB+U577uKWbC9tD9U5Zi9Fi8qM3Fb+ME2WavU49SWbg5eTwEOg2kalHDjAt9Hee2.xf9PukGPC7PCFxCdnd8C7an9wF85E5XuQy0bt+E6LUI.ZvIsoa4wl8SEYzzx4TcAOUB8g4rmNm7vztSjVsWlywYF0E+mRbuu98T5y8kf6JC9ov4MV.z6VK.lql.mQeasCzsV7.cSklv2p6wuibv5mmacJHySzlSwHQ.Ct8.lT0dmxHmOgziJfS2gQb2tX+dtBO+.JGMnGE068lPt9h3MjhfQU+C6KPXLCS1FWt0CEdL6tOAdJBZeNXmH7WzKJIqyKC8OVFFKGGB2P72rKxKPp1iMT1v71TtWsP7pNU5IkTzfijTtdhRQDC2voBeP7.10uW29tBtOwEF5AJAw6hQdu2SEdIQD9fxiGyCsNPirUOrINsi4Gt12mm4oGy7iByk2PdeI7q8HUWoB4VNZwx2QImSnOvb9k0Gj9bOnqeWrqnW.ysOivDXZWwv2eWea377pC6kRWd0sVOjIqSVaUQGzoa4gUO9ndRiJH1+SagcRB2Cc1i40HgGfXPAAFenaO35jtC5g7FNbH8gA9n+y6p7l5Ori+v28382srQJj+leKfK+vLjprJjf0NPH3An0WIe6E04TlHHfRndBDiz.GPGAWP2ebL0cjG22MhGEJ7wQRBVd8bv08tM12s9ptU7tvLbU269bQSEasuGlxNIQfEYkulsseT.oc.EwDDNbnAxtXClvaSo1mN12KvmyfS8.+gensusNtMhPnABVfG0ivw9A1BCUOePYP3aNXGKuZuhcKGqly13x2wVv2lx9zpU+yl7R+B
--end-wire-patch--

cat
Posts: 206
Joined: Fri Oct 08, 2004 11:03

Re: Gorup Speed OSC control is incorrect

Post by cat »

Thanks for the explanation. So feature request for absolute / 2 parameter OSC please! There are other places this would help too

Post Reply