View Issue Details
| ID | Project | Category | View Status | Date Submitted | Last Update |
|---|---|---|---|---|---|
| 0010386 | ardour | features | public | 2026-06-08 17:06 | 2026-06-30 05:58 |
| Reporter | sciurius | Assigned To | |||
| Priority | normal | Severity | minor | Reproducibility | N/A |
| Status | new | Resolution | open | ||
| Platform | Linux | OS | Fedora | OS Version | 44 |
| Product Version | 9.7 | ||||
| Summary | 0010386: Please add action to nudge playhead with 1 second steps | ||||
| Description | The generic Mackie control surface nudges the playhead with 1 second steps when using the jogwheel. There is, however, no user accessible action (https://manual.ardour.org/appendix/menu-actions-list/) that implements this operation. This makes it impossible to bind this operation to other keys/controls. Suggested names: "Common/nudge-playhead-forward-1sec" "Common/nudge-playhead-backward-1sec" Thanks. | ||||
| Tags | control surface, midi_map | ||||
|
|
You can use the nudge clock to do that. When there's no selection nudge moves the playhead by the distance set in the GUI's nudge clock. |
|
|
That's right. However, since I would like to bind this action to a dial control I would like the nudging to be independent of the setting in the GUI nudge clock. There are already standard key bindings for nudging (e.g., Alt-Left and Alt-Right) so adding this functionality to a dial is not very useful. AFAICS the code for the default Mackie control does this by temporarily overriding the nudge distance to 1 second. |
|
|
In that case a Lua action script would work. That can be bound to a key-binding, and actions can also be triggered from ctrl surfaces. e.g.
ardour { ["type"] = "EditorAction", name = "Nudge Playhead 1 sec",
license = "MIT",
author = "Ardour Team",
}
function factory () return function ()
if (Session:transport_rolling()) then
-- transport is rolling, don't nudge
return
end
local pos = Session:transport_sample() -- current playhead position
local sr = Session:nominal_sample_rate ()
Session:request_locate (pos + sr, false, ARDOUR.LocateTransportDisposition.RollIfAppropriate, ARDOUR.TransportRequestSource.TRS_UI)
end end
|
|
|
Excellent!!! Beginners question: How can I bind a lua function in the midi map? |
| Date Modified | Username | Field | Change |
|---|---|---|---|
| 2026-06-08 17:06 | sciurius | New Issue | |
| 2026-06-08 17:06 | sciurius | Tag Attached: control surface | |
| 2026-06-08 17:06 | sciurius | Tag Attached: midi_map | |
| 2026-06-08 22:33 | x42 | Note Added: 0030482 | |
| 2026-06-09 05:41 | sciurius | Note Added: 0030483 | |
| 2026-06-30 01:19 | x42 | Note Added: 0030565 | |
| 2026-06-30 05:58 | sciurius | Note Added: 0030566 |