Robin Gareus [Fri, 18 Aug 2017 10:49:34 +0000 (12:49 +0200)]
Fix quantization end-grid size.
Robin Gareus [Fri, 18 Aug 2017 10:49:06 +0000 (12:49 +0200)]
Fix MIDI Quantization for internationalized Ardour.
Grid-settings are translatable, parsing a number from a translated string
e.g. "Quart de temps" for "Beats/4" failed.
Robin Gareus [Thu, 17 Aug 2017 23:51:02 +0000 (01:51 +0200)]
Push user track-templates to the template list
Robin Gareus [Thu, 17 Aug 2017 23:12:05 +0000 (01:12 +0200)]
Robin Gareus [Thu, 17 Aug 2017 22:18:59 +0000 (00:18 +0200)]
Initialize an uninitialized variable
Robin Gareus [Thu, 17 Aug 2017 22:18:18 +0000 (00:18 +0200)]
NO-OP: whitespace & scope
Robin Gareus [Thu, 17 Aug 2017 22:09:10 +0000 (00:09 +0200)]
NO-OP: whitespace
Robin Gareus [Thu, 17 Aug 2017 21:50:34 +0000 (23:50 +0200)]
Expose Lua bindings to create/delete VCAs
Robin Gareus [Thu, 17 Aug 2017 21:41:22 +0000 (23:41 +0200)]
Consolidate add/track/route/bus wrappers -- step one.
Ben Loftis [Thu, 17 Aug 2017 21:44:52 +0000 (16:44 -0500)]
Track Templates: shorten some of the track names.
Ben Loftis [Thu, 17 Aug 2017 21:17:12 +0000 (16:17 -0500)]
Some initial track templates.
Ben Loftis [Thu, 17 Aug 2017 20:31:17 +0000 (15:31 -0500)]
Track templates: add some (unfinished) template files. Hide Created-With column in Ardour.
Robin Gareus [Thu, 17 Aug 2017 19:12:29 +0000 (21:12 +0200)]
Add an example script for prototyping
Robin Gareus [Thu, 17 Aug 2017 18:52:16 +0000 (20:52 +0200)]
NO-OP: whitespace & scope
Ben Loftis [Thu, 17 Aug 2017 18:49:41 +0000 (13:49 -0500)]
Fix merge error.
Ben Loftis [Thu, 17 Aug 2017 18:24:49 +0000 (13:24 -0500)]
Track Templates: redesign of Add Track dialog.
Ben Loftis [Wed, 16 Aug 2017 23:04:45 +0000 (18:04 -0500)]
Track Templates: initial lua backend support.
Ben Loftis [Wed, 16 Aug 2017 15:25:53 +0000 (10:25 -0500)]
Templates: fix unintended commit from debugging
Ben Loftis [Wed, 16 Aug 2017 15:17:30 +0000 (10:17 -0500)]
Templates: dialog tweaks.
Ben Loftis [Thu, 17 Aug 2017 18:28:41 +0000 (13:28 -0500)]
Templates: Dim the border around template description text.
Robin Gareus [Thu, 17 Aug 2017 17:28:14 +0000 (19:28 +0200)]
Catch some exceptions during session loading.
Robin Gareus [Thu, 17 Aug 2017 16:52:07 +0000 (18:52 +0200)]
Update GUI, session-format notifications, skip unusable in recent list
Robin Gareus [Thu, 17 Aug 2017 16:32:49 +0000 (18:32 +0200)]
Check major session file format version.
Don't allow to load sessions created with a newer version of Ardour
with an old one (no forward compatibility).
Robin Gareus [Thu, 17 Aug 2017 14:47:27 +0000 (16:47 +0200)]
SessionDialog: hide created-with column in Ardour, use a tooltip.
Robin Gareus [Wed, 16 Aug 2017 23:13:28 +0000 (01:13 +0200)]
Expose enums used in RCConfig and other missing classes to Lua.
Robin Gareus [Wed, 16 Aug 2017 21:45:58 +0000 (23:45 +0200)]
Fix unit-test data (XML attributes changed)
Robin Gareus [Wed, 16 Aug 2017 19:00:23 +0000 (21:00 +0200)]
Complete Lua-binding dump (after
8eb3b9d34b)
Robin Gareus [Wed, 16 Aug 2017 03:02:26 +0000 (05:02 +0200)]
Revert "Revert ongoing SessionDialog changes for 5.11 release."
This reverts commit
bd40b9132cbac2d2b79ba0ef480bd41d837f8f71.
Robin Gareus [Tue, 15 Aug 2017 23:13:00 +0000 (01:13 +0200)]
Revert ongoing SessionDialog changes for 5.11 release.
To be reverted again after the release. This temporarily reverts
26c88b2,
c67d1d4,
5e41293,
8b7df13,
ff61435,
1039894,
8717c0d
and GUI parts of
47d86cf
Robin Gareus [Tue, 15 Aug 2017 22:13:56 +0000 (00:13 +0200)]
Replace advanced session-setup options with script
Robin Gareus [Tue, 15 Aug 2017 21:51:51 +0000 (23:51 +0200)]
Add RCConfiguration Lua Bindings
Robin Gareus [Tue, 15 Aug 2017 21:24:32 +0000 (23:24 +0200)]
The Auditioner is not in the Session's RouteList
Remove various checks, add assert() for now (perhaps some old sessions?)
This fixes an off-by one issue when adding tracks (presentation
info order in add_routes_inner)
Robin Gareus [Tue, 15 Aug 2017 21:17:08 +0000 (23:17 +0200)]
Separate "add master bus" (and add Lua bindings)
This is in preparation for "advanced session setup" allow a SessionSetup
Lua script to create the master-bus.
Robin Gareus [Tue, 15 Aug 2017 18:38:24 +0000 (20:38 +0200)]
Clean up BusProfile:
* requested_physical_in/out was unused
* input/output Autoconnect just overrides Preference/Config
(can be done by a template script)
* master_out_channels is kept for compatibility (allow to create
new empty session)
Robin Gareus [Tue, 15 Aug 2017 18:36:31 +0000 (20:36 +0200)]
Prepare for removal of Advanced Session Options (BusProfile)
Paul Davis [Tue, 15 Aug 2017 21:36:50 +0000 (17:36 -0400)]
only button 1 click in mouse draw mode on MIDI automation regions should add events
Johannes Mueller [Tue, 15 Aug 2017 16:18:44 +0000 (18:18 +0200)]
Simplify code of PluginDisplay::update_height_alloc()
Partly irrelevant code. A more elaborated resize height allocation behavior
won't be needed before the widget layout in the generic GUI is improved.
Johannes Mueller [Tue, 15 Aug 2017 16:17:00 +0000 (18:17 +0200)]
Make PluginDisplay::update_height_alloc() virtual
... so that it no longer hides
ProcessorBox::PluginInlineDisplay::update_height_alloc()
Robin Gareus [Tue, 15 Aug 2017 15:45:36 +0000 (17:45 +0200)]
Re-add template script debugging (after
7d48e80e)
Robin Gareus [Tue, 15 Aug 2017 15:44:53 +0000 (17:44 +0200)]
Paul Davis [Tue, 15 Aug 2017 14:48:29 +0000 (10:48 -0400)]
tone down frame color and use a better widget name
Paul Davis [Tue, 15 Aug 2017 14:46:31 +0000 (10:46 -0400)]
NO-OP: indent and remove whitespace
Paul Davis [Tue, 15 Aug 2017 14:45:47 +0000 (10:45 -0400)]
put a frame around template description, change background color
Ben Loftis [Tue, 15 Aug 2017 03:03:57 +0000 (22:03 -0500)]
Initial checkin of a Full Band template script.
Ben Loftis [Mon, 14 Aug 2017 23:01:17 +0000 (18:01 -0500)]
Further tweaking of layout and packing.
Ben Loftis [Mon, 14 Aug 2017 22:37:29 +0000 (17:37 -0500)]
Rationalize gtk box packing.
Ben Loftis [Mon, 14 Aug 2017 22:20:34 +0000 (17:20 -0500)]
Auto-select an Empty template.
Ben Loftis [Mon, 14 Aug 2017 21:14:42 +0000 (16:14 -0500)]
Change the template pulldown menu into a tree list. Populate the Description view when a template is selected.
Ben Loftis [Fri, 14 Jul 2017 18:58:41 +0000 (13:58 -0500)]
Session Metadata: add a Description field.
* This is a multi-line text field.
* If the session is a template, we might show this in the New Session dialog.
Paul Davis [Sat, 12 Aug 2017 18:40:07 +0000 (14:40 -0400)]
expose automation state controls in AutomationTimeAxisView when used for MIDI CC
Paul Davis [Sat, 12 Aug 2017 18:39:50 +0000 (14:39 -0400)]
do not set automation to off/manual for MIDI CC data when clearing such data
Paul Davis [Sat, 12 Aug 2017 18:38:56 +0000 (14:38 -0400)]
use a lock to set/get AutomationList automation state
It isn't 100% clear that we should use the list's data lock, but it seems quite likely
that this is the correct design, because of the interlock between data being present
and automation state
Robin Gareus [Fri, 11 Aug 2017 17:45:49 +0000 (19:45 +0200)]
Maybe fix crash on Close Session -> Quit (windows threading)
Robin Gareus [Fri, 11 Aug 2017 15:58:26 +0000 (17:58 +0200)]
Fix MSVC builds (binding external static members)
This Revert "Lua GUI Instance update: prepare for template scripts"
commit
c37cdf548d14b01744ff560217fb55958e6992fc.
Robin Gareus [Fri, 11 Aug 2017 15:33:44 +0000 (17:33 +0200)]
yet another Windows build fix (LV2 preset
89475b2c9)
Robin Gareus [Fri, 11 Aug 2017 15:19:45 +0000 (17:19 +0200)]
Fix Windows builds (amend
89475b2c)
Robin Gareus [Fri, 11 Aug 2017 14:54:39 +0000 (16:54 +0200)]
Fix LV2 Preset path for window
Robin Gareus [Fri, 11 Aug 2017 12:29:08 +0000 (14:29 +0200)]
Add support for scripted meta-templates.
Robin Gareus [Fri, 11 Aug 2017 12:58:41 +0000 (14:58 +0200)]
Prepare for templates w/description
Robin Gareus [Fri, 11 Aug 2017 01:56:57 +0000 (03:56 +0200)]
Add a new script type for meta-templates: SessionSetup
Robin Gareus [Fri, 11 Aug 2017 13:10:10 +0000 (15:10 +0200)]
Add template dropdown sensitivity
...for those who select a template but forget activate the checkbox and
wonder why it doesn't work :)
Len Ovens [Thu, 10 Aug 2017 15:50:46 +0000 (08:50 -0700)]
OSC: fix issue #7444 send fader position/gain even when 0.
Todd Naugle [Thu, 10 Aug 2017 14:49:22 +0000 (09:49 -0500)]
Populate the buffer size combo when connecting to jack that is already running.
This would crash (throw) if ardour was started with an invalid backend
(alsa with no devices avaliable) and then changec to an alredy running
jack. The invalid backend at the start would leave the buffer
size combo empty and switching to the running jack backend did not populate
buffer size list.
Robin Gareus [Thu, 10 Aug 2017 00:21:52 +0000 (02:21 +0200)]
Save sample-rate for sessions created from templates
Robin Gareus [Wed, 9 Aug 2017 13:04:42 +0000 (15:04 +0200)]
Add some more Lua script examples
Robin Gareus [Thu, 10 Aug 2017 00:23:04 +0000 (02:23 +0200)]
remove old PBD::SystemExec bindings (Windows classkeys)
Robin Gareus [Thu, 10 Aug 2017 00:17:41 +0000 (02:17 +0200)]
Update Lua os.exec, SystemExec API
We can't use Lua to construct a PBD::SystemExec Obejct. Lifetime of the
object is bound to the Lua interpreter or local function scope.
Destroying the C++ object terminates the process.
Additionally to adding a dedicated method, we also override the existing
os.execute Lua libary method with a rt-save (vfork, close filedescriptors)
wrapper.
Robin Gareus [Wed, 9 Aug 2017 12:34:12 +0000 (14:34 +0200)]
Add support for templates to invoke one-time scripts
Robin Gareus [Wed, 9 Aug 2017 02:08:43 +0000 (04:08 +0200)]
Lua GUI Instance update: prepare for template scripts
Robin Gareus [Wed, 9 Aug 2017 12:12:54 +0000 (14:12 +0200)]
Lua Message dialog, push splash screen if needed.
Robin Gareus [Wed, 9 Aug 2017 12:09:27 +0000 (14:09 +0200)]
Add a Lua SetSession signal/hook
Robin Gareus [Wed, 9 Aug 2017 14:00:35 +0000 (16:00 +0200)]
Lua Script Sandbox - GUI part
Robin Gareus [Wed, 9 Aug 2017 02:07:23 +0000 (04:07 +0200)]
Centralize Lua sandboxing
Robin Gareus [Wed, 9 Aug 2017 12:04:05 +0000 (14:04 +0200)]
Add Lua bindings to set toggle-actions
Robin Gareus [Wed, 9 Aug 2017 11:33:22 +0000 (13:33 +0200)]
Separate set_toggleaction_state () API
Prepare for a method consistent with access_action():
* separate group + action names
* no action string parsing overhead.
* no fatal, abort () call for invalid actions
Robin Gareus [Wed, 9 Aug 2017 14:22:23 +0000 (16:22 +0200)]
Fix windows builds (amend
0c4e0503)
Robin Gareus [Wed, 9 Aug 2017 13:52:11 +0000 (15:52 +0200)]
really fix linux packaging jack check (amend
79dc3882ea)
Robin Gareus [Tue, 8 Aug 2017 21:27:47 +0000 (23:27 +0200)]
SystemExec Lua bindings (vfork, fire+forget)
Robin Gareus [Mon, 7 Aug 2017 23:49:05 +0000 (01:49 +0200)]
Hide TrackList "Active" toggle for VCAs
Robin Gareus [Mon, 7 Aug 2017 21:23:39 +0000 (23:23 +0200)]
Fix non-buffered PA backend. Wait for backend to become active
This hopefully fixes an issue with port-registration (new session)
being skipped because PortAudioBackend::available() still false
until the first callback.
Robin Gareus [Mon, 7 Aug 2017 21:03:08 +0000 (23:03 +0200)]
Add debug-msg for port-handle registration
Robin Gareus [Mon, 7 Aug 2017 17:27:37 +0000 (19:27 +0200)]
PortAudio: skip process callbacks until ports are established
Robin Gareus [Mon, 7 Aug 2017 17:26:06 +0000 (19:26 +0200)]
Revert "Work around a Windows crash (for now)"
This reverts commit
4f2dc77f6f6b5b0de07304e8a4981ff1298ef090.
Paul Davis [Mon, 7 Aug 2017 16:14:17 +0000 (12:14 -0400)]
slight tweak for more code consistency between ::toggle_solo() and ::toggle_mute()
Paul Davis [Mon, 7 Aug 2017 15:34:03 +0000 (11:34 -0400)]
some structure/code for managing menu sensitivity now that VCAs are selectable
Robin Gareus [Mon, 7 Aug 2017 15:39:28 +0000 (17:39 +0200)]
Work around a Windows crash (for now)
The root-cause is likely PortAudio backend specific async
port-registration, re-establish ports after session creation and
after the first callback and it's apparently a race-condition:
crash is not 100% reproducible.
#10 0x00007ffb156df18a in msvcrt!abort () from C:\Windows\System32\msvcrt.dll
#11 0x0000000012597832 in _wassert (_Message=_Message@entry=0x2eaf96f0 L"_port_handle",
_File=0x2 <error: Cannot access memory at address 0x2>, _File@entry=0x346a1430 L"../libs/ardour/audio_port.cc",
_Line=80) at ../../mingw-w64-crt/misc/wassert.c:54
#12 0x00000000125978e8 in _assert (_Message=0x1282f7e9 "_port_handle",
_File=0x1282f7a0 "../libs/ardour/audio_port.cc", _Line=80) at ../../mingw-w64-crt/misc/wassert.c:30
#13 0x00000000120d1a51 in ARDOUR::AudioPort::get_audio_buffer (this=0x34a95a70, nframes=256)
at ../libs/ardour/audio_port.cc:80
#14 0x00000000126724f9 in ARDOUR::AudioPort::get_buffer (this=<optimized out>, nframes=<optimized out>)
at ../libs/ardour/ardour/audio_port.h:43
#15 0x0000000012435421 in ARDOUR::Session::ltc_tx_send_time_code_for_cycle (this=this@entry=0x37666310,
start_frame=0, end_frame=end_frame@entry=256, target_speed=0, current_speed=0, nframes=nframes@entry=256)
at ../libs/ardour/session_ltc.cc:180
#16 0x000000001245209f in ARDOUR::Session::no_roll (this=this@entry=0x37666310, nframes=256)
at ../libs/ardour/session_process.cc:145
#17 0x0000000012453051 in ARDOUR::Session::fail_roll (this=this@entry=0x37666310, nframes=<optimized out>)
at ../libs/ardour/session_process.cc:128
#18 0x0000000012459ebd in ARDOUR::Session::process_without_events (this=this@entry=0x37666310,
nframes=nframes@entry=256) at ../libs/ardour/session_process.cc:897
#19 0x000000001245a462 in ARDOUR::Session::process_with_events (this=0x37666310, nframes=256)
at ../libs/ardour/session_process.cc:425
#20 0x0000000012451bc5 in ARDOUR::Session::process (this=0x37666310, nframes=nframes@entry=256)
at ../libs/ardour/session_process.cc:78
#21 0x00000000120e79fd in ARDOUR::AudioEngine::process_callback (this=0x23316e30, nframes=256)
at ../libs/ardour/audioengine.cc:376
#22 0x00000000285390fe in ARDOUR::PortAudioBackend::blocking_process_main (this=this@entry=0x29e67750,
interleaved_input_data=interleaved_input_data@entry=0x115e8790,
interleaved_output_data=interleaved_output_data@entry=0x115e0050)
at ../libs/backends/portaudio/portaudio_backend.cc:1962
#23 0x0000000028539b75 in ARDOUR::PortAudioBackend::process_callback (this=this@entry=0x29e67750, input=0x115e8790,
output=0x115e0050, frame_count=<optimized out>, timeInfo=0x3d17fd70, statusFlags=statusFlags@entry=0)
at ../libs/backends/portaudio/portaudio_backend.cc:775
#24 0x0000000028539c16 in ARDOUR::PortAudioBackend::portaudio_callback (input=<optimized out>,
output=<optimized out>, frame_count=<optimized out>, time_info=<optimized out>, status_flags=0,
user_data=0x29e67750) at ../libs/backends/portaudio/portaudio_backend.cc:721
#25 0x00000000632c528f in NonAdaptingProcess () from C:\Program Files\Mixbus32C-4\bin\libportaudio-2.dll
#26 0x00000000632c73b2 in PaUtil_EndBufferProcessing () from C:\Program Files\Mixbus32C-4\bin\libportaudio-2.dll
#27 0x00000000632d129c in ProcessingThreadProc () from C:\Program Files\Mixbus32C-4\bin\libportaudio-2.dll
Robin Gareus [Mon, 7 Aug 2017 14:46:35 +0000 (16:46 +0200)]
Name New VCAs from Selection
Robin Gareus [Mon, 7 Aug 2017 14:29:08 +0000 (16:29 +0200)]
Improve Track > Toggle Solo/Mute, include VCAs
Robin Gareus [Mon, 7 Aug 2017 11:58:56 +0000 (13:58 +0200)]
Fix Windows builds (amend
7009ff03)
Robin Gareus [Mon, 7 Aug 2017 11:58:05 +0000 (13:58 +0200)]
fix a -Wattributes
Robin Gareus [Mon, 7 Aug 2017 11:57:49 +0000 (13:57 +0200)]
Explicitly initialize parent in the copy constructor
Robin Gareus [Mon, 7 Aug 2017 03:07:06 +0000 (05:07 +0200)]
space matters
Robin Gareus [Mon, 7 Aug 2017 00:52:24 +0000 (02:52 +0200)]
Add Lua Bindings to clone/copy regions
Robin Gareus [Sun, 6 Aug 2017 23:56:36 +0000 (01:56 +0200)]
Add Lua bindings for RegionMap and region list
Robin Gareus [Sun, 6 Aug 2017 21:49:12 +0000 (23:49 +0200)]
More RouteTAV -> StripableTAV updates (Editor List)
Robin Gareus [Sun, 6 Aug 2017 21:22:27 +0000 (23:22 +0200)]
Use StripableTAV to inform Ctrl surfaces about selection.
Robin Gareus [Sun, 6 Aug 2017 20:48:38 +0000 (22:48 +0200)]
VCA TimeAxis Context Menu
NB. This calls for a vca_ui (alike route_ui) to consolidate common
methods like choose_color, assign/drop slaves etc)
Robin Gareus [Sun, 6 Aug 2017 20:14:11 +0000 (22:14 +0200)]
Allow FaderPort to select VCAs
Robin Gareus [Sun, 6 Aug 2017 20:16:36 +0000 (22:16 +0200)]
Update Selection API to include all Stripables
Robin Gareus [Sun, 6 Aug 2017 20:15:15 +0000 (22:15 +0200)]
Update Remove Track(s) dialog to include VCAs