Commit Graph

6286 Commits

Author SHA1 Message Date
Robin Gareus
2b77d6ba85 new preference: don't open plugin GUI when there's an inline display 2016-03-15 00:26:30 +01:00
Robin Gareus
93bc9b9728 update [LV2] Plugin Inline Display API: drop cairo dependency 2016-03-14 16:45:27 +01:00
Paul Davis
420cc9b447 use ForGroup to flag and detect route-group based control changes 2016-03-14 10:42:01 -04:00
Robin Gareus
c32824e452 Implement LV2 Inline Display Extension 2016-03-14 00:17:16 +01:00
Robin Gareus
58469214be prototype online self-automating LV2 plugin interface
goes along with https://github.com/x42/automate.lv2
2016-03-14 00:17:14 +01:00
Robin Gareus
5fa4cf996b prepare custom LV2 extensions 2016-03-14 00:17:08 +01:00
John Emmas
af44e0e051 Make sure that class 'ARDOUR::AnalysisGraph' is exportable (since it gets used outside of libardour) 2016-03-12 13:44:10 +00:00
John Emmas
1c0efaf6c3 Accommodate newly introduced source(s) in our MSVC project (libardour) 2016-03-12 13:41:00 +00:00
Robin Gareus
d131f882ee cleaner version of ac3da53 2016-03-12 10:11:06 +01:00
Robin Gareus
ac3da53f71 reset export status when not normalizing - fixes #6816 2016-03-12 03:02:31 +01:00
Robin Gareus
8e147462d2 Configurable export-silence trim threshold (no GUI yet) 2016-03-11 18:11:36 +01:00
Robin Gareus
43603a9893 prepare region/range loudness analysis 2016-03-11 17:26:42 +01:00
feandin
bf83093f43 Fix issue #0006806 2016-03-05 15:54:47 +01:00
Robin Gareus
3a3afe7cfc fix playlist channel-count when removing a connected port.
when removing a connected port, IO::remove_port() emits
(IOChange::ConnectionsChanged | IOChange::ConfigurationChanged)
2016-03-05 01:37:59 +01:00
Robin Gareus
53a9751532 fix processed region export (track output) 2016-03-04 17:01:28 +01:00
Robin Gareus
38f3d9d68a initialize uninitialized variable 2016-02-29 15:17:12 +01:00
Robin Gareus
8741a5885b configurable export preroll 2016-02-29 15:13:06 +01:00
Robin Gareus
33545e552b pre-process (silence) before export to flush reverb tails etc. 2016-02-29 13:50:56 +01:00
Robin Gareus
ba78359129 prepare for update to waf 1.8
uselib is no longer implicit (inherited by .use). This is still incomplete,
some uselibs for non-linux variants may be missing.

bld.is_defined("HAVE_XXX") also no longer works and will have to be
changed (I think to bld.env["HAVE_XXX"]) in countless places.
2016-02-28 21:16:44 +01:00
Robin Gareus
489753e866 specialize isfinite for MSVC compat 2016-02-28 12:07:00 +01:00
John Emmas
3c9c30abe1 Accommodate newly introduced source(s) in our MSVC project (libardour) 2016-02-27 16:29:53 +00:00
Robin Gareus
1bee17d3b9 prevent livelock on NaN, inf control parameters - fixes #6789
|: Gtk::Adjustment::value_changed  AutomationControl::set_value Controllable::Changed
GUI Event Loop  Gtk::Adjustment::set_value :|

TODO: check portability of `isfinite ()`
2016-02-26 14:51:06 +01:00
Robin Gareus
a6af411af7 potential mem corruption at session close:
ARDOUR::Session::~Session()
ARDOUR::Route::~Route()
ARDOUR::InternalReturn::~InternalReturn()
ARDOUR::Return::~Return()
ARDOUR::Session::unmark_return_id(unsigned int)
boost::dynamic_bitset<unsigned int, std::allocator<unsigned int> >::reference::do_assign(bool)

-> Invalid write of size 4
-> 0 bytes inside a block of size 4 free'd

Thanks to The_CLA for valgrinding this.
2016-02-24 23:36:52 +01:00
Robin Gareus
70222e8133 fix LV2Plugin::requires_fixed_sized_buffers()
ARDOUR::Plugin() does not inherit from ARDOUR::Processor(),
the virtual function was never called.
2016-02-23 22:22:19 +01:00
Robin Gareus
68a8b5613e Add new sources to MSVC project (libardour)
adapted from John Emmas' lua branch
2016-02-23 15:41:26 +01:00
Robin Gareus
f4553880f6 Implement Lua session-scripts 2016-02-23 15:41:21 +01:00
Robin Gareus
51385ced3c Implement Lua DSP processor/plugin 2016-02-23 15:41:08 +01:00
Robin Gareus
d8008b2db1 libardour lua-script-manager 2016-02-23 15:41:06 +01:00
Robin Gareus
f0b6c8e111 include static liblua with libardour & prepare bindings 2016-02-23 15:41:02 +01:00
Robin Gareus
7d7f63363b basic DSP lib (for lua bindings) 2016-02-22 22:06:47 +01:00
Robin Gareus
4303fbfc05 add lua search path 2016-02-22 22:06:47 +01:00
Paul Davis
e9234c856a add syntax and scaffolding for MIDI binding maps to refer to selected tracks/busses.
THIS DOES NOT WORK YET. Selection information is not available in libardour at this time
2016-02-22 15:31:25 -05:00
Paul Davis
6991a07902 remove all trace of SAE from source code.
This had become incoherent over time, and posed a development hazard and burden going forward
2016-02-22 15:31:24 -05:00
Paul Davis
bc487bb4b0 replicate the remove-all-trailing whitespace commit(s) in master 2016-02-22 15:31:24 -05:00
Paul Davis
589f2a1ab8 change suffix of keybinding files to ".keys" to avoid conflict with earlier versions.
Move some code around that should never have been inside libs/ardour to begin with.
2016-02-22 15:31:24 -05:00
Adrian Knoth
6fa88273aa Spelling correction patch from Debian
Patch taken (and forward-ported to HEAD) from
<https://anonscm.debian.org/cgit/pkg-multimedia/ardour.git/plain/debian/patches/0100-fix-typos.patch>
2016-02-22 15:13:01 -05:00
Robin Gareus
30497db823 prepare for gcc6 rint() precision degradation
gcc6 returns a float for "rint ((float) val)"
2016-02-22 00:07:21 +01:00
Robin Gareus
f6fe87d63e prevent some mess when automating control ports on midi synths 2016-02-21 22:19:08 +01:00
Robin Gareus
ff427be0fa add processor lookup by PBD::ID via session
In preparation for Lua bindings this completes the basic set of
Session object lookup: route, source, controllable, region, processor
2016-02-20 20:26:18 +01:00
Robin Gareus
5e50a7d6cf allot to open OSX Finder with arbitrary paths 2016-02-17 16:29:25 +01:00
John Emmas
58f7a11287 Make sure that MSVC knows which version of 'ceil()' we want
(it doesn't have a version that understands 'framecnt_t')
2016-02-17 12:17:05 +00:00
Ben Loftis
86edc1ccfe Fill some more VST transport flags. 2016-02-16 15:33:12 -06:00
Robin Gareus
31442cd63d work-around case where metric is NULL in split cycles.
This really needs to be fixed on a higher level.
e.g Pluin::connect_and_run() needs to be passed the current time identical to
PluginInsert::connect_and_run()
2016-02-16 18:17:13 +01:00
Robin Gareus
cbdae78511 try to catch https://github.com/rncbc/synthv1/issues/1#issuecomment-183041991
(n_samples = 64 but Ardour sends midi-buffer with an event at 960)

some guesses as to why:
 - split cycle for looping (nominal: 1024, cycle split:64)
 - plugin uses _session.transport_frame() directly :(
   (not latency compensated offset or looped position)
 - "offset" is not taken into account for midi buffers
 - tempo/metric change (metric iterator is wrong after loop)
2016-02-16 15:36:43 +01:00
Robin Gareus
c1910351a5 Revert "proper debug prints for Analyser"
This reverts commit 9a281963e1.

audiographer cannot use symbols from libardour (cyclic dependency)
(only headers only are ok)
"DebugBits ExportAnalysis" symbol break windows and unit-test builds.
2016-02-16 15:13:12 +01:00
Robin Gareus
a664fb703e chunk data before analysis, prefer 8K
* consistent spectrum display for all reports (same binsize)
* improved performance (power of two)
2016-02-16 14:25:49 +01:00
Robin Gareus
e18e765c75 Fix Analysis duration for added silence 2016-02-16 13:22:12 +01:00
Robin Gareus
9a281963e1 proper debug prints for Analyser 2016-02-16 13:21:28 +01:00
Robin Gareus
e6ea35c3de Add normalization gain factor to Export Analysis 2016-02-15 15:46:49 +01:00
Julien ROGER
a3dd27c41b Fix 6677: Post-export script reinterprets timestamp format placeholder giving incorrect filename
Due to localtime and its statically allocated buffer, time_struct variable is
set at construct time but its value changes over time due to subsequent calls to localtime
in ardour process. Replacing localtime by localtime_r fix the problem.

This also fix 6713: Name of Audio (timestamp) does not match with written Filename in CD-Cue file
2016-02-13 12:45:40 +10:00