Commit graph

81 commits

Author SHA1 Message Date
Tim Mayberry
9597f5468d Remove limit parameter from PBD::find_files_matching_regex
This limit was not used or documented. The same functionality can be
performed when iterating through the results.
2014-08-17 18:12:09 -04:00
Tim Mayberry
10a6fe553e Replace all use of PathScanner with equivalent functions from pbd/file_utils.h 2014-08-17 15:32:42 -04:00
Robin Gareus
632e23de2c fix pathscanner / stl_vector related memory leaks
Conflicts:
	gtk2_ardour/session_dialog.cc
2014-08-17 15:27:45 -04:00
Robin Gareus
d8329d855d implement plugin-scan cancel-button sensitivity 2014-02-25 14:57:59 +01:00
Robin Gareus
22905d8a93 prepare GUI notifications for plugin scan 2014-02-24 02:04:37 +01:00
Paul Davis
031675f795 changes to allow window branch to build on OS X 2013-08-09 09:17:03 -04:00
Paul Davis
aaabaf5d3c Merge branch 'master' into windows 2013-08-02 12:51:24 -04:00
Robin Gareus
bfd50cdeb0 rework MIDI [processor|plugin] chain
* forward midi-data around plugins that have no MIDI-out
* allow to insert plugins with no MIDI-input at a point with one MIDI-channel

This works because excess ports (both plugin and route) remain
unconnected and use scratch-buffers.

Tested with LV2, LXVST and LADSPA.
(AU plugins with variable in/out retain the old behavior, no bypass)

fixes http://tracker.ardour.org/view.php?id=5630
2013-08-02 03:39:00 +02:00
Paul Davis
6a436fd826 fix merge conflict from master 2013-07-31 20:11:15 -04:00
Michael Fisher
6fd7ec3fc9 Return an empty string instead of a bool 2013-07-29 14:43:12 -05:00
Paul Davis
650964f320 Merge branch 'master' into windows 2013-07-17 08:05:59 -04:00
Paul Davis
9cb678ebcc finally get to the bottom of where NO_PLUGIN_STATE needs to be in order to be useful 2013-07-15 22:23:16 -04:00
Paul Davis
15be154515 use g_unlink() rather than unlink() universally, requires <glib/gstdio.h> in several files 2013-07-15 14:29:00 -04:00
Paul Davis
80a13145f3 Generalize no-plugin-state from AudioUnits to all plugins
Replace AU_STATE_SUPPORT compile-time define with NO_PLUGIN_STATE and make it prevent plugin state setting, preset loading, preset saving and plugin state saving. Blocks on these actions exist partially in the backend and partially in the GUI (this latter class are not absolute, and should OSC or MIDI be able to drive Plugin::save_preset() the block could be circumvented). Set NO_PLUGIN_STATE if --freebie is used at waf-configure time
2013-06-13 22:50:54 -04:00
Paul Davis
e1d331761f don't do debug trace output for every Render (process) call on an AU plugin 2013-05-02 10:11:06 -04:00
Paul Davis
3cd8138a41 convert from Glib:: to Glib::Threads for all thread-related API
git-svn-id: svn://localhost/ardour2/branches/3.0@13084 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-07-25 17:48:55 +00:00
Paul Davis
34c6e03ecf fix OS X compilation
git-svn-id: svn://localhost/ardour2/branches/3.0@13040 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-07-14 15:02:13 +00:00
Paul Davis
b04cd7d704 AU version of break recursive loops of Plugin::parameter_changed()->Plugin::ParameterChanged()->Plugin::parameter_changed() ...
git-svn-id: svn://localhost/ardour2/branches/3.0@13037 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-07-12 21:16:43 +00:00
Paul Davis
8d6d3c309d add StartTouch and EndTouch signals to Plugin class; make PluginInsert handle these signals and mark the start end of touch/gestures for a given AutomationControl; net result is that touch automation now works for AudioUnit plugins, at least those whose GUIs send kAudioUnitEvent_{Begin,End}ParameterGesture events
git-svn-id: svn://localhost/ardour2/branches/3.0@13028 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-07-11 15:31:02 +00:00
Paul Davis
0fb8c89eeb fix propagation of parameter changes from Plugin to PluginInsert so that automation will record parameter changes performed in a plugin GUI (#4976)
git-svn-id: svn://localhost/ardour2/branches/3.0@13026 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-07-11 03:48:14 +00:00
Paul Davis
bfd2ee48ce improved version of last commit, for tracking plugin control changes and mapping them to PluginInsert automation controls
git-svn-id: svn://localhost/ardour2/branches/3.0@13025 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-07-11 00:23:55 +00:00
Paul Davis
67f8063256 update automatable parameter's Evoral::Control object when AU parameter listener notifies us of a change
git-svn-id: svn://localhost/ardour2/branches/3.0@13024 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-07-11 00:11:21 +00:00
Paul Davis
0ed4059ec7 string fix, plus a tweak to handling variable i/o AUs
git-svn-id: svn://localhost/ardour2/branches/3.0@12913 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-24 12:50:38 +00:00
Paul Davis
d97312d438 lots more work trying to create a common structure for accessing plugin and MIDNAME patch/preset/program names. still not done
git-svn-id: svn://localhost/ardour2/branches/3.0@12665 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-11 22:59:35 +00:00
Paul Davis
9a0b1cce07 when selecting one of a set of variable I/O configs for an AudioUnit so that its output matches its input, be sure to define the output configuration before returning to continue with configuration of subsequent processors. Fixes crash when loading various non-apple AU's as the first pre-fader plugin (#4909)
git-svn-id: svn://localhost/ardour2/branches/3.0@12566 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-05 04:25:53 +00:00
Paul Davis
5f1ff657c2 another AU-specific tempo fix
git-svn-id: svn://localhost/ardour2/branches/3.0@11203 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-09 16:10:59 +00:00
Paul Davis
355183f1ab partially revert some of the recent work on tempo to reflect new understanding of the problem. behaviour is now believed to be totally correct but awaiting a bit more testing
git-svn-id: svn://localhost/ardour2/branches/3.0@11171 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-06 16:39:40 +00:00
Paul Davis
c5205fe49f upgrade audiounit support to use the new tempomap API
git-svn-id: svn://localhost/ardour2/branches/3.0@11169 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-05 21:26:54 +00:00
Paul Davis
d2dd80807c more tempo-related AU changes
git-svn-id: svn://localhost/ardour2/branches/3.0@11059 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-22 21:07:04 +00:00
Paul Davis
ceaf76b505 switch over audio_unit.cc to use divisions_per_bar() not beats_per_bar(). not sure how this was missed
git-svn-id: svn://localhost/ardour2/branches/3.0@11058 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-22 20:48:37 +00:00
Paul Davis
e9b4f14668 rename Timecode::BBT_Time::ticks_per_beat to Timecode::BBT_Time::ticks_per_bar_division which is a more accurate and informative name. The number doesn't describe the smallest division of a "beat" (which is only defined contextually anyway), but rather the smallest division of the the divisions of a bar. If using a meter of 4/8, there are 4 divisions per bar, and we can divide each one into ticks_per_bar_division pieces; in a separate meter (section) of 3/8, there are 3 divisions per bar, each of which can be divided into ticks_per_bar_division_pieces.
git-svn-id: svn://localhost/ardour2/branches/3.0@11022 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-19 19:44:43 +00:00
Paul Davis
34909f79ad Make Carbon GUI support for AU's optional at compile time (from Robin)
git-svn-id: svn://localhost/ardour2/branches/3.0@10872 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-02 20:42:27 +00:00
Paul Davis
8341291deb use error << to replace cerr in AudioUnits GUI code, and a couple of minor tweaks in that code
git-svn-id: svn://localhost/ardour2/branches/3.0@10521 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-11-10 01:31:48 +00:00
Paul Davis
7c9c86af27 start trying to remove the use of Plugin::info()->n_{inputs,outputs}, which alway refer to static (unchanging) information from the plugin metadata, which is not useful in the face of AU-like plugin APIs that can change I/O valency as requested, at least some of the time
git-svn-id: svn://localhost/ardour2/branches/3.0@10386 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-11-01 21:48:45 +00:00
Paul Davis
f1928b85bb add AU parameter listening stuff from 2.X
git-svn-id: svn://localhost/ardour2/branches/3.0@10242 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-10-19 20:31:00 +00:00
Paul Davis
a189d3e43b working AU instruments (MIDI-driven synth plugins)
git-svn-id: svn://localhost/ardour2/branches/3.0@10238 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-10-19 17:18:47 +00:00
Paul Davis
5c997a7551 deliver MIDI events to AU plugins that want them
git-svn-id: svn://localhost/ardour2/branches/3.0@10225 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-10-18 21:00:43 +00:00
Paul Davis
4aeebb914e changes for OS X support: change waf config define to COREAUDIO_SUPPORT, remove PluginInsert call to IO::PortCountChanged, remove use of explicit Carbon linkage, fix up AudioUnit internals to actually work (Cocoa GUIs still currently broken)
git-svn-id: svn://localhost/ardour2/branches/3.0@10224 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-10-18 15:08:42 +00:00
Paul Davis
0938a42440 fixes for 98% of all the warnings/errors reported by OS X gcc on tiger
git-svn-id: svn://localhost/ardour2/branches/3.0@10179 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-09-30 17:55:14 +00:00
Paul Davis
071cc3ef01 fix serious breakage with setup of plugin automatable controls/parameters, in which the relative ordering of things during ::set_state() was totally wrong. still see multiple instances of automation tracks for processors in GUI
git-svn-id: svn://localhost/ardour2/branches/3.0@9698 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-06-09 20:21:46 +00:00
David Robillard
a473d630eb Fix broken whitespace. I'd apologize for the compile times if it was my fault :D
git-svn-id: svn://localhost/ardour2/branches/3.0@9654 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-06-01 16:50:12 +00:00
David Robillard
62e730b57a Fix broken whitespace (no functional changes).
git-svn-id: svn://localhost/ardour2/branches/3.0@9288 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-04-04 22:46:48 +00:00
Paul Davis
ee725fbe91 more attempted cleanup of AU preset declarations
git-svn-id: svn://localhost/ardour2/branches/3.0@9263 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-04-02 14:12:09 +00:00
Paul Davis
1eb753b842 fix up (?) audio_unit.cc compilation, maybe
git-svn-id: svn://localhost/ardour2/branches/3.0@9260 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-04-02 13:51:18 +00:00
Carl Hetherington
5f4bdb233a Clean up plugin preset handling a bit.
git-svn-id: svn://localhost/ardour2/branches/3.0@8301 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-12-19 23:11:01 +00:00
Paul Davis
f09524b9d3 move ticks per beat from Meter to Timecode::BBT_Time, add new constructor for BBT_Time based on a double value; reduce BeatFramesConverted to 1 liners pending likely removal
git-svn-id: svn://localhost/ardour2/branches/3.0@8277 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-12-14 20:28:37 +00:00
David Robillard
4b861e6039 Rename libmusictime libtimecode (consistent with already used namespace "Timecode").
Move BBT_Time to libtimecode.


git-svn-id: svn://localhost/ardour2/branches/3.0@8271 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-12-14 18:13:37 +00:00
Carl Hetherington
a9275f997b Put plugin-note-off code in the right place.
git-svn-id: svn://localhost/ardour2/branches/3.0@8207 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-12-07 15:00:19 +00:00
Carl Hetherington
73192bc1a7 Remove all use of nframes_t.
git-svn-id: svn://localhost/ardour2/branches/3.0@8166 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-12-03 22:26:29 +00:00
Paul Davis
90172686b9 nominally add MIDI input support for AudioUnit plugins
git-svn-id: svn://localhost/ardour2/branches/3.0@8044 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-11-15 19:54:23 +00:00