13
0
Commit Graph

721 Commits

Author SHA1 Message Date
b79c5d4f1b Add a new link library that's needed when building against the newer version of liblo (0.28)
(probably only needed when building with MSVC)
2015-06-09 12:06:49 +01:00
72416e9432 Don't allow user to change function of modifier buttons. 2015-06-08 17:22:34 -04:00
71ae8d2abe Add an option in the MCP .device file to set master position (fixes #6357) 2015-06-04 15:07:43 -07:00
71feea97a0 Clean up mackie surface profile editor from things that don't work or match the mackie hardware (fixes #6342) 2015-06-04 15:02:51 -07:00
f8c4c0b5b8 Make ctl put v-pot in fine mode. 2015-06-04 14:04:46 -07:00
5e1ba50731 fix unsigned/signed math error 2015-05-27 08:57:16 -04:00
e5c3efe9a3 ensure that Mackie Control bank left/right commands always hit the same boundary (Len Ovens) 2015-05-27 07:11:15 -04:00
fb649f43ea fix for MCP panner width - closes #6341 2015-05-24 17:56:40 +02:00
ce259edbcd professionalize peak-meters
The peak meter needs to withstand various test-signals
without visual jitter (in particular 1kHz sine) regardless
of settings (period-size, sample-rate, custom fall-off).

This needs to be done in sync (and not by a random non-rt
‘smoothing’ thread).

On the downside this voids the ‘visual smoothing’ particularly 
with large buffersizes - but then again exactly this “always 
fall-off no matter what [the next real data will be]” is the
problem.

One the upside, there’s one less high-frequency (100Hz) thread
(Yay!) PS. it probably never worked on windows, anyway.

Only peak-meters are affected by his change.
K-meters, IEC I/II and VU were never visually smoothed.
2015-05-02 03:46:49 +02:00
1e5be9ebfd add OSC trim control 2015-04-25 21:23:37 +02:00
4512d013eb put all of the Mackie control surface code into the ArdourSurface namespace 2015-04-15 20:37:20 -04:00
7f659a0463 add ArdourSurface to OSC class to help reduce global namespace pollution 2015-04-15 17:21:55 -04:00
d00ab0221a allow to set/change loop-range via OSC 2015-04-12 23:40:35 +02:00
7c146a9e22 fix OSC parameter mapping, fixes #6224
(ignore non control ports in numbering)
2015-04-04 03:16:53 +02:00
2a9d7286f9 fix AWOL semicolon in 9f842f3 2015-03-20 22:08:17 +01:00
9f842f3247 NOOP, whitespace 2015-03-20 21:38:26 +01:00
410cf8e79d OSC log errors 2015-03-20 21:32:56 +01:00
7619edd1f6 OSC: fix crash when trying to set output params 2015-03-20 21:19:25 +01:00
17e1e2641b OSC fix plugin numbering:
ignore non-plugin processors for OSC
/ardour/routes/plugin/parameter

fixes issue with hidden internal processors. (rec-en
track adds a hidden [meter] processor at the top,
internal returns on busses have returns etc.)
2015-03-20 20:27:15 +01:00
40c04867ef Bundle API user update
cherry-pickable follow up to 0582221
2015-03-08 22:39:34 +01:00
8a93a87db0 remove lib versioning for internal plugins
Those objects do not have a versioned API by themselves.
This fixes issues with duplicate deployment (OSX, Linux bundles: cp) and
ardour listing control-surfaces multiple times (file index plugin dir).
2015-02-16 17:32:56 +01:00
95091a52a0 When building with MSVC make sure any backends / panners etc get copied to the correct target folder
(i.e. 'lib/ardour3' or 'lib/mixbus3' as appropriate)

These changes are MSVC specific and shouldn't affect the other builds
2015-01-12 14:43:22 +00:00
dafcaec023 Limit Wiimote surface discovery to 5 connection attempts
If you don't connect a Wiimote then the connection attempts were
endless.
2014-12-21 12:53:00 +07:00
0fdb846625 try alternate Glib:: API for conversion from UTF-8 to ascii in Mackie support code 2014-12-15 15:06:10 -05:00
e3f376107e nominal fix for sending UTF-8 text to Mackie surface 2014-12-15 14:44:05 -05:00
602e390649 changes to Mackie Control support for new crossthreadchannel implementation 2014-12-03 21:22:34 -05:00
d3e2de8b4e modify Mackie surface code to use crossthreadchannel on all platforms 2014-12-03 20:57:58 -05:00
25e1eddc50 remove "port sources" management from MidiControlUI and Mackie support.
This was necessary due to a bug/design issue between Glibmm and Glib (see https://bugzilla.gnome.org/show_bug.cgi?id=561885)
 but the problem needs to be managed by the *creator* of the IOSource and that has now moved inside CrossThreadChannel.
2014-11-26 18:22:22 +02:00
1f58f81aa6 Fix order of parameters to stop_touch() in Mackie::Control
Reverse the parameters of Mackie::Control::stop_touch() to make them
consistent with AutomationControl::stop_touch(), and fix up the call to
AutomationControl::stop_touch() to have the parameters in the correct
order.

Unfortunately, I don't possess any devices that speak the Mackie protocol, so
though the patch seems logical and correct to me, I have no way of testing it.
If anyone has a device with touch faders that speaks Mackie, I'd be glad of any
confirmation that it at least doesn't break anything.
2014-11-25 14:59:48 +00:00
ea5876b836 Remove dead code. 2014-11-25 02:11:44 -05:00
bfe49540b9 remove use of CrossThreadChannel::selectable() to allow cross-platform implementation of CrossThreadChannel via Glib::IOSource 2014-11-23 17:37:13 +02:00
7204702c3f Reduce coupling between Plugin and PluginInsert. 2014-11-03 13:40:50 -05:00
6dfb11c2d0 Move ParameterDescriptor from Plugin to its own header.
This fixes circular dependency issues that arise when using ParameterDescriptor more widely.
2014-11-02 02:10:24 -05:00
973d40e3ac Add support for USE_CAIRO_IMAGE_SURFACE when building with MSVC
(new preprocessor directive - greatly improves CPU loading)
2014-10-29 17:36:30 +00:00
2f4a8cf693 avoid const cast warning 2014-10-24 12:18:46 -04:00
d8e64103a6 fix CPI window handling:
Move control-surface editor-window management to the control surface.
The Preferences-Dialog is not aware of session specific or surface
specific actions and cannot properly manage the window.
2014-09-13 16:59:02 +02:00
65715dd298 Make sure all our VC projects agree that the product is called 'Mixbus3' (as opposed to just 'Mixbus')
It'd be nice if we could use 'ARDOUR::config_dir_name' for this purpose (or perhaps 'PROGRAM_VERSION'). However, neither is implemented widely enough at present to make this practical. Keep an eye on them though, as possible future strategies.
2014-08-28 07:57:20 +01:00
45afed5e9a Modify our VC project files to work with msvc32-fixup.pl 2014-08-04 09:02:17 +01:00
576f39d6a0 Add the MSVC project file for building libs/surfaces/osc 2014-07-27 11:26:41 +01:00
7984cd2321 Changes needed for building surfaces/osc (control surface protocol) with MSVC
(for testing on the non-Windows platforms)
2014-07-22 22:19:46 +01:00
928881b24a Update vcproj files for changed LILV config define. 2014-07-15 15:50:12 -04:00
cd12698b9c Rename PBD::find_file_in_search_path to just PBD::find_file
saves a bit of typing and not necessary if you look at how it is used.
2014-06-25 12:40:10 -04:00
d9a7d419b2 Change PBD::find_files_matching_regex and PBD::find_files_matching_filter to take a Searchpath 2014-06-25 12:40:10 -04:00
547689a055 Replace all use of PathScanner with equivalent functions from pbd/file_utils.h 2014-06-17 21:41:29 +10:00
0e96d84079 Change PBD::PathScanner API to return results by value to avoid inadvertent memory leaks 2014-06-17 21:13:05 +10:00
12cf9d5be8 fix pathscanner / stl_vector related memory leaks 2014-06-15 13:24:39 +02:00
8c9749e42f merge with master and fix 4 conflicts by hand 2014-06-02 11:32:13 -04:00
f3349a797c more gettimeofday() -> g_get_monotonic_time() 2014-05-16 19:58:46 +02:00
5fba8a2015 and one more gettimeofday() transition (mackie timers) 2014-05-16 18:35:42 +02:00
1b989a93c2 remove redundant os.path.join() calls when specifying install path as bld.env['LIBDIR'] 2014-04-28 21:18:02 -04:00
058986f77b finish unfinished work at basing all install paths on the program name 2014-04-28 21:11:08 -04:00
8a4fdbf023 final eradication of jack header files from anything except the JACK backend 2014-04-11 02:52:28 -04:00
077a194430 Add the main VC project files for building Ardour3 with Microsoft Visual Studio
Note that there's no 'VS Solution' file at present and some targets haven't been built yet (e.g. 'fst')
2014-04-08 09:49:35 +01:00
af0c42ec4f midi-controller, support log parameters - fixes #5890 2014-03-23 18:59:24 +01:00
495c0de4ac fix up waf build in wake of search path changes earlier today 2014-03-10 17:30:12 -04:00
912f07b919 mingw build fixes (tested with i686-w64-mingw32 on linux-x86_64) 2014-03-04 15:25:58 +01:00
e6c3cece64 remove recently added conflation of mingw64 and msvc with respect to symbol export 2014-03-02 14:59:08 -05:00
03fd396286 fix a related-to-last-commit problem in build script for OSC support
This would have had the effect of hiding -DPACKAGE="ardour_osc" but since there is no i18n stuff in our OSC support,
it really had no effect.
2014-03-01 16:58:22 -05:00
19395ac258 when mingw is mingw64, it appears that we need to use __declspec() and not __attribute__((visibility)) for export control 2014-03-01 15:16:39 -05:00
80d83fd238 add a hack to deal with device discovery race, in which the devices were not actually known to be ready before the last update_surfaces() call (which is where binding between strips and routes occurs) ; add support for Mackie Control touch on/off messages 2014-02-19 23:25:08 -05:00
29b3c299a1 add a hack to deal with device discovery race, in which the devices were not actually known to be ready before the last update_surfaces() call (which is where binding between strips and routes occurs) ; add support for Mackie Control touch on/off messages 2014-02-19 13:22:52 -05:00
79b7fb82f3 try to get export/visibility and build conditionals right for surfaces/, once more 2014-01-25 13:57:28 -05:00
065e1e6334 alter surfaces build wscript to use "children" idea (like top level wscript)
Still not clear why this file requires the global keyword to make children global, but the toplevel wscript does not.
2014-01-23 13:39:43 -05:00
d16edb530e fix up obj.defines for generic MIDI wscript 2014-01-23 13:38:45 -05:00
9d01082243 mackie code does not use poll(2) and so does not need poll.h 2014-01-23 13:38:23 -05:00
8eed05be54 use correct export/visibility macros 2014-01-23 13:37:28 -05:00
37b1f5017e merge with master 2014-01-14 21:13:21 -05:00
35c170937d NOOP, semantic update, don't pannable's panner for direct access. 2014-01-15 02:51:53 +01:00
5062a00c7d move -fvisibility=hidden to the top of the source tree, and remove its internal use; use libtimecode as a shared lib again 2014-01-12 15:40:47 -05:00
3020b224fa Merge windows+cc branch into cairocanvas branch. Not finished, need to now merge windows branch to get changes from there 2014-01-10 16:07:57 -05:00
897fbdc652 Small patch to see if Ben's build problem gets fixed 2014-01-05 15:08:38 +00:00
b0e4f81eb3 merge exportvis branch into cairocanvas, to reduce the number of "floating" branches.
Still need to add API export/visibility macros for the canvas library.
2013-12-27 14:29:06 -05:00
84f55440a3 fix redrawing of canvas with an optimized build
Best guess right now is that optimization does something bad when ceil() is called twice on a very large dbl-precision number,
which results in a zero (empty) redraw area. Without the removal of the redundant ceil & floor functions, no expose events
would be delivered to the canvas in an optimized build during drags (and maybe more).
2013-12-23 15:35:49 -05:00
2065a2a2ac fix up OSC support to conform to new CP API and pay attention to feedback setting, even though feedback does nothing right now 2013-12-21 15:31:28 -05:00
e9c47051f7 conform to new CP API 2013-12-21 15:31:28 -05:00
91e2b5f88a conform to new CP API 2013-12-21 15:31:28 -05:00
362769e967 new CP API and fix several egregious bugs with port handling when switching devices, setting state etc. 2013-12-21 15:31:28 -05:00
644ead06b4 remove debug output 2013-12-21 15:31:28 -05:00
5ebc8de6cc conform to new CP API design 2013-12-21 15:31:28 -05:00
ea5fde0787 conform to new CP API design 2013-12-21 15:31:28 -05:00
b0a10da783 clean up aspects of ControlProtocol API 2013-12-21 15:31:28 -05:00
8a005319b8 clean up aspects of ControlProtocol API 2013-12-21 15:31:28 -05:00
f6c9fa4d89 fix a crash caused by not checking if MackieControlProtocol::_surfaces_state exists
I forgot to add this check when i changed the member variable to a pointer.
2013-12-14 11:10:54 -05:00
afabc09fbf change Generic MIDI control so that it handles a SendFeedback request synchronously within a process callback 2013-12-13 16:56:34 -05:00
85cd647226 Mackie Control support now saves & restores port connections for devices not using ipMIDI (not required for ipMIDI anyway) 2013-12-13 16:04:34 -05:00
a17bafa964 remove some unused code from mackie support 2013-12-13 16:04:34 -05:00
3a885d6177 Only use __declspec(dllimport/dllexport) for MSVC compiler
Use the gcc visibility attributes when building with the MinGW compiler(gcc).
GCC also supports the __declspec syntax but it will not compile at the moment
until the issues(which may not even be exactly the same issues as with MSVC)
are resolved.
2013-12-05 21:11:18 +10:00
f85c67501c reverse the visibility.h files assumptions that we don't build shared libs by default
This avoids having to define define LIBFOO_DLL=1 all over the place. If we ever go with static libs we will
need to define LIBFOO_STATIC=1 but hopefully in some central location like the top level wscript.

Oh, and I also dropped support for gcc older than version 4.x because ardour will already not build
on such an old version.
2013-10-18 11:50:44 -04:00
683496c501 use libltc and libtimecode as static libs, and upgrade to waf 1.7
This is slightly awkward. It is important that we only link once to the static lib. Doing this at executable link time did not
work, possibly because waf insisted on putting the two static libraries at the front of the link list. So instead libardour
is now the point where linkage to these libraries occurs (and nowhere else). This should never be changed unless the change
just moves the linkage point to another location.

Also fix a bug with the libardour version tha was picked up by waf 1.7
2013-10-18 11:11:59 -04:00
b855e5f322 Merge remote-tracking branch 'remotes/origin/exportvis' into windows+cc
Conflicts (hopefully resolved):
	gtk2_ardour/wscript
	libs/ardour/ardour/audioregion.h
	libs/ardour/ardour/debug.h
	libs/ardour/ardour/directory_names.h
	libs/ardour/ardour/filesystem_paths.h
	libs/ardour/ardour/session_event.h
	libs/gtkmm2ext/gtkmm2ext/utils.h
	libs/panners/1in2out/wscript
	libs/panners/2in2out/wscript
	libs/panners/vbap/wscript
	libs/pbd/pbd/debug.h
	libs/pbd/pbd/file_utils.h
	libs/pbd/pbd/pathexpand.h
	libs/pbd/pbd/ringbuffer.h
	libs/pbd/pbd/ringbufferNPT.h
	libs/pbd/pbd/search_path.h
	libs/pbd/pbd/stacktrace.h
	libs/pbd/pbd/uuid.h
	libs/pbd/pbd/uuid_boost.h
	libs/surfaces/control_protocol/control_protocol/basic_ui.h
	libs/surfaces/control_protocol/control_protocol/control_protocol.h
2013-10-18 10:03:22 +01:00
5b2a5d77b8 add -fvisibility=hidden to libardour_cp (control protocol) 2013-10-17 15:09:28 -04:00
61c1956ef9 add -fvisibility=hidden to evoral, and make things work 2013-10-17 15:02:20 -04:00
2fab8182cc add -fvisibility=hidden to libgtkmm2ext, and make things work 2013-10-17 14:36:41 -04:00
98c93ee53e tweak up DLL=1 defs for control surfaces 2013-10-17 13:30:18 -04:00
5896d773e4 add export control to control protocol library 2013-10-17 13:15:24 -04:00
e5888d3983 merge with master and fix 2 conflicts 2013-10-16 22:06:56 -04:00
75b933eadb Merge remote-tracking branch 'remotes/origin/master' into windows+cc 2013-10-16 15:55:59 +01:00
58e8f43052 reduce default height of mackie control GUI, as per #5713 2013-10-15 13:28:01 -04:00
97c68cc2b1 Merge branch 'windows' into windows+cc
Conflicts (hopefully resolved):
	libs/pbd/stacktrace.cc
2013-10-15 17:38:08 +01:00
69a8fc43e2 Merge branch 'master' into windows 2013-10-15 11:17:12 -04:00