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
Robin Gareus [Sun, 6 Aug 2017 16:37:15 +0000 (18:37 +0200)]
Allow to select VCAs
Robin Gareus [Sun, 6 Aug 2017 20:12:20 +0000 (22:12 +0200)]
Emit SelectionChange when VCA is removed
chicken/egg:
Stripable d'tor which calls remove_stripable_by_id() will only be called
when the Stripable is destroyed. But as long as the GUI selection holds a
shared-ptr reference to the Stripable, it won't be destroyed.
Robin Gareus [Sun, 6 Aug 2017 16:00:52 +0000 (18:00 +0200)]
Add options to set bit-depth and bwf to session-export util.
Robin Gareus [Sun, 6 Aug 2017 15:55:33 +0000 (17:55 +0200)]
Broadcast info according to EBU tech-specs
Robin Gareus [Sun, 6 Aug 2017 12:50:45 +0000 (14:50 +0200)]
Remove some debug output (gtk2_ardour)
Robin Gareus [Sun, 6 Aug 2017 12:48:18 +0000 (14:48 +0200)]
Remove some debug output
Robin Gareus [Sun, 6 Aug 2017 12:47:50 +0000 (14:47 +0200)]
Improve help text and error-reporting for ardour-export
Robin Gareus [Sun, 6 Aug 2017 12:34:24 +0000 (14:34 +0200)]
Fix session-export --samplerate option
Robin Gareus [Sat, 5 Aug 2017 22:01:23 +0000 (00:01 +0200)]
Yet another blind copy/paste issue fix.
Robin Gareus [Sat, 5 Aug 2017 20:32:13 +0000 (22:32 +0200)]
Fix Clock Font on OSX (fixes Big Clock Window Size)
Meanwhile libpango was fixed and we use
CTFontManagerRegisterFontsForURL() on OSX >=10.6
Robin Gareus [Sat, 5 Aug 2017 19:12:52 +0000 (21:12 +0200)]
"Selected" is a PresentationInfo Property.
This fixes MIDI Input follows MIDI track selection (and maybe other
issues) and hopefully breaks nothing else (most places subscribe to
both Stripable::PropertyChanged and PresentationInfo::PropertyChanged).
Robin Gareus [Sat, 5 Aug 2017 17:11:57 +0000 (19:11 +0200)]
Fix Track/Bus dialog name-entry default
Changing the track-type to add changes the name which marked the
name-entry as "edited by user", even though it was Ardour itself
which changed the name.
Robin Gareus [Sat, 5 Aug 2017 14:17:31 +0000 (16:17 +0200)]
amend
bc46a7e2e9; fix blind coding typos
Robin Gareus [Sat, 5 Aug 2017 14:03:17 +0000 (16:03 +0200)]
amend
f4c76f89d3a; fix blind coding typos
Robin Gareus [Sat, 5 Aug 2017 13:35:31 +0000 (15:35 +0200)]
PortAudio backend RT-safe MIDI buffer allocation
Robin Gareus [Sat, 5 Aug 2017 13:21:51 +0000 (15:21 +0200)]
Coreaudio backend RT-safe MIDI buffer allocation
Robin Gareus [Sat, 5 Aug 2017 13:03:06 +0000 (15:03 +0200)]
ALSA backend RT-safe MIDI buffer allocation
Robin Gareus [Sat, 5 Aug 2017 13:04:05 +0000 (15:04 +0200)]
Update backend API: read-only MIDI input buffers
Paul Davis [Sat, 5 Aug 2017 06:03:43 +0000 (02:03 -0400)]
full integration of beatbox test app into ardour tree+build system
Plus a few attempts at catching note on/off quantization stuff
Robin Gareus [Sat, 5 Aug 2017 00:43:15 +0000 (02:43 +0200)]
Revert
542d021f, fix number of DSP threads
The main process-callback does not participate in DSP computation
Robin Gareus [Fri, 4 Aug 2017 23:27:41 +0000 (01:27 +0200)]
Consolidate ctrl surface code
Robin Gareus [Fri, 4 Aug 2017 22:54:34 +0000 (00:54 +0200)]
Add API to set thread-priority (for ctrl-surfaces)
Robin Gareus [Fri, 4 Aug 2017 22:31:34 +0000 (00:31 +0200)]
Reduce DSP thread priority (main-i/o > midi i/o > computation)
Paul Davis [Fri, 4 Aug 2017 22:09:31 +0000 (18:09 -0400)]
add tempo adjustment
Paul Davis [Fri, 4 Aug 2017 21:40:55 +0000 (17:40 -0400)]
expose more internal state
Paul Davis [Fri, 4 Aug 2017 21:40:35 +0000 (17:40 -0400)]
change superclock ticks per second (no need for 11,13,17)
Paul Davis [Fri, 4 Aug 2017 21:40:13 +0000 (17:40 -0400)]
remove some debug output
Paul Davis [Fri, 4 Aug 2017 21:26:42 +0000 (17:26 -0400)]
fix bbox compilation after integration into tree