summaryrefslogtreecommitdiff
path: root/libs/midi++2
AgeCommit message (Collapse)Author
2013-03-20initial, prototype modifications to permit compilation of local libraries as ↵Paul Davis
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-17remove cruft (old cvsignore files)Robin Gareus
2013-01-27Default to "7bit" controller type if missing, as per DTD.David Robillard
git-svn-id: svn://localhost/ardour2/branches/3.0@14012 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-20Fix compilation with --test.David Robillard
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-20Show matching controller name in automation lane header.David Robillard
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-20Error checking string to int conversion from midnam files.David Robillard
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-20Support loading MIDI note names in NoteGroup tags as well.David Robillard
git-svn-id: svn://localhost/ardour2/branches/3.0@13919 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-20Add General MIDI drum note names and patch names.David Robillard
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-20Fix MIDI note number off by one error.David Robillard
Bloody one-based indices... git-svn-id: svn://localhost/ardour2/branches/3.0@13911 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-20Fix midnam warning messages.David Robillard
git-svn-id: svn://localhost/ardour2/branches/3.0@13910 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-20Support note names from midnam files (tested with the DM5).David Robillard
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-19Set MIDI device mode to the first by default if unset.David Robillard
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-19Use a std::set for MIDI device models so the combo is sorted and the user ↵David Robillard
can find things. git-svn-id: svn://localhost/ardour2/branches/3.0@13902 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-19Add standard MIDI midnam file and remove hard coded equivalent.David Robillard
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-19Hide MIDI device mode selector unless there is actually more than one mode.David Robillard
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-16add copyright commentsPaul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@13858 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-16Preliminary support for named MIDI controllers via midname files.David Robillard
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-04merge Marcel Bonnet's patches for Free-BSDRobin Gareus
(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
2012-12-11fix uninitialized variable causing error delivering various MIDI messages at ↵Paul Davis
frame zero git-svn-id: svn://localhost/ardour2/branches/3.0@13640 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-12-03do not try to write from JackMIDIPort::write() if we are disconnected from ↵Paul Davis
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-10-29yet another fix for complaints from OS X gcc about constnessPaul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@13361 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-09add missing unit test runner shell script for midi++Hans Baier
git-svn-id: svn://localhost/ardour2/branches/3.0@13220 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-09fix insidious bugs in midnam_patch.cc which account for garbled dataHans Baier
git-svn-id: svn://localhost/ardour2/branches/3.0@13219 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-09Add patchfile for Yamaha PSR-S900, add unit test for it, remove camel case ↵Hans Baier
from test method names git-svn-id: svn://localhost/ardour2/branches/3.0@13218 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-09fix whitespace in libs/midi++2/midi++/midnam_patch.hHans Baier
git-svn-id: svn://localhost/ardour2/branches/3.0@13216 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-08add unit tests to midi++ and assorted bugfixes for midnam_patch.ccHans Baier
git-svn-id: svn://localhost/ardour2/branches/3.0@13213 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-07-25convert from Glib:: to Glib::Threads for all thread-related APIPaul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@13084 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-12fix complete screw up in connecting MIDNAM PatchNameList with ↵Paul Davis
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-12more changes to patch change/plugin preset support - replace regexp ↵Paul Davis
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-11lots more work trying to create a common structure for accessing plugin and ↵Paul Davis
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-10remove craziness of propagating MIDI 7 bit limits into MIDNAM handling by ↵Paul Davis
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-03Look in the UsesPatchNameList for the name rather thanCarl Hetherington
its parent. git-svn-id: svn://localhost/ardour2/branches/3.0@12551 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-02Fix operator< so that strict weak ordering isCarl Hetherington
maintained, so that key lookups work. git-svn-id: svn://localhost/ardour2/branches/3.0@12542 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-02couple of fixes to enable building, and building with gtkmm 2.2(<4)Paul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@12540 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-27MIDI::Port::(get|set)_state() should be virtual, so that derived classes get ↵Paul Davis
their chance in the sun. Fixes #4887 git-svn-id: svn://localhost/ardour2/branches/3.0@12455 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-24Remove over 500 unnecessary includes (including 54 of session.h).David Robillard
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-24Compile cleanly with clang.David Robillard
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-02more fixes/tweaks from the land of the lionPaul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@12150 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-30fix up some const-ness issues starting from Evoral::Event::set(), and ↵Paul Davis
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-25remove the apparently unnecessary "ui_bind()" macro from entire source basePaul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@12088 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-24eventloop and abstractui debugging, lots more commenting on ↵Paul Davis
abstractui/eventloop implementation; minor tweaks elsewhere git-svn-id: svn://localhost/ardour2/branches/3.0@12076 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-24ipMIDI: typoPaul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@12075 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-24ipMIDI: credit where credit is duePaul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@12074 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-24add support for IP MIDI (multicast MIDI over IP UDP sockets) to ardour and ↵Paul Davis
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-23libmidi++: fix a bunch of issues with previous commitPaul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@12065 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-23libmidi++: split apart "base-y" aspects of MIDI::Port into MIDI::PortBase ↵Paul Davis
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-11Remove some unused parameters.Carl Hetherington
git-svn-id: svn://localhost/ardour2/branches/3.0@11917 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-10add "centrally-parsed" property to MIDI::Port so that we can avoid the ↵Paul Davis
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-03-20a lot of tweaking and fixing for the MIDNAM parsing code so that it ↵Paul Davis
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-02-06attempt to stop sending MMC/MTC while exporting or freewheeling for any reasonPaul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@11457 d708f5d6-7413-0410-9779-e7cbd77b26cf