View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0008186 | ardour | bugs | public | 2020-06-01 10:33 | 2020-06-24 03:29 |
Reporter | sapista | Assigned To | |||
Priority | normal | Severity | minor | Reproducibility | always |
Status | closed | Resolution | fixed | ||
Platform | Archlinux | OS | Some Other Linux | OS Version | unknown |
Product Version | 6.0 | ||||
Summary | 0008186: OSC Feedback messages with "default values" on /strip/select | ||||
Description | When a strip is selected with the OSC commands /strip/select and Feedback is enables Ardour selects the strip correctly and responds with all the mixer settings using OSC feedback. In version 6.0 the feedback messages are sent twice on strip selection. The first response is wrong and contains all parameters set to default values or zero. The second response is the good one. So the first response sequence is a bug. This cause all my faders to move down to zero and rapidly go back to the right value each time I select a strip using my control surface or a track in Ardour. | ||||
Steps To Reproduce | 1. Create an Ardour session with two tracks 2. Enable OSC control surface with feedback 3. Listen to OSC messages: dump_osc 8000 4. Select a track in Ardour or using /strip/select command | ||||
Additional Information | Here it is an example of the feedback I get in a two-track session: /strip/select ,if 2 0.0 /strip/select ,if 1 1.0 /strip/expand ,if 1 0.0 /strip/group ,is 1 none /strip/mute ,if 1 0.0 /strip/solo ,if 1 0.0 /strip/recenable ,if 1 0.0 /strip/record_safe ,if 1 0.0 /strip/monitor_input ,if 1 0.0 /strip/monitor_disk ,if 1 0.0 /strip/gui_select ,if 1 0.0 /strip/select ,if 1 0.0 /strip/trimdB ,if 1 0.0 /strip/meter ,if 1 0.0 /strip/name ,is 1 /strip/fader ,if 1 0.0 /strip/pan_stereo_position ,if 1 0.5 /strip/expand ,if 2 0.0 /strip/group ,is 2 none /strip/mute ,if 2 0.0 /strip/solo ,if 2 0.0 /strip/recenable ,if 2 0.0 /strip/record_safe ,if 2 0.0 /strip/monitor_input ,if 2 0.0 /strip/monitor_disk ,if 2 0.0 /strip/gui_select ,if 2 0.0 /strip/select ,if 2 0.0 /strip/trimdB ,if 2 0.0 /strip/meter ,if 2 0.0 /strip/name ,is 2 /strip/fader ,if 2 0.0 /strip/pan_stereo_position ,if 2 0.5 /strip/select ,if 1 1.0 /strip/name ,is 1 Audio 1 /strip/group ,is 1 /strip/hide ,ii 1 0 /strip/mute ,if 1 1.0 /strip/solo ,if 1 0.0 /strip/solo_iso ,if 1 0.0 /strip/solo_safe ,if 1 0.0 /strip/monitor_input ,ii 1 0 /strip/monitor_disk ,ii 1 0 /strip/recenable ,if 1 0.0 /strip/record_safe ,if 1 0.0 /strip/select ,if 1 1.0 /strip/fader ,if 1 0.4012196958065033 /strip/fader/automation ,if 1 0.0 /strip/fader/automation_name ,is 1 Manual /strip/trimdB ,if 1 0.0 /strip/pan_stereo_position ,if 1 0.6502307653427124 /strip/expand ,if 1 0.0 /strip/select ,if 2 0.0 /strip/name ,is 2 Audio 2 /strip/group ,is 2 /strip/hide ,ii 2 0 /strip/mute ,if 2 0.0 /strip/solo ,if 2 1.0 /strip/solo_iso ,if 2 0.0 /strip/solo_safe ,if 2 0.0 /strip/monitor_input ,ii 2 0 /strip/monitor_disk ,ii 2 0 /strip/recenable ,if 2 0.0 /strip/record_safe ,if 2 0.0 /strip/select ,if 2 0.0 /strip/fader ,if 2 0.5708699822425842 /strip/fader/automation ,if 2 0.0 /strip/fader/automation_name ,is 2 Manual /strip/trimdB ,if 2 0.0 /strip/pan_stereo_position ,if 2 0.21515387296676636 /strip/expand ,if 2 0.0 /strip/list , For example, if we focus on the Mute Button state of track 1: we first get the message /strip/mute ,if 1 0.0 and later the correct message /strip/mute ,if 1 1.0 So, every message is sent twice being the first one incorrect. | ||||
Tags | No tags attached. | ||||
|
Thank you for the report. While I can not duplicate your results exactly, I do not think the feedback is really as expected in any case. The full strip refresh should not be needed. The only /strip messages should be /strip/select for all channels and perhaps /strip/expand for all channels. The full refresh should just be for the /select/ set of commands. I would like to be able to replicate your findings also. If you could oscsend the command /surface/list and attach what it puts out to the Ardour log window (top corner LED button or Window->Log to open) . Just what this command adds, not the whole log window :) Then paste that to a message here or attach it as a text file. |
|
Maybe the behavior depends on how the OSC controller configures Ardour using the /set_surface command. Here it is the messages I sent to Ardour to produce this feedback: 2020-06-08T08:04:13 [INFO]: OSC: /set_surface i:0 i:7 i:24771 i:3 i:0 2020-06-08T08:05:18 [INFO]: OSC: /strip/select i:1 i:1 And the output of /surface/list: 2020-06-08T08:08:41 [INFO]: OSC: /surface/list 2020-06-08T08:08:41 [INFO]: List of known Surfaces (1): Surface: 0 - URL: osc.udp://127.0.0.1:8000/ Manual port Number of strips: 3 Bank size: 0 Current Bank 1 Use Custom: 0 Custom Strips: 0 Temp Mode: 0 Temp Strips: 0 Strip Types: 7 Feedback: 24771 No_clear flag: 0 Gain mode: 3 Use groups flag 0 Using plugin: 0 of 0 plugins, with 0 params. Page size: 0 Page: 1 Send page size: 0 Page: 1 Expanded flag 0 Track: 0 Jogmode: 0 Personal monitor flag 0, Aux master: 0, Number of sends: 0 Linkset: 0 Device Id: 1 List of LinkSets (0): Thanks |
|
Thank you, yes using your set_surface allows me to reproduce. (Banksize 0 to my banksize 8). Good clue, thank you. I think I will have to re-imagine how I deal with banksize 0. My test control surfaces have all been banked. |
|
This should be fixed by commit 4717f7806d7a773bd8b1a6ec7396de91e9265646 |
Date Modified | Username | Field | Change |
---|---|---|---|
2020-06-01 10:33 | sapista | New Issue | |
2020-06-07 21:27 | ovenwerks | Note Added: 0024432 | |
2020-06-08 06:10 | sapista | Note Added: 0024433 | |
2020-06-23 16:28 | ovenwerks | Note Added: 0024493 | |
2020-06-24 03:29 | ovenwerks | Status | new => closed |
2020-06-24 03:29 | ovenwerks | Resolution | open => fixed |
2020-06-24 03:29 | ovenwerks | Note Added: 0024496 |