13
0
Commit Graph

395 Commits

Author SHA1 Message Date
23c0452e05 Add test_search_path to find test files in MidnamTest 2014-12-03 17:31:04 +07:00
0b48eb68f8 Remove bogus test and noisy output. 2014-11-30 23:56:19 -05:00
c927eeb9ee ensure that Ardour recognizes its own MMC device ID as "all-call" when set to 0x7f (127) 2014-11-26 18:22:22 +02:00
c1cfa12d6e Wrap MusicalTime in a class.
This lets us get a more explicit handle on time conversions, and is the main
step towards using actual beat:tick time and getting away from floating point
precision problems.
2014-11-22 04:05:42 -05:00
6b3a8915f3 add abort() to non-reached code
This cleans up a lot of false-positives in static analysis
and also helps compilers to optimize code paths in general.
(tagging the fatal stingstream operator as ‘noreturn’ is
far less trivial)
2014-11-14 11:30:08 +01: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
e32a8e8260 require a timestamp on MIDI::MachineControl::send() 2014-10-22 17:07:11 -04:00
a361781e08 plug a major mem hog.
(default empty session is now ~140MB RSS, was 280MB)
libXML memory was only free() at exit
2014-09-09 23:53:27 +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
928881b24a Update vcproj files for changed LILV config define. 2014-07-15 15:50:12 -04:00
fe9f2b15b1 Support midnam files with a channel (not patch) NoteNameList. 2014-07-15 15:18:18 -04:00
8d0cba3384 Use PBD::find_files_matching_pattern instead of other variations 2014-06-25 12:40:10 -04:00
438179d278 wrap MIDI timecode at 24h 2014-06-10 04:22:34 +02:00
c0376fe7b3 really fix sending MIDI timecode. 2014-06-10 04:12:08 +02:00
7df663acf2 fix crash when trying to send MMC of timecode > 255 hours 2014-06-10 03:18:05 +02:00
58522e5b5e fix for storing 14 bit MIDI controller values 2014-04-30 10:10:06 -04: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
2cf411e4be merge (squash) with scenechange topic branch to provide MIDI-driven scene change markers 2014-04-28 19:58:24 -04:00
0802cbf30c remove inclusion of jack.h so that we can build on a platform without JACK 2014-04-10 08:52:21 -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
e6c3cece64 remove recently added conflation of mingw64 and msvc with respect to symbol export 2014-03-02 14:59:08 -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
50edf9b626 correct delete/free mess 2014-02-12 15:14:40 -05: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
59631acc5f fix merge with master 2014-01-11 15:19:18 -05:00
72d8ca89e2 Support midnam controller value labels. 2014-01-10 20:51:54 -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
e7c4774728 Merge branch 'master' into cairocanvas 2014-01-02 09:16:28 -05:00
e281f5653c fix assert for non-existing MIDI patch-names
typename boost::detail::sp_member_access<T>::type boost::shared_ptr<T>::operator->() const [with T = MIDI::Name::ChannelNameSet; typename boost::detail::sp_member_access<T>::type = MIDI::Name::ChannelNameSet*]: Assertion `px != 0' failed.
2013-12-30 16:24:27 +01: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
8648a8a13b fix up wscript/build issues in exportvis after merge with master 2013-12-03 11:51:25 -05:00
4d0caa6ddd add yet more missing parts of previous commit re: libmidi++ and JACK (files not saved in emacs, sigh) 2013-11-27 14:08:22 -05:00
4a71e6f28f add missing parts of previous commit re: libmidi++ and JACK (files not saved in emacs, sigh) 2013-11-27 13:53:58 -05:00
ac4d691fe9 remove unintended linkage between libmidipp and jack 2013-11-27 12:44:23 -05:00
b97ab7d7bc Statically link libtimecode into libmidi++ instead of libardour
This is necessary to get the libmidi++ test to work as libmidi++ has
unresolved symbols in libtimecode. This was not a problem when libtimecode
was statically linked into libardour if the executable depended on both
libtimecode and libardour as the symbols would get resolved.

This is not true for the midi++ test case as it doesn't depend on libardour

Also as libmidi++ only references symbols from one object file in the
libtimecode static archive only that object file gets included/exported
from libmidi++.

This is fixed by adding a dummy reference to a symbol in the other object
file in the libtimecode static archive.
2013-10-20 09:27:35 +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
300536e5cd add -fvisibility=hidden to libmidi++ and make things work 2013-10-17 15:07:18 -04:00
61c1956ef9 add -fvisibility=hidden to evoral, and make things work 2013-10-17 15:02:20 -04:00
f3d2ca0d9a get everything compiling with libardour built using -fvisibility=hidden 2013-10-17 12:41:28 -04:00
15471ca7dd add export control to libgtkmm2ext 2013-10-17 11:26:01 -04:00
94ef2692b8 add export control to libevoral 2013-10-17 10:52:02 -04:00
9b7c33096a export-ify libmidipp 2013-10-17 10:27:04 -04:00
a7f156e005 new file for libmidi++ export control 2013-10-17 09:56:43 -04:00
bb826f4bee incomplete merge of master into windows (requires upcoming changes to master to be complete) 2013-09-12 11:28:50 -04:00
a5a75d5e0d fixes to get MTC (and probably MIDI clock) slaving working again
incoming MIDI data has to be parsed EVERY process cycle, not just when Slave::speed_and_position() is called.
The private MIDI::Parser owned by the MTC and MClck slaves was irrelevant, since the port has its own.
See comments in midi_port.h on the strangled inheritance heirarchy.
2013-08-13 12:53:28 -04:00
a5a3f713d5 assorted extra debug output for MTC 2013-08-12 05:40:11 -04:00
1ab61b8564 major redesign of MIDI port heirarchy and management (part 2) 2013-08-07 22:22:11 -04:00
83a0c30c24 major redesign of MIDI port heirarchy and management
basic, very flaky functionality is back. program unstable at present
2013-08-07 22:21:36 -04:00
682ebad62b full compilation and linking (coding not finished, will not run) 2013-08-01 14:43:12 -04:00
e5ab8c1c9e 'libs/midi++2' - Platform specific includes 2013-07-25 07:45:24 +01:00
eb2c419620 'libs/midi++2' - Compiler specific changes 2013-07-25 07:30:30 +01:00
369c0e4a66 'libs/midi++2' - Modify to be buildable with MSVC 2013-07-25 07:19:51 +01:00
9ac6bb9bef part-way through getting the audioengine changes to compile 2013-07-24 19:29:45 -04:00
eddcc868ba Disable non-realtime midi ports in windows build - THIS NEEDS FIXING 2013-07-13 08:26:54 -04:00
8d1f88f87b Include unistd.h for usleep on MinGW 2013-07-11 13:01:16 -04:00
ab8918fa73 Changes to get IPMIDIPort to compile(but not functional) on MinGW 2013-07-11 13:00:42 -04:00
8a9cdd04c5 Include pthread.h as it isn't included via jack headers on windows 2013-07-11 12:58:44 -04:00
2048f766e9 Use pthread_equal in libmidi++ for portability 2013-07-11 11:51:59 -04:00
16ce39c230 initial, prototype modifications to permit compilation of local libraries as static libs. required a "fix" to libs/pbd/debug.cc to even get the program up and running, and still does not work due to issues with boost::shared_ptr::enable_shared_from_this. controlled by configure-time --internal-{static,shared}-libs, set to shared by default (as has been the case for years) 2013-03-20 17:18:55 -04:00
b0fa3896f5 remove cruft (old cvsignore files) 2013-03-17 23:08:27 +01:00
6375b5d278 Default to "7bit" controller type if missing, as per DTD.
git-svn-id: svn://localhost/ardour2/branches/3.0@14012 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-27 17:15:46 +00:00
fa8d0268eb Fix compilation with --test.
Make midnam test suite pass again.

The Ardour test suite does not pass.  I commented out old crossfade stuff, but
I am not familiar enough with the parts that fail to fix it.  It might be a
good idea for someone to look into this.  Ideally we'd have the test integrated
into everyone's workflow, but they add quite a few files to compile...


git-svn-id: svn://localhost/ardour2/branches/3.0@13931 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-20 18:23:42 +00:00
4e6d0c9e61 Show matching controller name in automation lane header.
Completely eliminate static MIDI controller name code.
Reduce dependency on midnam_patch.h (which would have saved me several hours if I did it earlier).
Store controller name numbers as an integer.
Keep controller names in a map keyed by int instead of a list for fast lookup.
More cleanup of MIDI::Name code.


git-svn-id: svn://localhost/ardour2/branches/3.0@13927 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-20 08:56:00 +00:00
64f1a8e893 Error checking string to int conversion from midnam files.
Use const references where appropriate.
Fix incorrect use of (either confusingly named or often abused) Patch tag Number attribute.

git-svn-id: svn://localhost/ardour2/branches/3.0@13923 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-20 07:33:27 +00:00
586484abf0 Support loading MIDI note names in NoteGroup tags as well.
git-svn-id: svn://localhost/ardour2/branches/3.0@13919 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-20 04:27:12 +00:00
f7ada4b323 Add General MIDI drum note names and patch names.
Support loading note names per ChannelNameSet (like GM) in addition to per Patch (like DM5).


git-svn-id: svn://localhost/ardour2/branches/3.0@13913 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-20 02:41:27 +00:00
4a47edeaf0 Fix MIDI note number off by one error.
Bloody one-based indices...


git-svn-id: svn://localhost/ardour2/branches/3.0@13911 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-20 01:12:12 +00:00
230c4e080e Fix midnam warning messages.
git-svn-id: svn://localhost/ardour2/branches/3.0@13910 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-20 00:58:19 +00:00
88de45b7cc Support note names from midnam files (tested with the DM5).
Do this via a simple MasterDeviceNames::note_name() function.  The same really
needs to be done for program names, this stuff is absolutely brutal to use.

Store note names in a vector indexed by number instead of a list with string
"numbers" for reasonable lookup time.

Make some references const that should be.


git-svn-id: svn://localhost/ardour2/branches/3.0@13908 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-20 00:46:55 +00:00
444d89b669 Set MIDI device mode to the first by default if unset.
Give up trying to hide mode selector when it's useless.
Fix display of program names for default mode.
Abstract out (non-crashy) MidiTimeAxisView::get_device_names().


git-svn-id: svn://localhost/ardour2/branches/3.0@13903 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-19 20:15:15 +00:00
2d9a15087b Use a std::set for MIDI device models so the combo is sorted and the user can find things.
git-svn-id: svn://localhost/ardour2/branches/3.0@13902 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-19 19:25:06 +00:00
b1bc353f0d Add standard MIDI midnam file and remove hard coded equivalent.
Accordingly, make "generic" MIDI truly generic, just numbered controllers.
Break up MIDI name UI stuff into manageable functions of reasonable size.
Add convenient method to MIDINameDocument for getting the names for a device.
Tolerate comments in MIDINameDocument ControlNameList.

Can't remove the MIDI name code just yet, since it's still erroneously used by
Automatable::describe_parameter().  This is the cause of a bug where the name
on the automation lane does not match that in the menu.

The plan is to make a very simple pure abstract interface for getting MIDI
names, and make it possible to set one for Automatable (or perhaps pass it to
describe_parameter()).  Thus we'll be on the way to supporting names from
sources other than midnam files, namely plugins.


git-svn-id: svn://localhost/ardour2/branches/3.0@13895 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-19 10:02:00 +00:00
94c7798712 Hide MIDI device mode selector unless there is actually more than one mode.
Since this is usually not the case, showing this all the time as before was so
confusing everyone thought it was broken (myself included).

Changing that show_all() to a show() might have consequences, but it seems to
work fine and we really shouldn't be using show_all() anyway.


git-svn-id: svn://localhost/ardour2/branches/3.0@13889 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-19 05:36:43 +00:00
3279ad9a64 add copyright comments
git-svn-id: svn://localhost/ardour2/branches/3.0@13858 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-16 18:16:21 +00:00
e092fe33af Preliminary support for named MIDI controllers via midname files.
Add midnam file for Moog Minitaur controller names.


git-svn-id: svn://localhost/ardour2/branches/3.0@13852 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-16 08:24:31 +00:00
bb3690db58 merge Marcel Bonnet's patches for Free-BSD
(may need further cleanup:
 compare with timbyr's windows patch,
 verify fst/vsti + ALSA)

git-svn-id: svn://localhost/ardour2/branches/3.0@13774 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-04 17:36:52 +00:00
0c7bd6e333 fix uninitialized variable causing error delivering various MIDI messages at frame zero
git-svn-id: svn://localhost/ardour2/branches/3.0@13640 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-12-11 15:54:41 +00:00
1feaa65d16 do not try to write from JackMIDIPort::write() if we are disconnected from JACK. should fix erroneous behaviour when MMC tries to send stop messages after JACK disconnects
git-svn-id: svn://localhost/ardour2/branches/3.0@13594 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-12-03 21:39:59 +00:00
1a096d5472 yet another fix for complaints from OS X gcc about constness
git-svn-id: svn://localhost/ardour2/branches/3.0@13361 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-29 16:16:07 +00:00
Hans Baier
5c2d7d3644 add missing unit test runner shell script for midi++
git-svn-id: svn://localhost/ardour2/branches/3.0@13220 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-09 03:17:55 +00:00
Hans Baier
9a19da77e3 fix insidious bugs in midnam_patch.cc which account for garbled data
git-svn-id: svn://localhost/ardour2/branches/3.0@13219 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-09 03:17:15 +00:00
Hans Baier
dec0e3d6da Add patchfile for Yamaha PSR-S900, add unit test for it, remove camel case from test method names
git-svn-id: svn://localhost/ardour2/branches/3.0@13218 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-09 03:13:38 +00:00
Hans Baier
ad8c184218 fix whitespace in libs/midi++2/midi++/midnam_patch.h
git-svn-id: svn://localhost/ardour2/branches/3.0@13216 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-09 03:09:54 +00:00
Hans Baier
0bb2227eb8 add unit tests to midi++ and assorted bugfixes for midnam_patch.cc
git-svn-id: svn://localhost/ardour2/branches/3.0@13213 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-08 04:32:12 +00:00
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
d1d08e3910 fix complete screw up in connecting MIDNAM PatchNameList with ChannelNameSets; more tweaks and twirls for patch/program change mgmt
git-svn-id: svn://localhost/ardour2/branches/3.0@12673 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-12 16:32:06 +00:00
557f56a7f2 more changes to patch change/plugin preset support - replace regexp replacement with boost::replace_all(), actually find programs/patches in the data we have, and more. notable changes to constructors and structure of various MIDI::Name objects
git-svn-id: svn://localhost/ardour2/branches/3.0@12667 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-12 04:05:10 +00:00
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
23350c195d remove craziness of propagating MIDI 7 bit limits into MIDNAM handling by replacing bank_msb/lsb with "bank" ; move responsibility for discovering patch names into MIDI trackview (soon to move again)
git-svn-id: svn://localhost/ardour2/branches/3.0@12647 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-10 16:42:17 +00:00
Carl Hetherington
d2f61e0f4c Look in the UsesPatchNameList for the name rather than
its parent.


git-svn-id: svn://localhost/ardour2/branches/3.0@12551 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-03 15:47:23 +00:00
Carl Hetherington
fd89d52af5 Fix operator< so that strict weak ordering is
maintained, so that key lookups work.


git-svn-id: svn://localhost/ardour2/branches/3.0@12542 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-02 14:53:26 +00:00
1cb5aed0ce couple of fixes to enable building, and building with gtkmm 2.2(<4)
git-svn-id: svn://localhost/ardour2/branches/3.0@12540 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-02 14:50:09 +00:00
341d033b2c MIDI::Port::(get|set)_state() should be virtual, so that derived classes get their chance in the sun. Fixes #4887
git-svn-id: svn://localhost/ardour2/branches/3.0@12455 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-27 16:49:51 +00:00
6fa6514cfd Remove over 500 unnecessary includes (including 54 of session.h).
It's slightly possible that this causes trivial build failures on different
configurations, but otherwise shouldn't cause any problems (i.e. no actual
changes other than include/naming/namespace stuff).  I deliberately avoided
removing libardour-config.h since this can mysteriously break things, though a
few of those do seem to be unnecessary.

This commit only targets includes of ardour/*.h.  There is also a very large
number of unnecessary includes of stuff in gtk2_ardour; tackling that should
also give a big improvement in build time when things are modified.


git-svn-id: svn://localhost/ardour2/branches/3.0@12420 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-24 06:09:29 +00:00
27a1cf2cf7 Compile cleanly with clang.
To compile Ardour with LLVM/clang, do the usual thing but set the CXX and CC
environment variables, e.g.:

CC=/usr/bin/clang CXX=/usr/bin/clang++ ./waf configure build


git-svn-id: svn://localhost/ardour2/branches/3.0@12418 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-24 02:54:10 +00:00
7a76168b66 more fixes/tweaks from the land of the lion
git-svn-id: svn://localhost/ardour2/branches/3.0@12150 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-02 20:45:17 +00:00
eaa7cc5a73 fix up some const-ness issues starting from Evoral::Event::set(), and intersect with removing Mackie..MidiByteArray::bytes() method which made a copy of the data every time we wrote it
git-svn-id: svn://localhost/ardour2/branches/3.0@12124 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-30 15:54:13 +00:00
ec1ef5d6b5 remove the apparently unnecessary "ui_bind()" macro from entire source base
git-svn-id: svn://localhost/ardour2/branches/3.0@12088 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-25 12:58:19 +00:00
d5e14b3d91 eventloop and abstractui debugging, lots more commenting on abstractui/eventloop implementation; minor tweaks elsewhere
git-svn-id: svn://localhost/ardour2/branches/3.0@12076 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-24 16:45:38 +00:00
9b8fe0b09f ipMIDI: typo
git-svn-id: svn://localhost/ardour2/branches/3.0@12075 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-24 03:26:25 +00:00
50f179b33e ipMIDI: credit where credit is due
git-svn-id: svn://localhost/ardour2/branches/3.0@12074 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-24 03:19:10 +00:00
33140f3267 add support for IP MIDI (multicast MIDI over IP UDP sockets) to ardour and use it if requested inside MCP code. required renaming the pre-existing MIDI::Port as MIDI:JackMIDIPort - MIDI::Port becomes the base type for both JackMIDIPort and IPMIDIPort
git-svn-id: svn://localhost/ardour2/branches/3.0@12069 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-24 02:28:51 +00:00
6ca4b88d5a libmidi++: fix a bunch of issues with previous commit
git-svn-id: svn://localhost/ardour2/branches/3.0@12065 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-23 16:23:48 +00:00
1660f00ff3 libmidi++: split apart "base-y" aspects of MIDI::Port into MIDI::PortBase and make MIDI::Port derive from it. This actually makes MIDI::Port effectively into MIDI::JackPort, but i'm not interested in the name changing at that level at this moment in time
git-svn-id: svn://localhost/ardour2/branches/3.0@12064 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-23 15:29:45 +00:00
Carl Hetherington
4b63b88e35 Remove some unused parameters.
git-svn-id: svn://localhost/ardour2/branches/3.0@11917 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-11 20:21:00 +00:00
893b468858 add "centrally-parsed" property to MIDI::Port so that we can avoid the MidiUI loop from handling input for *all* MIDI ports created
git-svn-id: svn://localhost/ardour2/branches/3.0@11871 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-10 16:27:01 +00:00
8f4e126c72 a lot of tweaking and fixing for the MIDNAM parsing code so that it correctly handles all 44 sample files from digicake.com/midnams.
git-svn-id: svn://localhost/ardour2/branches/3.0@11734 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-20 18:01:59 +00:00
009c7a9e44 attempt to stop sending MMC/MTC while exporting or freewheeling for any reason
git-svn-id: svn://localhost/ardour2/branches/3.0@11457 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-02-06 17:09:53 +00:00
f4f2a9a111 fix bug in MidiClock that sent MIDI Clock messages with negative offsets after a loop point
git-svn-id: svn://localhost/ardour2/branches/3.0@11456 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-02-06 15:05:18 +00:00
Carl Hetherington
084cd5ffda Add basic test of playlist layering.
git-svn-id: svn://localhost/ardour2/branches/3.0@11011 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-15 14:33:20 +00:00
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
c1ef7b14a3 Remove use of waf compat15 tool.
Always load waf tools first (prevent smashing of --debug, DATADIR, etc).


git-svn-id: svn://localhost/ardour2/branches/3.0@10163 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-09-29 19:58:05 +00:00
723ab60b39 Upgrade to waf 1.6.7 and autowaf r52.
git-svn-id: svn://localhost/ardour2/branches/3.0@10162 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-09-29 19:17:54 +00:00
Carl Hetherington
1f1abd0646 Correct signal handling for previous commit.
git-svn-id: svn://localhost/ardour2/branches/3.0@10130 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-09-26 21:03:11 +00:00
Carl Hetherington
a7dc433498 Delete MIDI port objects when the MackieControlProtocol is torn down, so that it can be recreated without attempting to create duplicate JACK port names. Should fix #3886.
git-svn-id: svn://localhost/ardour2/branches/3.0@10129 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-09-26 20:35:16 +00:00
Carl Hetherington
d6112f1213 Use RCU for MIDI Manager's port list.
git-svn-id: svn://localhost/ardour2/branches/3.0@10128 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-09-26 20:35:09 +00:00
4769db412d Fix Python whitespace (follow PEP8 guidelines, reformatted by Python Reindent)
git-svn-id: svn://localhost/ardour2/branches/3.0@9409 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-04-22 22:15:21 +00:00
0906b39918 Fix my name :)
git-svn-id: svn://localhost/ardour2/branches/3.0@9302 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-04-06 15:00:16 +00:00
Carl Hetherington
02cfe41bff Update region peak amplitude when the region is trimmed (#3931).
git-svn-id: svn://localhost/ardour2/branches/3.0@9276 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-04-04 12:21:26 +00:00
9850407bd9 Indent python files with spaces as per style guide.
git-svn-id: svn://localhost/ardour2/branches/3.0@9158 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-03-16 16:32:56 +00:00
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
f6055f2c6f Eliminate circular dependency kludge for control_protocol/smpte.o.
git-svn-id: svn://localhost/ardour2/branches/3.0@8262 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-12-13 20:46:07 +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
Carl Hetherington
ba6d6895f7 assert() which catches one source of crashes on startup when Ardour starts JACK.
git-svn-id: svn://localhost/ardour2/branches/3.0@7926 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-10-27 21:18:32 +00:00
aef355525f delete, not comment, for the last commit
git-svn-id: svn://localhost/ardour2/branches/3.0@7897 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-10-14 13:11:13 +00:00
58416460ad do not attempt to clear a (JACK) MIDI port buffer after registering the port, this is not a legal access to a JACK port buffer
git-svn-id: svn://localhost/ardour2/branches/3.0@7896 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-10-14 13:10:42 +00:00
Carl Hetherington
5d8933893c Put MIDI sync ports in the Ardour tab of the port matrix.
git-svn-id: svn://localhost/ardour2/branches/3.0@7527 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-08-01 10:26:19 +00:00
Carl Hetherington
21fd76ef9a Fix startup of the mackie surface code.
git-svn-id: svn://localhost/ardour2/branches/3.0@7520 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-07-29 19:24:25 +00:00
f2df65db6a part two of: don't crash during startup with no config files when trying to use a non-existent MIDI Manager object
git-svn-id: svn://localhost/ardour2/branches/3.0@7501 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-07-26 15:28:59 +00:00
Carl Hetherington
0fb9c79d8d Patch from petem to initialise inbound MMC device ID to 0x7f. Fixes #2853.
git-svn-id: svn://localhost/ardour2/branches/3.0@7496 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-07-25 23:55:45 +00:00
Carl Hetherington
648a169d8f Move MIDI control port ownership into the MIDI Manager, since control port state should be Ardour-wide, not per-session. Fix up port connection state management.
git-svn-id: svn://localhost/ardour2/branches/3.0@7394 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-07-08 22:55:20 +00:00
Carl Hetherington
4885f29be1 Trim midi++ port code to either do in or out, but not both in the same object.
git-svn-id: svn://localhost/ardour2/branches/3.0@7391 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-07-08 01:00:46 +00:00
Carl Hetherington
ea23298f10 Setup fixed ports for MIDI control data; hence remove configuration of those ports. Move MIDI tracer to the Windows menu. Trim some unused code from the midi++ Manager.
git-svn-id: svn://localhost/ardour2/branches/3.0@7384 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-07-07 00:40:58 +00:00
Carl Hetherington
d3b422d064 Remove file that should have gone earlier.
git-svn-id: svn://localhost/ardour2/branches/3.0@7379 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-07-06 01:18:14 +00:00
Carl Hetherington
ff8ea4d2f2 Remove MMC thread protection which is pointless now that only JACK MIDI ports are used for output, which themselves can cope with multi-threaded access.
git-svn-id: svn://localhost/ardour2/branches/3.0@7378 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-07-06 00:27:03 +00:00
Carl Hetherington
91850f0eb4 Remove non-JACK midi++ ports.
git-svn-id: svn://localhost/ardour2/branches/3.0@7377 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-07-06 00:16:36 +00:00
dc1e5d09a2 require jack 0.118.2 for weakjack.h
git-svn-id: svn://localhost/ardour2/branches/3.0@7375 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-07-05 16:28:45 +00:00
Carl Hetherington
df2298c846 Reestablish libmidi++ JACK ports on jack reconnection, so that control MIDI can still be sent after a JACK disconnect/reconnect. Fixes remainder of #3301.
git-svn-id: svn://localhost/ardour2/branches/3.0@7373 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-07-05 15:41:05 +00:00
Carl Hetherington
839402778f Prevent assertion failure if _jack_output_port is 0, which can happen if JACK is disconnected. Improves #3301.
git-svn-id: svn://localhost/ardour2/branches/3.0@7371 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-07-05 01:13:52 +00:00
Carl Hetherington
bde4d3f341 Fix up my previous buggy MMC cleanup.
git-svn-id: svn://localhost/ardour2/branches/3.0@7363 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-07-03 00:11:33 +00:00
d4db53e554 fix gcc4.4 compile warnings
git-svn-id: svn://localhost/ardour2/branches/3.0@7348 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-07-01 15:02:54 +00:00
Carl Hetherington
bebeb5abec Fix comment
git-svn-id: svn://localhost/ardour2/branches/3.0@7326 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-06-29 19:07:22 +00:00
Carl Hetherington
ce8d79d621 Restore MMC registers.
git-svn-id: svn://localhost/ardour2/branches/3.0@7325 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-06-29 14:04:19 +00:00
Carl Hetherington
9469d6b26a Clean up MMC transmission a bit, and make sure that it is all done from one thread.
git-svn-id: svn://localhost/ardour2/branches/3.0@7324 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-06-29 13:47:53 +00:00
1e728e728a basically, fix all kinds of odds and ends with MIDI playback, including missed notes and applying gain
git-svn-id: svn://localhost/ardour2/branches/3.0@7247 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-06-09 13:00:54 +00:00
b12f624890 modified version of a patch from robin gareus to avoid leaving pointers to data buffers owned by Session as the buffer for a JACK MIDI event. Robin - it would be good if you could test and confirm (email?) that my modified version also works
git-svn-id: svn://localhost/ardour2/branches/3.0@7218 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-06-03 12:37:32 +00:00