Ben Loftis [Fri, 5 Oct 2018 00:29:14 +0000 (19:29 -0500)]
Fix the User button for Mixbus; we use it as a button, not a modifier.
Robin Gareus [Thu, 4 Oct 2018 22:56:59 +0000 (00:56 +0200)]
Remove debug output from
39f65bbce
Robin Gareus [Thu, 4 Oct 2018 19:55:44 +0000 (21:55 +0200)]
Change color of nudge-buttons depending on selection.
Experimental.
This indicates region selection:
* nudge region(s): red
* nudge playhead or marker(s): default gray
This does not indicate marker selection (nudge marker vs playhead),
nor does it change when primary-modifier is held (force playhead
nudge).
Robin Gareus [Thu, 4 Oct 2018 16:46:11 +0000 (18:46 +0200)]
Fix French translation #7665
Paul Davis [Thu, 4 Oct 2018 14:17:40 +0000 (10:17 -0400)]
remove LTC port parameter, since it's no longer a thing.
This commit does not remove this concept from the libs/ardour/engine_state_controller code,
which is used exclusively by Waves Track Live (to the extent that this can be said to
be "used").
Paul Davis [Thu, 4 Oct 2018 04:40:35 +0000 (00:40 -0400)]
add new ::update_interval() method for transport masters, and use in shared ::speed_and_position() implementation
Paul Davis [Thu, 4 Oct 2018 04:40:04 +0000 (00:40 -0400)]
fix error introduced in MTC transport master
Robin Gareus [Thu, 4 Oct 2018 01:57:49 +0000 (03:57 +0200)]
Remove cruft
Robin Gareus [Thu, 4 Oct 2018 01:57:09 +0000 (03:57 +0200)]
Unhardcode and increase bindable Lua-script-action count
Robin Gareus [Thu, 4 Oct 2018 01:36:40 +0000 (03:36 +0200)]
Sort Factory/Lua-script session-templates
Robin Gareus [Thu, 4 Oct 2018 01:35:53 +0000 (03:35 +0200)]
Sort Session templates alphabetically
Robin Gareus [Thu, 4 Oct 2018 00:30:21 +0000 (02:30 +0200)]
Handle generic-midi bindings per session.
This allows to special-cases session-specific control-surface state.
e.g. midi-learn.
Only restore midi-learned, session-specific, bindings when loading a
session with generic-midi enabled.
Also dis/re-enable generic-midi resets midi-learned, but no other
session-independent settings.
This also handles the edge case:
1) load global config, generic-midi = ON, w/ bindings.
state is remembered as cpi->state
2) load session-condig, generic-midi = OFF, cpi->state is retained
3) user enables the surface, cpi->state from (1) is applied.
-> invalid bindings applied -> fail
Robin Gareus [Wed, 3 Oct 2018 23:36:51 +0000 (01:36 +0200)]
Persistent ctrl-surface state
Keep latest surface configuration, regardless if surface is active
or being deactivated. Current state after de-activation is retained.
Currently state loaded from a session overrides global state from
global preferences, if the surface is marked active in the session.
This is to allow midi-learn.
generic-midi and session-specific midi-learn will require additional
work.
Robin Gareus [Wed, 3 Oct 2018 18:54:14 +0000 (20:54 +0200)]
Prevent excessive meter redraws for inactive meters at zero
Robin Gareus [Wed, 3 Oct 2018 18:22:30 +0000 (20:22 +0200)]
Properly initialize midi-meters
Midi meters are using linear 0..1 range, (not decibels, no log-scale
falloff).
If a track is deactivated, run() is never called. the queued reset never
executed and the meter remained at the initialization default -inf
(visually it looked like a pegged meter).
Robin Gareus [Wed, 3 Oct 2018 16:19:00 +0000 (18:19 +0200)]
Remove Transport > TimeMaster toggle from menu
The checkbox is not kept in sync with
Session > Properties > Timecode > JACK Time Master
besides, it relies on JACK, relies on ardour being the first jack client
and also is mostl useless due to tempo-ramps not being supported by
many jack clients.
Robin Gareus [Wed, 3 Oct 2018 16:16:42 +0000 (18:16 +0200)]
Prevent adding aux-sends to master or monitor
Ben Loftis [Wed, 3 Oct 2018 01:12:14 +0000 (20:12 -0500)]
Fix weird behavior in playhead_x_to_grid: use return value from snap_to_grid.
Robin Gareus [Tue, 2 Oct 2018 21:28:44 +0000 (23:28 +0200)]
Include Track-number with stem-exports, if track-numbers are present.
Robin Gareus [Tue, 2 Oct 2018 19:28:26 +0000 (21:28 +0200)]
Add a GUI option to enable boxy button style
Robin Gareus [Tue, 2 Oct 2018 19:27:55 +0000 (21:27 +0200)]
Prepare a boxy, no round borders, button-style
Robin Gareus [Tue, 2 Oct 2018 19:25:53 +0000 (21:25 +0200)]
Fix context-menu item "bus" = audio and midi busses.
Hide/show logic uses "not track".
This results in matching both audio and midi busses.
Robin Gareus [Tue, 2 Oct 2018 19:22:36 +0000 (21:22 +0200)]
Fix false-positive duplicate format detection
Previously, stem-exports of more than 1 channel always included
the export-format, even if only one format was exported.
Ben Loftis [Tue, 2 Oct 2018 14:41:04 +0000 (09:41 -0500)]
More correct fix for
8bfbef4: the check was already there; just needed to set the dirty flag.
Ben Loftis [Tue, 2 Oct 2018 14:28:05 +0000 (09:28 -0500)]
Fix deadlock when no region boundaries are selected in the Snap prefs.
Damien Zammit [Sat, 29 Sep 2018 04:18:10 +0000 (14:18 +1000)]
ipw: Fix race condition with polling the cancel state of the dialog
Sometimes the interthread process window dialog reports "cancelled"
when it was not actually cancelled, it was just hidden and reshown,
Since we are polling the cancel state interthread, we must reset
the cancel status BEFORE the dialog is shown, and never toggle the
cancel state unless it is a true cancel action by the user.
Damien Zammit [Fri, 28 Sep 2018 13:33:12 +0000 (23:33 +1000)]
libptformat: Add ability to reuse object && add path to ptf to api
John Emmas [Tue, 2 Oct 2018 08:17:32 +0000 (09:17 +0100)]
Remove a call to 'fst_audio_master_idle()'
Nobody seems quite sure why it's needed but it seems to be crashing a lot of plugins:-
http://tracker.ardour.org/view.php?id=7668
Robin Gareus [Sun, 30 Sep 2018 13:33:43 +0000 (15:33 +0200)]
Fix Mixbus master-bus tape-saturation controllable
John Emmas [Sun, 30 Sep 2018 08:19:28 +0000 (09:19 +0100)]
Adapt our remaining MSVC projects for 'boost::atomic' (in case it later gets extended to the other libs)
Stage 3 of 3
John Emmas [Sun, 30 Sep 2018 08:06:25 +0000 (09:06 +0100)]
Adapt our remaining MSVC projects for 'boost::atomic' (in case it later gets extended to the other libs)
Stage 2 of 3 (more to follow)
John Emmas [Sun, 30 Sep 2018 07:56:12 +0000 (08:56 +0100)]
Adapt our remaining MSVC projects for 'boost::atomic' (in case it later gets extended to the other libs)
Stage 1 of 3 (more to follow)
John Emmas [Sat, 29 Sep 2018 11:22:47 +0000 (12:22 +0100)]
Add support (in our MSVC projects) for using 'boost::atomic'
(only done "where necessary" for the moment - more to follow...)
Robin Gareus [Fri, 28 Sep 2018 14:19:19 +0000 (16:19 +0200)]
FP8/16: include makeup gain control
Albert Graef [Mon, 24 Sep 2018 12:30:27 +0000 (14:30 +0200)]
MCP: Fix up the feedback for the view selection buttons.
Albert Graef [Mon, 24 Sep 2018 07:31:16 +0000 (09:31 +0200)]
MCP: Allow the current bank to move right one channel even if this results in a partial bank.
Rationale: This change is trivial, but Ardour's behavior of refusing to move right one channel unless a full bank remains has been there for a long time, and there are probably good reasons for it. This design was likely conceived when all MCP-compatible devices had banks of 8 faders anyway. However, with the advent of affordable single-strip devices like the X-Touch ONE it becomes a real issue.
Single-strip devices can only access the first channel in the current bank, so relaxing this restriction is the easiest way to enable such devices to access all strips, while still maintaining the usual bank size of 8. Note that maintaining a bank size of 8 is beneficial even with single-strip devices for several reasons:
- It allows use of the bank switch buttons to flip through a large number of strips more quickly.
- It maintains compatibility with existing device descriptions. E.g., the X-Touch ONE can be used with the existing X-Touch device description without any ado.
- Most importantly, it maintains compatibility with other MCP-compatible controllers which do have 8 strips and may be connected to Ardour at the same time. E.g., one might want to use an X-Touch Mini, or even a full-size X-Touch along with the X-Touch ONE in some use cases. Changing the bank size to 1 affects all connected MCP devices, so you'd rather keep the bank size to 8 in such scenarios. (Ardour should preferably have separate bank size settings for each connected MCP device, but that isn't possible right now since only one MCP device description can be active at the same time.)
Albert Graef [Mon, 24 Sep 2018 07:29:34 +0000 (09:29 +0200)]
MCP: Fix up the feedback for the bank left/right buttons.
Paul Davis [Thu, 27 Sep 2018 04:09:08 +0000 (00:09 -0400)]
show last received and when for timecode timestamps in transport masters widget
Paul Davis [Wed, 26 Sep 2018 23:11:31 +0000 (19:11 -0400)]
add name editing for transport masters
Paul Davis [Tue, 25 Sep 2018 21:47:03 +0000 (17:47 -0400)]
use new TransportMaster::speed_and_position() API
Paul Davis [Tue, 25 Sep 2018 21:46:59 +0000 (17:46 -0400)]
consolidate all transport masters on a SafeTime object that is a member of the TransportMaster base class.
This seems to have broken some aspects of chasing/locking
Paul Davis [Tue, 25 Sep 2018 21:46:49 +0000 (17:46 -0400)]
change type of MIDI::Parser::position signal to include timestamp
Paul Davis [Tue, 25 Sep 2018 15:53:52 +0000 (11:53 -0400)]
more objectification for SafeTime
Paul Davis [Mon, 24 Sep 2018 21:34:25 +0000 (17:34 -0400)]
initial hacks towards a truly thread-safe SafeTime object, using boost::atomic
Robin Gareus [Tue, 25 Sep 2018 18:08:01 +0000 (20:08 +0200)]
VST-state, set/restore program before loading chunk.
This may fix some issues with VST state being restored incorrectly
when a plugin-preset was loaded.
Robin Gareus [Tue, 25 Sep 2018 16:50:14 +0000 (18:50 +0200)]
Add script to exercise PI-stats interface
Robin Gareus [Tue, 25 Sep 2018 15:47:22 +0000 (17:47 +0200)]
Add Lua bindings to query DSP load statistics
Robin Gareus [Tue, 25 Sep 2018 15:46:58 +0000 (17:46 +0200)]
Fix/tweak various DSP-load window issues
* update when window is visible and session-changes
* drop connections to prevent multiple callbacks
* catch session-deletion, skip updates
John Emmas [Tue, 25 Sep 2018 12:04:43 +0000 (13:04 +0100)]
Accommodate newly introduced source(s) in our MSVC project (gtk2_ardour)
Robin Gareus [Mon, 24 Sep 2018 23:00:58 +0000 (01:00 +0200)]
Add a reset-all DSP-load-stats button
Robin Gareus [Mon, 24 Sep 2018 22:12:42 +0000 (00:12 +0200)]
Add a window that shows DSP usage of all plugins
Currently hidden, use
Editor:access_action("Window", "toggle-plugin-dsp-load")
Robin Gareus [Mon, 24 Sep 2018 21:20:15 +0000 (23:20 +0200)]
Separate Plugin DSP load UI implementation
Paul Davis [Mon, 24 Sep 2018 19:46:11 +0000 (15:46 -0400)]
rearrange parts of transport masters dialog, and fix tooltip issue
Paul Davis [Sun, 23 Sep 2018 17:55:26 +0000 (13:55 -0400)]
remove debug output
Paul Davis [Sun, 23 Sep 2018 17:40:06 +0000 (13:40 -0400)]
remove debug output
Paul Davis [Sun, 23 Sep 2018 16:59:18 +0000 (12:59 -0400)]
various tweaks to the transport masters dialog
Paul Davis [Sun, 23 Sep 2018 16:58:53 +0000 (12:58 -0400)]
rename transport masters dialog -> window
Paul Davis [Sun, 23 Sep 2018 16:57:52 +0000 (12:57 -0400)]
remove debug output
Paul Davis [Sun, 23 Sep 2018 16:57:31 +0000 (12:57 -0400)]
defer creating a visibility tracker for a window until the window is mapped
Without this, the visibility tracker will report that the window is not visible at startup, and
this overrides the XML _visible property which denotes that the window should be made visible
Paul Davis [Sun, 23 Sep 2018 16:54:34 +0000 (12:54 -0400)]
emit property change for "collect" on a TransportMaster
Paul Davis [Sun, 23 Sep 2018 16:53:53 +0000 (12:53 -0400)]
no more ProxyTemporary member of ArdourWindow - all such windows should be wrapped in an explicit proxy in ARDOUR_UI
John Emmas [Sat, 22 Sep 2018 15:54:51 +0000 (16:54 +0100)]
Accommodate newly added/renamed source(s) in our MSVC project (libardour)
John Emmas [Sat, 22 Sep 2018 15:54:04 +0000 (16:54 +0100)]
Accommodate newly introduced source(s) in our MSVC project (gtk2_ardour)
Jan Lentfer [Sat, 22 Sep 2018 09:10:45 +0000 (11:10 +0200)]
LCXL: fix off by one cause by fader8master
Jan Lentfer [Fri, 21 Sep 2018 07:25:17 +0000 (09:25 +0200)]
LCXL: Fix a crash on exit
Paul Davis [Sat, 22 Sep 2018 13:03:50 +0000 (09:03 -0400)]
no more slave.h
Paul Davis [Sat, 22 Sep 2018 12:51:58 +0000 (08:51 -0400)]
use abs() instead of fabs() on integers
Paul Davis [Sat, 22 Sep 2018 12:50:16 +0000 (08:50 -0400)]
Revert "MSVC complains because we're using 'fabs()' to compare 2 x integers"
You can't remove an abs() conversion and keep the same semantics.
This reverts commit
d89b8cc0ad01eaf59dc605939628003dfa89899d.
Paul Davis [Sat, 22 Sep 2018 12:49:24 +0000 (08:49 -0400)]
remove old slave files
John Emmas [Sat, 22 Sep 2018 08:08:44 +0000 (09:08 +0100)]
Replace a namespace brace deleted by accident
John Emmas [Sat, 22 Sep 2018 07:48:41 +0000 (08:48 +0100)]
Remove some namespace ambiguity
There are a couple of places where we're using both MIDI namespace as well as ARDOUR namespace (both of which declare 'pframes_t)
John Emmas [Sat, 22 Sep 2018 07:44:42 +0000 (08:44 +0100)]
Remove 2 x unneeded functions in 'SlaveSessionProxy'
I assume they're not needed now because their declarations got removed in commit #
e6915e01de
John Emmas [Sat, 22 Sep 2018 07:39:34 +0000 (08:39 +0100)]
MSVC complains because we're using 'fabs()' to compare 2 x integers
Robin Gareus [Fri, 21 Sep 2018 19:35:28 +0000 (21:35 +0200)]
Fix typo: emit signal (don't construct an object)
Robin Gareus [Fri, 21 Sep 2018 17:05:57 +0000 (19:05 +0200)]
Fix --no-nls (5/5), i18n.h include order in gtk2_ardour
Robin Gareus [Fri, 21 Sep 2018 17:05:39 +0000 (19:05 +0200)]
Fix --no-nls (4/5), i18n include order in libs/*
"i18n.h" needs to be included last (after any includes that may indirectly
pull in getext or libintl etc)
Robin Gareus [Fri, 21 Sep 2018 17:04:06 +0000 (19:04 +0200)]
Fix --no-nls (3/5), prefer #if in gtk2_ardour
This is for consistency with system-wide gettext.h which is used
by some 3rd party libs. system-wide gettext uses `#if ENABLE_NLS`,
not #ifdef
Robin Gareus [Fri, 21 Sep 2018 17:03:33 +0000 (19:03 +0200)]
Fix --no-nls (2/5), prefer #if in libs
This is for consistency with system-wide gettext.h which is used
by some 3rd party libs. system-wide gettext uses `#if ENABLE_NLS`,
not #ifdef
Robin Gareus [Fri, 21 Sep 2018 17:00:33 +0000 (19:00 +0200)]
Fix --no-nls (1/5): ENABLE_NLS = 1/0 config
system-wide gettext uses `#if ENABLE_NLS`, not #ifdef
Robin Gareus [Thu, 20 Sep 2018 21:52:22 +0000 (23:52 +0200)]
Fix metronome emphasis preference (#7666)
Paul Davis [Thu, 20 Sep 2018 16:00:16 +0000 (12:00 -0400)]
missing enum/properties stuff
Paul Davis [Thu, 20 Sep 2018 15:30:28 +0000 (11:30 -0400)]
switch transport masters to use properties and notify via PropertyChanged
Guido Aulisi [Sun, 21 May 2017 10:31:12 +0000 (12:31 +0200)]
AppData: 'revision' in revision.cc is expected in the 2nd line
Signed-off-by: Nils Philippsen <nils@tiptoe.de>
Nils Philippsen [Thu, 6 Oct 2016 07:49:00 +0000 (09:49 +0200)]
generate revision.cc with one item per line
Nils Philippsen [Sat, 13 Aug 2016 12:38:28 +0000 (14:38 +0200)]
AppData release tags need a date to be valid
Or a timestamp, but that's deprecated. Create it from the last commit,
store it in/retrieve it from revision.cc and substitute it in the
template.
https://www.freedesktop.org/software/appstream/docs/chap-Metadata.html#tag-releases
Robin Gareus [Wed, 19 Sep 2018 13:17:43 +0000 (15:17 +0200)]
Remove ambiguity of Gtk and Windows API
Paul Davis [Wed, 19 Sep 2018 01:35:33 +0000 (21:35 -0400)]
namespace change to help out on non-linux platforms
Paul Davis [Wed, 19 Sep 2018 01:26:43 +0000 (21:26 -0400)]
do not initialize boost::shared_ptr<> with zero
Paul Davis [Wed, 19 Sep 2018 00:01:05 +0000 (20:01 -0400)]
boost/atomic.hpp is not used
Paul Davis [Tue, 18 Sep 2018 22:52:20 +0000 (18:52 -0400)]
new transport slave/master implementation, gui edition
Paul Davis [Tue, 18 Sep 2018 22:51:59 +0000 (18:51 -0400)]
new transport slave/master implementation, libs/ edition
Len Ovens [Tue, 18 Sep 2018 22:38:16 +0000 (15:38 -0700)]
OSC: Allow personal monitor to change output connection
Robin Gareus [Sun, 16 Sep 2018 21:08:41 +0000 (23:08 +0200)]
Fix crash when re-assigning groups
This works around an issue where gtk sends two callbacks when a radio
selection changes. First: unselect, then select new item.
Previously:
Two tracks, two groups. Select all tracks, assign to 2nd group. Crash.
The first callback, "unselect" iterates over all tracks, removes them
from any groups. Eventually all groups are unused and hence destroyed.
The 2nd callback - "select" - now uses a just destroyed group.
Colin Fletcher [Thu, 13 Sep 2018 18:05:47 +0000 (14:05 -0400)]
Implement new Enclosed region equivalence mode
John Emmas [Tue, 11 Sep 2018 17:50:07 +0000 (18:50 +0100)]
Oops - I got the session file numbers the wrong way around :-(
Robin Gareus [Tue, 11 Sep 2018 14:02:23 +0000 (16:02 +0200)]
Update Lua LTC decoder (API change in
d7dc224d)
Robin Gareus [Tue, 11 Sep 2018 14:01:50 +0000 (16:01 +0200)]
LTC-file reader: offset frame position (not timecode)
Robin Gareus [Tue, 11 Sep 2018 13:59:51 +0000 (15:59 +0200)]
Fix LTC file-reader -- closes #7661
Change reader API to return the position of the decoded LTC frame
and store the correct position in the array)
This bug was introduced in
e5a181c323
Len Ovens [Mon, 10 Sep 2018 16:57:19 +0000 (09:57 -0700)]
OSC: Personal monitoring can add a new aux
John Emmas [Mon, 10 Sep 2018 06:14:59 +0000 (07:14 +0100)]
Initial changes needed for building Mixbus (with MSVC) as version 5
(Mixbus itself will probably need extra changes)