[Ardour-Dev] Osc and control surface
Johan Blomé
johan at gunhildcarling.net
Sun Mar 24 03:12:13 PDT 2013
2013-03-23 15:13, tom at trellis.ch skrev:
> Hi,
>
>> Now about that sysex. I understand that for switches this is an easy
>> task. For fader control, how do I do this? The fader values needs to be
>> mapped somewhere. In Osc I send db values and since osc have the
>> /routes/gaindB it works perfect. Speaking of gaindB: actually it sends
>> the other type (-1,1) which as I see it means that the mapping to the
>> physical fader needs to be done somewhere else. Should it not be better
>> to send the gaindB instead?
> not sure this is related or may help you, i'm using this in an
> intermediary between ardour and devices (audio faders):
>
> /*map pos 0-1 to ardour non-linear fader*/
> function sliderPosToGain(pos)
> {
> return Math.pow
> (2.0,(Math.sqrt(Math.sqrt(Math.sqrt(pos)))*198.0-192.0)/6.0);
> }
>
> /*and vice versa non-linear gain 0-2 to pos 0-1*/
> function gainToSliderPos(gain)
> {
> if(gain!=0)
> {
> return
> Math.pow((6.0*Math.log(gain)/Math.log(2.0)+192.0)/198.0,
> 8.0);
> }
> else
> {
> return 0;
> }
> }
>
> part of this could be inside ardour to make the api easier. needs some
> more thinking though.
I think this would have been nice,
val = fast_coefficient_to_dB(controllable->get_value());
before sending "/ardour/routes/gaindB"
>> To me it looks like
>> 1) Ardour listens to port 3819 (or if it is occupied by me: ) 3920)
>> 2) I send /routes/list to Ardour
>> 3) Ardour answers on port 3819.
>> 4) Since I cannot listen to port 3819 (Ardour is listening on this
>> port) on localhost I cannot receive the message.
> this seems wrong. if you send /routes/list to ardour, it will reply to the
> port the message was sent. you could use osc console
> (http://lowres.ch/oscc/) to check that. simply start it with ./OSC_CONSOLE
> 1234 localhost 3819 and then /ardour/list -> you will get reply on port
> 1234. the format is somehow exotic (#reply).
>
> the problem that some tools _can not_ send and receive osc on the same
> port is a limitation of those programs. technically, there is no problem
> with that.
Well, the guilty one is my since I wrote it.
Thank you very much it works just like it should, need to see how they
did it.
I will cure my ignorance by reading their source code.
>
> using an intermediary you can map whatever you like. i use it for instance
> to control LED on buttons on external interface (along other ops):
>
> [reloop rmp3 in midi mode]----midi--->[jack_midi_to_osc]
> [ardour 3]
> /\ \ (osc) /|
> \ \ |
> (osc)
> \ \| \|
> \ [oscc with app
> oscrmp3]
> \ |
> \---MIDI---[jack_send_midi]<-----OSC
>
> however, i see some potential to consolidate some aspects how the osc api
> works today in the future. i've started to use it and while doing that
> also made some minor mods that need to be cleaned. osc is clearly not a
> replacement for midi. the advantage (and at the same time some downsides)
> of osc is it's openness.
I am trying to build a complete system with all my different hardware
connected (something along snmp but for sound...)
So I can control my mixer with my phone or table and likewise the DAW.
Thanks for all the help!
br
Johan
>
> best regards,
> Thomas
>
>
More information about the Ardour-Dev
mailing list