fc7dc6a214
Abort when Action cast failed
...
Previously the action-manager only called ::abort() when
an action could no be found. This add a further restriction
that the expected class must match.
2019-02-28 23:57:32 +01:00
8244026533
Consolidate ToggleAction cast, use new API
...
Furthermore we can assume that all Actions are registered and
Unregistered actions will ::abort() execution.
2019-02-28 23:54:42 +01:00
00934aec0d
Initialize per session instant state
...
Per session (instant.xml) GUI options do not have a sigc::slot<> backed
configuration interface to initialize the Actions.
This fixes a first-time start issue (no instant.xml) where GUI panes
may be visible (default) while the actions are "off" (default).
This is a tentative solution, instant.xml backed ToggleAction
initialization needs to be consolidated somehow.
2019-02-28 23:54:13 +01:00
9f571b91d3
x-fade uses cairo-generated icons, remove XPM
2019-02-28 21:30:45 +01:00
959947e7f8
NO-OP: whitespace (remove vi modelines)
2019-02-28 20:56:23 +01:00
9131cd17a0
Consolidate gdither noise code
2019-02-28 20:40:45 +01:00
2a8d3ff4f0
Amazing PCM byte/array convert functions, unused.
2019-02-28 18:52:10 +01:00
65d147fcc9
The end of long and winding "road to compiling" cdc2d055f
2019-02-28 18:42:27 +01:00
be3fa5a635
Remove unused RDF in RIFF prototype
2019-02-28 18:30:06 +01:00
e7cc73713e
Remove even more cruft
...
http://lv2plug.in/ns/dev/host-info# doesn't exist, and nobody needs
a config.guess from 2005 :)
2019-02-28 18:28:44 +01:00
06911bd7e2
Move bug-tool into the Python Museum
2019-02-28 18:21:05 +01:00
c83ba53399
Remove ancient, unmaintained xcode project files
2019-02-28 18:12:44 +01:00
7ae1825a3c
Remove cruft, unused files
2019-02-28 18:04:42 +01:00
c6e2e0a948
Clean up remnants from a half eaten apple
2019-02-28 18:00:08 +01:00
8c68d35819
Add phase labels -180..180 deg for analysis display
2019-02-28 04:49:37 +01:00
f14c6ea734
NO-OP: whitespace
2019-02-28 04:49:34 +01:00
92a16d0e76
NO-OP: whitespace
2019-02-28 04:49:32 +01:00
d2b73141af
Fix analysis plugin when using plugin-presets
2019-02-28 04:49:27 +01:00
5d4fbcb1ea
Allow to special case plugins used for IR analysis
...
This is relevant for some VST specifics (e.g connected pins) or
similar audioMasterCallbacks that use either global or plugin-insert
specific data.
2019-02-28 04:49:00 +01:00
2ee2b8481c
Copy state when replicating an AU plugin
...
This is only used for plugin-analysis, AU plugins are otherwise not
replicated, and variable-i/o is used instead
2019-02-28 04:48:48 +01:00
4397ec9ce6
Properly copy LV2 plugin instances on replication
...
This fixes issues for stateful plugins and plugins with
previously loaded preset.
2019-02-28 04:48:32 +01:00
5714e390f8
Take latency into account when analyzing live signal
2019-02-28 04:20:12 +01:00
62470f3cb4
NO-OP: whitespace
2019-02-28 03:08:21 +01:00
06854e1315
Re-work plugin-analysis (fix crashes)
...
Plugin-analysis uses a fixed number of samples, which may be larger
than the session's block-size. This caused problems for some VST
plugins that use audioMasterCallback to query the session's block-size.
Plugin FFT analysis now processes in chunks of the session's block-size
to avoid this issue. This also allows to increase accuracy for
all plugin standards (FFT size was increased to 8192).
2019-02-28 01:26:30 +01:00
61623f730c
More slaved_to() replacements, fix typo
2019-02-27 16:49:29 +01:00
593fa3c0c4
Consolidate code, use dedicated API
2019-02-27 16:46:16 +01:00
2936a4d2bd
Amend f474d0d4a9
, remove explicit casts
2019-02-27 16:44:39 +01:00
72e6a79b69
Prefer to expose the virtual method for VCA and Route
2019-02-27 16:43:52 +01:00
f474d0d4a9
Update Lua VCA example script
2019-02-27 16:34:48 +01:00
20c36c9979
Expose Lua bindings to check VCA assignments
2019-02-27 16:33:59 +01:00
29db406512
Fix crash when pressing "Esc" without a session
...
Ardour's UI can process a key-binding or emit the Escape() signal
without a loaded session or when unloading a session.
2019-02-26 20:08:56 +01:00
85877adf56
Do not save export format for indirect changes
...
Previously selecting a different export format that changed global
settings (eg. toggle analysis) triggered an indirect save of the format.
2019-02-26 19:57:27 +01:00
47c265f2ec
clarifying comment
2019-02-26 10:17:23 -07:00
2d33638f29
Add example script to thin automation
2019-02-26 18:05:10 +01:00
19540e5ad7
initial version of transport state machine diagram
2019-02-26 09:27:20 -07:00
eddac2e3b2
enhanced debug trace output
2019-02-26 09:02:42 -07:00
5fad2efa10
reorder call to ::track_transport_master() so that delta is computed correctly
2019-02-26 09:02:42 -07:00
eefc2d774c
enhanced debug trace output
2019-02-26 09:02:42 -07:00
a84164cd94
enhanced debug trace output
2019-02-26 09:02:42 -07:00
d26a835d35
ExportFormatFFMPEG supports tagging meta-data
2019-02-26 17:01:37 +01:00
267dfea02c
Disable ffmpeg/metadata by default, use "tag-metadata"
2019-02-26 17:01:37 +01:00
bc9bf87dde
Debug AudioGrapher::CmdPipeWriter<> command
2019-02-26 17:01:37 +01:00
Nikolaus Gullotta
711965b1a9
Amend d61efbee3
- remove check for Mixbus
2019-02-26 09:45:58 -06:00
Nikolaus Gullotta
d61efbee3e
Route::save_as_template() needs call state() with true, and add modified-with node to state for template-files
2019-02-26 09:42:30 -06:00
7048d86d6c
Remove unused define
2019-02-26 03:49:02 +01:00
6920e5d653
Prefer vfork() over system() when opening an URI
...
see also https://github.com/surge-synthesizer/surge/issues/657
2019-02-26 03:47:36 +01:00
b8a6f7b052
TimeFx-Filter: do not create a region when operation is canceled
2019-02-26 03:07:49 +01:00
c36dfbedb7
Re-work TimeFX cancel/abort
...
When processing multiple regions, apply results at the end, so that
when the action is canceled, no changes are applied.
Furthermore, do not commit an undo-command if time-stretch is a no-op.
2019-02-26 03:01:53 +01:00
1776939dd3
Fix TimeFX threading (detached thread must not be joined)
2019-02-26 02:16:59 +01:00
5f1e2d4961
Fix never-ending timestretch
...
This is relevant when time-stretch is canceled. In that case
stretcher.process() is never called with final=true, and hence
stretcher.available() will always return a value >=0.
2019-02-26 01:57:02 +01:00